Derived type containing the initial parameters of each electron ensemble followed in a KORC simulation.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
type(PARTICLES), | public | :: | vars | An instance of the PARTICLES derived type. |
|||
logical, | public | :: | runaway | Flag to decide whether a given electron is a runaway (runaway=T) or not (runaway=F). |
|||
character(len=MAX_STRING_LENGTH), | public | :: | spatial_distribution | String describing the type of initial spatial distribution for each electron species. |
|||
character(len=MAX_STRING_LENGTH), | public | :: | energy_distribution | String describing the type of initial energy distribution for each electron species. |
|||
character(len=MAX_STRING_LENGTH), | public | :: | pitch_distribution | String describing the type of initial pitch-angle distribution for each electron species. |
|||
real(kind=rp), | public | :: | Eo | Initial energy of each electron species in case of using an initial mono-energetic distribution. |
|||
real(kind=rp), | public | :: | go | Corresponding relativisitc factor of each electron species in case of using an initial mono-energetic distribution. |
|||
real(kind=rp), | public | :: | etao | Initial pitch-angle of each electron species in case of using an initial mono-pitch-angle distribution. |
|||
real(kind=rp), | public, | DIMENSION(2) | :: | Eo_lims | Minimum and maximum energy limits of a given initial non-mono-energetic distribution. |
||
real(kind=rp), | public, | DIMENSION(2) | :: | etao_lims | Minimum and maximum pitch-angle limits of a given initial non-mono-pitch-angle distribution. |
||
real(kind=rp), | public | :: | wc | The mean electron cyclotron frequency of each electron species. |
|||
real(kind=rp), | public | :: | wc_r | The mean relativistic electron cyclotron frequency of each electron species. |
|||
real(kind=rp), | public | :: | q | Charge of each species. NoteThis was left explicit to allow KORC to follow electrons and ions in the future. |
|||
real(kind=rp), | public | :: | m | Mass of each species. NoteThis was left explicit to allow KORC to follow electrons and ions in the future. |
|||
integer, | public | :: | ppp | Number of computational particles used to simulate each electron species. |
|||
integer, | public | :: | pinit | Number of computational particles initialized for each electron species to give room for sources of additional electrons |
|||
integer, | public | :: | pRE | ||||
real(kind=rp), | public | :: | Ro | Radial position of the center of the electrons' initial spatial distribution. |
|||
real(kind=rp), | public | :: | PHIo | Azimuthal position of the electrons' initial spatial distribution, in case of using a disk at a certain poloidal section. |
|||
real(kind=rp), | public | :: | Zo | Height of the center of the electrons' initial spatial distribution. |
|||
real(kind=rp), | public | :: | r_inner | Minimum minor radius of the electrons' initial spatial distribution. |
|||
real(kind=rp), | public | :: | r_outter | Maximum minor radius of the electrons' initial spatial distribution. |
|||
real(kind=rp), | public | :: | falloff_rate | Exponential falloff or standard deviation of a non-uniform radial distribution of electrons. |
|||
real(kind=rp), | public | :: | shear_factor | Shear factor used to generate an initial spatial distribution with an elliptic poloidal cross section. NoteSee Carbajal and del-Castillo-Negrete, Nuclear Fusion, submitted (2018). |
|||
real(kind=rp), | public | :: | sigmaR | Variance of the first dimension of a 2D Gaussian, spatial distribution function |
|||
real(kind=rp), | public | :: | sigmaZ | Variance of the second dimension of a 2D Gaussian, spatial distribution function |
|||
real(kind=rp), | public | :: | theta_gauss | Angle of counter-clockwise rotation (in degrees) of 2D Gaussian distribution relative to R,Z |
|||
real(kind=rp), | public | :: | psi_max | Maximum value of the argument of the 2D gaussian exponential, used for an indicator function that limits the region of MH sampling |
|||
real(kind=rp), | public | :: | Spong_b | ||||
real(kind=rp), | public | :: | Spong_w | ||||
real(kind=rp), | public | :: | Spong_dlam | ||||
real(kind=rp), | public | :: | dth | ||||
real(kind=rp), | public | :: | dgam | ||||
real(kind=rp), | public | :: | dR | ||||
real(kind=rp), | public | :: | dZ | ||||
real(kind=rp), | public, | DIMENSION(3) | :: | Xtrace | Initial position in Cartesian coordinates for tracer particle |
TYPE, PUBLIC :: SPECIES
!! @note Derived type containing the initial parameters of each electron
!! ensemble followed in a KORC simulation. @endnote
TYPE(PARTICLES) :: vars
!! An instance of the PARTICLES derived type.
LOGICAL :: runaway
!! Flag to decide whether a given electron is a runaway (runaway=T)
!! or not (runaway=F).
CHARACTER(MAX_STRING_LENGTH) :: spatial_distribution
!! String describing the type of initial spatial distribution for
!! each electron species.
CHARACTER(MAX_STRING_LENGTH) :: energy_distribution
!! String describing the type of initial energy distribution for
!! each electron species.
CHARACTER(MAX_STRING_LENGTH) :: pitch_distribution
!! String describing the type of initial pitch-angle distribution for
!! each electron species.
REAL(rp) :: Eo
!! Initial energy of each electron species in case of using an initial
!! mono-energetic distribution.
REAL(rp) :: go
!! Corresponding relativisitc factor of each electron species in case
!! of using an initial mono-energetic distribution.
REAL(rp) :: etao
!! Initial pitch-angle of each electron species in case of using an
!! initial mono-pitch-angle distribution.
REAL(rp), DIMENSION(2) :: Eo_lims
!! Minimum and maximum energy limits of a given initial
!! non-mono-energetic distribution.
REAL(rp), DIMENSION(2) :: etao_lims
!! Minimum and maximum pitch-angle limits of a given initial
!! non-mono-pitch-angle distribution.
REAL(rp) :: wc
!! The mean electron cyclotron frequency of each electron species.
REAL(rp) :: wc_r
!! The mean relativistic electron cyclotron frequency of each electron
!! species.
REAL(rp) :: q
!! Charge of each species. @note This was left explicit to allow
!! KORC to follow electrons and ions in the future. @endnote
REAL(rp) :: m
!! Mass of each species. @note This was left explicit to allow KORC
!! to follow electrons and ions in the future. @endnote
INTEGER :: ppp
!! Number of computational particles used to simulate each electron
!! species.
INTEGER :: pinit
!! Number of computational particles initialized for each electron species
!! to give room for sources of additional electrons
INTEGER :: pRE
REAL(rp) :: Ro
!! Radial position of the center of the electrons' initial spatial
!! distribution.
REAL(rp) :: PHIo
!! Azimuthal position of the electrons' initial spatial
!! distribution, in case of using a disk at a certain poloidal section.
REAL(rp) :: Zo
!! Height of the center of the electrons' initial spatial distribution.
REAL(rp) :: r_inner
!! Minimum minor radius of the electrons' initial spatial distribution.
REAL(rp) :: r_outter
!! Maximum minor radius of the electrons' initial spatial distribution.
REAL(rp) :: falloff_rate
!! Exponential falloff or standard deviation of a non-uniform radial
!! distribution of electrons.
REAL(rp) :: shear_factor
!! Shear factor used to generate an initial spatial distribution with an
!! elliptic poloidal cross section.
!! @note See <em>Carbajal and del-Castillo-Negrete, Nuclear Fusion,
!! submitted (2018)</em>. @endnote
REAL(rp) :: sigmaR
!! Variance of the first dimension of a 2D Gaussian, spatial
!! distribution function
REAL(rp) :: sigmaZ
!! Variance of the second dimension of a 2D Gaussian, spatial
!! distribution function
REAL(rp) :: theta_gauss
!! Angle of counter-clockwise rotation (in degrees) of 2D Gaussian
!! distribution relative to R,Z
REAL(rp) :: psi_max
!! Maximum value of the argument of the 2D gaussian exponential, used
!! for an indicator function that limits the region of MH sampling
REAL(rp) :: Spong_b
REAL(rp) :: Spong_w
REAL(rp) :: Spong_dlam
REAL(rp) :: dth
REAL(rp) :: dgam
REAL(rp) :: dR
REAL(rp) :: dZ
REAL(rp),DIMENSION(3) :: Xtrace
!! Initial position in Cartesian coordinates for tracer particle
END TYPE SPECIES