NeutralBeam Derived Type

type, public :: NeutralBeam

Defines a neutral beam with +x defined to be into the plasma


Contents

Source Code


Components

TypeVisibility AttributesNameInitial
character(len=25), public :: name =''

Beam name

integer, public :: shape

Beam source shape 1="rectangular", 2="circular"

real(kind=Float64), public :: widy

Half width of source in y direction

real(kind=Float64), public :: widz

Half height of source in z direction

real(kind=Float64), public :: focy

Focal length in y direction

real(kind=Float64), public :: focz

Focal length in z direction

real(kind=Float64), public :: einj

NBI voltage [kV]

real(kind=Float64), public :: pinj

NBI power [MW]

real(kind=Float64), public :: vinj

NBI velocity [cm/s]

real(kind=Float64), public :: alpha

Z rotation not same as beam_grid alpha

real(kind=Float64), public :: beta

Tilt rotation not same as beam_grid beta

real(kind=Float64), public, dimension(3):: divy

Energy dependent divergence in y direction

real(kind=Float64), public, dimension(3):: divz

Energy dependent divergence in z direction

real(kind=Float64), public, dimension(3):: current_fractions

Fractions of full, half, and third energy neutrals

real(kind=Float64), public, dimension(3):: src

Position of source in beam grid coordinates [cm]

real(kind=Float64), public, dimension(3):: axis

Beam centerline

integer, public :: naperture

Number of beam apertures

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

Aperture shape 1="rectangular", 2="circular"

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

Half width of the aperture(s) in y direction

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

Half height of the aperture(s) in z direction

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

Horizontal (y) offset of the aperture(s) relative to the beam centerline [cm]

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

Vertical (z) offset of the aperture(s) relative to the beam centerline [cm]

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

Distance from the center of the beam source grid to the aperture(s) plane [cm]

real(kind=Float64), public, dimension(3,3):: basis

Beam basis for converting from centerline coordinates to beam grid coordinates

real(kind=Float64), public, dimension(3,3):: inv_basis

Inverse basis for reverse transfomation


Source Code

type NeutralBeam
    !+ Defines a neutral beam with +x defined to be into the plasma
    character(25) :: name = ''
        !+ Beam name
    integer       :: shape
        !+ Beam source shape 1="rectangular", 2="circular"
    real(Float64) :: widy
        !+ Half width of source in y direction
    real(Float64) :: widz
        !+ Half height of source in z direction
    real(Float64) :: focy
        !+ Focal length in y direction
    real(Float64) :: focz
        !+ Focal length in z direction
    real(Float64) :: einj
        !+ NBI voltage  [kV]
    real(Float64) :: pinj
        !+ NBI power    [MW]
    real(Float64) :: vinj
        !+ NBI velocity [cm/s]
    real(Float64) :: alpha
        !+ Z rotation not same as [[libfida:beam_grid]] alpha
    real(Float64) :: beta
        !+ Tilt rotation not same as [[libfida:beam_grid]] beta
    real(Float64), dimension(3)   :: divy
        !+ Energy dependent divergence in y direction
    real(Float64), dimension(3)   :: divz
        !+ Energy dependent divergence in z direction
    real(Float64), dimension(3)   :: current_fractions
        !+ Fractions of full, half, and third energy neutrals
    real(Float64), dimension(3)   :: src
        !+ Position of source in beam grid coordinates [cm]
    real(Float64), dimension(3)   :: axis
        !+ Beam centerline
    integer :: naperture
        !+ Number of beam apertures
    integer, dimension(:), allocatable       :: ashape
        !+ Aperture shape 1="rectangular", 2="circular"
    real(Float64), dimension(:), allocatable :: awidy
        !+ Half width of the aperture(s) in y direction
    real(Float64), dimension(:), allocatable :: awidz
        !+ Half height of the aperture(s) in z direction
    real(Float64), dimension(:), allocatable :: aoffy
        !+ Horizontal (y) offset of the aperture(s) relative to the beam centerline [cm]
    real(Float64), dimension(:), allocatable :: aoffz
        !+ Vertical (z) offset of the aperture(s) relative to the beam centerline [cm]
    real(Float64), dimension(:), allocatable :: adist
        !+ Distance from the center of the beam source grid to the aperture(s) plane [cm]
    real(Float64), dimension(3,3) :: basis
        !+ Beam basis for converting from centerline coordinates to beam grid coordinates
    real(Float64), dimension(3,3) :: inv_basis
        !+ Inverse basis for reverse transfomation
end type NeutralBeam