connection_length Function

public function connection_length(equi, x, y, phi, dphi_max, maxstep)

It computes the connection length for the field line defined by x, y, phi (the distance from boundary to boundary). If (x, y, phi) is located inside the wall, the output is negative. If (x, y, phi) is located in the closed flux surface region, the output is the largest allowable number for PARALLAX precision. If the boundary is reached along the field line, but only in one direction, then the routine will return with the arclength to the found boundary point plus the arclength up to dphi_max in the other direction.

Arguments

Type IntentOptional Attributes Name
class(equilibrium_t), intent(inout), target :: equi

Equilibrium defining the field line

real(kind=FP), intent(in) :: x

Spatial coordinate x at which the field line is located

real(kind=FP), intent(in) :: y

Spatial coordinate y at which the field line is located

real(kind=FP), intent(in) :: phi

Spatial coordinate phi at which the field line is located

real(kind=FP), intent(in) :: dphi_max

Maximum toroidal angle to be traced

real(kind=FP), intent(in), optional :: maxstep

Maximum stepsize for the DOP853 integrator

Return Value real(kind=fp)


Calls

proc~~connection_length~~CallsGraph proc~connection_length connection_length proc~distance_to_boundary distance_to_boundary proc~connection_length->proc~distance_to_boundary in_vessel in_vessel proc~distance_to_boundary->in_vessel proc~handle_error handle_error proc~distance_to_boundary->proc~handle_error proc~trace trace proc~distance_to_boundary->proc~trace none~handle_error error_handler_t%handle_error proc~handle_error->none~handle_error proc~trace->proc~handle_error destroy destroy proc~trace->destroy initialize initialize proc~trace->initialize integrate integrate proc~trace->integrate proc~get_stderr get_stderr proc~trace->proc~get_stderr