FastIonDistribution Derived Type

type, public :: FastIonDistribution

Defines a Guiding Center Fast-ion Distribution Function: F(E,p,R,Z)


Contents

Source Code


Components

TypeVisibility AttributesNameInitial
integer(kind=Int32), public :: nenergy

Number of energies

integer(kind=Int32), public :: npitch

Number of pitches

integer(kind=Int32), public :: nr

Number of radii

integer(kind=Int32), public :: nz

Number of z values

real(kind=Float64), public :: dE

Energy spacing [keV]

real(kind=Float64), public :: dp

Pitch spacing

real(kind=Float64), public :: dr

Radial spacing [cm]

real(kind=Float64), public :: dz

Z spacing [cm]

real(kind=Float64), public :: emin

Minimum energy [keV]

real(kind=Float64), public :: emax

Maximum energy [keV]

real(kind=Float64), public :: e_range

Energy interval length [keV]

real(kind=Float64), public :: pmin

Minimum pitch

real(kind=Float64), public :: pmax

Maximum pitch

real(kind=Float64), public :: p_range

Pitch interval length

real(kind=Float64), public :: n_tot =0.d0

Total Number of fast-ions

real(kind=Float64), public, dimension(:), allocatable:: energy

Energy values [keV]

real(kind=Float64), public, dimension(:), allocatable:: pitch

Pitch w.r.t. the magnetic field

real(kind=Float64), public, dimension(:), allocatable:: r

Radius [cm]

real(kind=Float64), public, dimension(:), allocatable:: z

Z [cm]

real(kind=Float64), public, dimension(:,:), allocatable:: denf

Fast-ion density defined on the inter_grid: denf(R,Z)

real(kind=Float64), public, dimension(:,:,:,:), allocatable:: f

Fast-ion distribution function defined on the inter_grid: F(E,p,R,Z)


Source Code

type FastIonDistribution
    !+ Defines a Guiding Center Fast-ion Distribution Function: F(E,p,R,Z)
    integer(Int32) :: nenergy
        !+ Number of energies
    integer(Int32) :: npitch
        !+ Number of pitches
    integer(Int32) :: nr
        !+ Number of radii
    integer(Int32) :: nz
        !+ Number of z values
    real(Float64)  :: dE
        !+ Energy spacing [keV]
    real(Float64)  :: dp
        !+ Pitch spacing
    real(Float64)  :: dr
        !+ Radial spacing [cm]
    real(Float64)  :: dz
        !+ Z spacing [cm]
    real(Float64)  :: emin
        !+ Minimum energy [keV]
    real(Float64)  :: emax
        !+ Maximum energy [keV]
    real(Float64)  :: e_range
        !+ Energy interval length [keV]
    real(Float64)  :: pmin
        !+ Minimum pitch
    real(Float64)  :: pmax
        !+ Maximum pitch
    real(Float64)  :: p_range
        !+ Pitch interval length
    real(Float64)  :: n_tot = 0.d0
        !+ Total Number of fast-ions
    real(Float64), dimension(:), allocatable       :: energy
        !+ Energy values [keV]
    real(Float64), dimension(:), allocatable       :: pitch
        !+ Pitch w.r.t. the magnetic field
    real(Float64), dimension(:), allocatable       :: r
        !+ Radius [cm]
    real(Float64), dimension(:), allocatable       :: z
        !+ Z [cm]
    real(Float64), dimension(:,:), allocatable     :: denf
        !+ Fast-ion density defined on the [[libfida:inter_grid]]: denf(R,Z)
    real(Float64), dimension(:,:,:,:), allocatable :: f
        !+ Fast-ion distribution function defined on the [[libfida:inter_grid]]: F(E,p,R,Z)
end type FastIonDistribution