t_sfl_boozer Interface

public interface t_sfl_boozer

Calls

interface~~t_sfl_boozer~~CallsGraph interface~t_sfl_boozer t_sfl_boozer proc~sfl_boozer_new sfl_boozer_new interface~t_sfl_boozer->proc~sfl_boozer_new proc~hmap_new_auxvar hmap_new_auxvar proc~sfl_boozer_new->proc~hmap_new_auxvar

Module Procedures

private function sfl_boozer_new(mn_max, mn_nyq, nfp, sin_cos, hmap_in, nrho, rho_pos, iota, phiPrime, relambda_in) result(sf)

initialize sfl boozer class

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: mn_max(2)

maximum Fourier modes in theta and zeta

integer, intent(in) :: mn_nyq(2)

number of equidistant integration points (trapezoidal rule) in m and n

integer, intent(in) :: nfp

number of field periods

character(len=8) :: sin_cos

can be either only sine: " sin" only cosine: " cos" or full: "sin_cos"

class(c_hmap), intent(in), TARGET :: hmap_in
integer, intent(in) :: nrho

number of rho positions

real(kind=wp), intent(in) :: rho_pos(nrho)

rho positions, iota and phiPrime at these rho positions

real(kind=wp), intent(in) :: iota(nrho)

rho positions, iota and phiPrime at these rho positions

real(kind=wp), intent(in) :: phiPrime(nrho)

rho positions, iota and phiPrime at these rho positions

logical, intent(in), optional :: relambda_in

DEFAULT=TRUE: lambda is recomputed on the given fourier resolution, RECOMMENDED for exact integrability condition of boozer transform, but slower. FALSE: lambda from equilibrium solution is taken.

Return Value type(t_sfl_boozer)

self