extended_zgrid Module



Variables

Type Visibility Attributes Name Initial
integer, public :: nzed_segment

these arrays needed to keep track of connections between different 2pi segments

integer, public, dimension(:), allocatable :: neigen
integer, public, dimension(:), allocatable :: iz_low
integer, public, dimension(:), allocatable :: iz_mid
integer, public, dimension(:), allocatable :: iz_up
integer, public, dimension(:, :), allocatable :: nsegments
integer, public, dimension(:, :, :), allocatable :: ikxmod
integer, private, dimension(:), allocatable :: it_left

arrays indicate which flux tube index to connect to on the left and on the right as a function of current flux tube index pre-compute to avoid conditionals in loops

integer, public, dimension(:), allocatable :: it_right

arrays indicate which flux tube index to connect to on the left and on the right as a function of current flux tube index pre-compute to avoid conditionals in loops

complex, public, dimension(:), allocatable :: phase_shift
logical, public, dimension(:), allocatable :: periodic
logical, private :: extended_zgrid_initialized = .false.
integer, public :: neigen_max

Subroutines

public subroutine init_extended_zgrid()

phase shift due to the twist-and-shift boundary condition Usually set to zero for standard local simulation, but can have an effect for global simulations and simulations with low magnetic shear that use periodic boundary conditions everywhere

Read more…

Arguments

None

public subroutine fill_zed_ghost_zones(it, iseg, ie, iky, g, gleft, gright)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: it
integer, intent(in) :: iseg
integer, intent(in) :: ie
integer, intent(in) :: iky
complex, intent(in), dimension(:, :, -nzgrid:, :) :: g
complex, intent(out), dimension(:) :: gleft
complex, intent(out), dimension(:) :: gright

public subroutine fill_zext_ghost_zones(iky, pdf_ext, pdf_left, pdf_right)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: iky
complex, intent(in), dimension(:) :: pdf_ext
complex, intent(out) :: pdf_left
complex, intent(out) :: pdf_right

public subroutine map_to_extended_zgrid(it, ie, iky, g, gext, ulim)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: it
integer, intent(in) :: ie
integer, intent(in) :: iky
complex, intent(in), dimension(:, -nzgrid:, :) :: g
complex, intent(out), dimension(:) :: gext
integer, intent(out) :: ulim

public subroutine map_from_extended_zgrid(it, ie, iky, gext, g)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: it
integer, intent(in) :: ie
integer, intent(in) :: iky
complex, intent(in), dimension(:) :: gext
complex, intent(inout), dimension(:, -nzgrid:, :) :: g

public subroutine map_to_iz_ikx_from_izext(iky, ie, iz_from_izext, ikx_from_izext)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: iky
integer, intent(in) :: ie
integer, intent(out), dimension(:) :: iz_from_izext
integer, intent(out), dimension(:) :: ikx_from_izext

public subroutine finish_extended_zgrid()

Arguments

None