Description of input parameters
Input parameters: FLUX TUBE GEM
itube :Always 1 for flux tube
ibase :No longer used in the flux tube code
iperi :1, periodic boundary condition for potentials
0, fixed boundary condition
iperidf :1, periodic boundary condition for particles
0, fixed boundary condition for particles
ibunit :1, convert the GYRO rhostar and beta_e to gem rhostar and beta_e
**In this case the rhostar and beta_e in gem.in uses gyro definitions
0, no need to convert
**In this case the rhostar and beta_e in gem.in uses GEM definitions
mimp :Mass ratio of ions with respect to to protons
mcmp :Mass ratio of impurities with respect to to protons
chgi :Charge of ions with respect to to electron charge
chgc :Charge of impurity ions with respect to electron charge
R/a :Aspect ratio, ratio of major radius to minor radius
elongation :Elongation, stretch up-down
selon :Radial variation of elongation
triangularity :Triangularity: stretch radially outward
stria :Radial variation of triangularity
shift :Measure of Shafranov shift
q0 :Safety factor
shat0 :Shear
teti :Ratio of electron temperature to ion temperature
tcti :Ratio of impurity temperature to ion temperature
rhoia :rhos/a
R/Lni :Ion density gradient scale length normalized to major radius
R/Lti :Ion temperature gradient scale length normalized to major radius
R/Lne :Electron density gradient scale length normalized to major radius
R/Lte :Electron temperature gradient scale length normalized to major radius
R/Lnc :Impurity density gradient scale length normalized to major radius
R/Ltc :Impurity temperature gradient scale length normalized to major radius
nc/ne :Measure of impurity concentration, ratio of impurity to electron density
imx :Number of grid points along x direction
jmx :Number of grid points along y direction
kmx :Number of grid points along z direction
mmx :Maximum number of marker particles
nmx :Maximum number of time steps
nsmx :Maximum number if impurity ions
modemx :Maximum number of modes
ntube :The z direction is divided in to km grids. These grids are used for the primary domain decomposition. Particles in each z grid are then distributed among ntube processors so that, total number of processors=kmx*ntube. Also, the calculation of jm Fourier components of potentials is equally distributed among the ntube processors. Therefore, jmx/ntube must be an integer
icrs_sec :Used in global codes to plot poloidal cross-section
=1 when to get the plot
=0 otherwise
ipg :which snapshot to get
isphi :which potential to plot
=0 for A_||
=1 for phi
icrs_sec :Used in global codes to plot poloidal cross-section
=1 when to get the plot
=0 otherwise
ipg :which snapshot to get
isphi :which potential to plot
=0 for A_||
=1 for phi
lxa :Radial box size, for fixed BC in linear runs
radial box size for nonlinear simulation
for periodic boundary condition linear runs, lxa is defined in equilf90 as 1/nq'
lymult :No of wedges the whole tokamak is partitioned in to.
Number of toroidal mode number in linear runs
:delta n in nonlinear runs.
delra :No longer used in the flux tube code
delri :No longer used in the flux tube code
delre :No longer used in the flux tube code
delrn :No longer used in the flux tube code
nrst :Sets the interval in time steps after which the coarse graining is to be invoked
eprs :The parameter for coarse graining
nlow :determines the lowest wave number in the NONLINEAR simulation in multiples of lymult
for example, if nlow=1, lowest wave number in the simulation is lymult x nlow=lymult
dt :Times steps in units of omega_u=eB/mp
nm :Total no of times steps
nsm :Number of ion species
xshape :Gaussian filter used in nonlinear simulation along x
yshape :Gaussian filter used in nonlinear simulation along y
shape :Gaussian filter used in nonlinear simulation along z
kymode :No longer used in the flux tube code
iput :Save files for restart, iput=1 always
iget :To retrieve saved stuff during a restart.
iget=0 for the first run
iget=1 for all restarts
ision :Is in gem.f90
used in push_wrapper
grid1
ezamp
ezampL
drdt
always 1
calculates ion contributions to current and density
peritr :Do not understand the use. Always set 0.
llk :Always set 0, used only in yveck, picks the i=0 Fourier component in
mlk :1 always to pick the m=1 Fourier component in y in the case of onemd=1 (linear runs)
onemd :defines whether to use one mode or multimode runs. For linear runs
onemd=1 to pick single mode.
izonal :=0 to remove the zonal component from \phi and d\phi/dt
=1 to retain the zonal component in \phi and d\phi/dt
iflut :1 always to keep the magnetic flutter component v_||delB/B in x and y component of velocity/drift
kxz :No longer used in the flux tube code
nplot :The interval in time steps, at which the data are stored for contour plots and other
post-processing stuff
XNPLT :The interval in time steps at which spec and dchi called to calculate potentials,
weight, fluxes and other stuff
modem :Used in outd.f for hist.out. The maximum no of mode history plots
nzcrt :The kx components to be removed from n=0 component. All i<nzcrt components are removed
npze :Used to define critical value of electron toroidal canonical momentum pzcrite
npzi :Used to define critical value of main ion toroidal canonical momentum pzcrite
npzc :Used to define critical value of impurity ion toroidal canonical momentum pzcrite
npzb :Used to define critical value of beam ion toroidal canonical momentum pzcrite
isft :If isft=1, code calculates the real frequency
mynf :Nfreq=kmx*mynf no of points in in Fourier transform
frmax :Maximum range of frequency
ifskp :Used in yveck1 and ftcamp, nsize=nm/ifskp
iphbf :=1, use blending function for phi
iapbf :=1, use blending function for A_{||}
idpbf :=1, use blending flunction for d\phi/dt
=0 always
cut :Used in restart, redefines weight as weight/cut
however in initialize, cut redefined if (cut.eq.0.) cut=1
always 1 in gem.in
amp(0.01) :Amplitude of initial weight defined in loading (loadi and ldel)
:Always set 0.01 in gem.in
:Automatically set to 0 when iget=1, that is restarting
tor :Always set 1 in gem.in.
:???exact role is not understood, whether to take toroidal effect in to account or not
ishift :No longer used in the flux tube code
fradi :Adiabatic fraction of electrons; set equal to isg the split weight factor in the subroutine
init
kxcut :Cut off value for kx
kxcut :Cut off value for ky
bcut :Cut off value for aruguments of Bessel function
=always set to 3000 in gem.in
r0a :r0/a; center of the radial domain
width :No longer used in the flux tube code
vpp :No longer used in the flux tube code
vt0 :No longer used in the flux tube code
yd0 :No longer used in the flux tube code
c4 :Always 2 defined in gem.in, the power in the Gaussian filter that is epx(-b2^c4)
ifluid :Always 1, invokes kinetic electron
isg :Split weigh factor, almost always 0.1
amie :Proton to electron mass ratio
rneu :Electron ion collision frequency
rneui :Ion electron(?) collision frequency
vexbsw :Switch for equilibrium EXB shear
=1, takes in to account the effect of EXB shear
with EXB shear, the boundary condition is always fixed
=0, ignores EXB shear.
vparsw :Switch for equilibrium parallel flow
mach :Value with respect to ion sound speed, used to define flow (??)
gamma_E.a/cs :EXB shearing rate, given in cs/a
beta :ELECTRON beta
nonlin :Switch for ion nonlinear terms
=0 for linear runs
=1 for nonlinear runs
nonline :Switch for electron nonlinear terms
=0 for linear runs
=1 for nonlinear runs
ipara :Switch to take in to parallel non-linearity(??)
=0 to exclude
=1 to include
vwidth :Used for uniform loading; No longer used in the flux tube code
vwidthe :Used for uniform loading; No longer used in the flux tube code
vcut :Always 4 in gem.in
used to reset electron weight when v_||/vthe>vcut, wght=0
used in subroutines grid1, jie, jpar0, and in setw
isuni :0 always. Used earlier for uniform loading (??)
idg :0 always, =1, writes various component to the output file run.out
mm :Total no of marker particles per species
mbeam :Mass of beam ions=2,
No longer used in the flux tube code
qbeam :Charge of beam ions=1, N
No longer used in the flux tube code in the flux tube code
lr :Is the number of points for gyro averaging.
=4 always in gem.in
iflr :Always 1.
To include the finite Larmor radius effect of the ions; used in ppush, cpush, grid1, jie
iorb :Always 1.
To include finite orbit width term (??). Multiplied to the magnetic drift terms
in ppush an cpush
---------------------------------------------------------------
Length in rho_u, time in inverse omega_u, velocity in v_u mass is in mp
Input parameters: GLOBAL GEM
itube :Always 1
ibase :=1, use analytical equilibrium
=0, otherwise
iperi :0 always, fixed boundary condition
ixgc :2 Iterdb;
:3 Miller from Fluxgrid (??)
:4 Miller from Matlab full (??)
:5 General geometry from Matlab full (??)
=====================================================
imx :Maximum number of number of grid points along x direction
jmx :Maximum number of number of grid points along y direction
kmx :Maximum number of number of grid points along z direction
mmx :Maximum number of marker particles
nmx :Maximum number of time steps
nsmx :Maximum number if impurity ions
modemx :Maximum number of modes
ntube :The z direction is divided in to km grids. These grids are used for the
primary domain decomposition. Particles in each z grid are then
distributed among ntube processors so that,
total number of processors=kmx*ntube.
Also, the calculation of jm Fourier components of potentials
is equally distributed among the ntube processors.
Therefore, jmx/ntube must be an integer
icrs_sec :Used in global codes to plot poloidal cross-section
=1 when to get the plot
=0 otherwise
ipg :which snapshot to get
isphi :which potential to plot
=0 for A_||
=1 for phi
im :Number of grid points along x direction
jm :Number of grid points along y direction
km :Number of grid points along z direction
lxa :Radial box size, for fixed BC in linear runs
radial box size for nonlinear simulation
for periodic boundary condition linear runs, lxa is defined in equilf90 as 1/nq'
lymult :No of wedges the whole tokamak is partitioned in to.
Number of toroidal mode number in linear runs
:delta n in nonlinear runs.
delra :No longer used
delri :Smoothing in the ion temperature profile
smaller is the value lesser is the smoothing
delre :Smoothing in the electron temperature profile
smaller is the value lesser is the smoothing
delrn :Smoothing in the density profile
smaller is the value lesser is the smoothing
nrst :Sets the interval in time steps after which the coarse graining is to be invoked
eprs :The parameter for coarse graining
nlow :determines the lowest wave number in the NONLINEAR simulation in multiples of lymult
for example, if nlow=1, lowest wave number in the simulation is lymult x nlow=lymult
=================================================
dt :Times steps in units of omega_u=eB/mp
nm :Total no of times steps
nsm :Number of ion species
xshape :Gaussian filter used in nonlinear simulation along x
yshape :Gaussian filter used in nonlinear simulation along y
zshape :Gaussian filter used in nonlinear simulation along z
ipf :No longer used
isham :1 to incorporate fast ion current in ezamp
:0 otherwise
ishgk :Whether to use high energy ions
:0 otherwise
=================================================
kymode :No longer used
iput :Save files for restart, iput=1 always
iget :To retrieve saved stuff during a restart.
iget=0 for the first run
iget=1 for all restarts
ision :Is in gem.f90
used in push_wrapper
grid1
ezamp
ezampL
drdt
always 1
calculates ion contributions to current and density
ish :No longer used
peritr :??Do not understand the use. Always set 0.
llk :Always set 0, used only in yveck, picks the i=0 Fourier component in
mlk :1 always to pick the m=1 Fourier component in y in the case of onemd=1 (linear runs)
onemd :defines whether to use one mode or multimode runs. For linear runs
onemd=1 to pick single mode.
izonal :=0 to remove the zonal component from \phi and d\phi/dt
=1 to retain the zonal component in \phi and d\phi/dt
iflut :1 always to keep the magnetic flutter component v_||delB/B in x and y
component of velocity/drift
kxz :Used in the following expression, in the y velocity (??)
vp0 = vp0*(vt0+vpp*(r-lr0)+yd0*sin(kxz*(r+0.5*lx-lr0)*2*pi/lx))
=================================================
nplot :The interval in time steps, at which the data are stored for contour plots and other
post-processing stuff
XNPLT :The interval in time steps at which spec and dchi called to calculate potentials,
weight, fluxes and other stuff
modem :Used in outd.f for hist.out. The maximum no of mode history plots
nzcrt :The kx components to be removed from n=0 component. All i<nzcrt components are removed
npze :Used to define critical value of electron toroidal canonical momentum pzcrite
npzi :Used to define critical value of main ion toroidal canonical momentum pzcrite
npzc :Used to define critical value of impurity ion toroidal canonical momentum pzcrite
npzb :Used to define critical value of beam ion toroidal canonical momentum pzcrite
swgradti :No longer used
swgradte :No longer used
swgradn :No longer used
=================================================
isft :If isft=1, code calculates the real frequency
mynf :Nfreq=kmx*mynf no of points in in Fourier transform
frmax :Maximum range of frequency
ifskp :Used in yveck1 and ftcamp, nsize=nm/ifskp
=================================================
iphbf :=1, use blending function for phi
iapbf :=1, use blending function for A_{||}
idpbf :=1, use blending flunction for d\phi/dt
=0 always
=================================================
cut :Used in restart, redefines weight as weight/cut
however in initialize, cut redefined if (cut.eq.0.) cut=1
always 1 in gem.in
amp(0.01) :Amplitude of initial weight defined in loading (loadi and ldel)
:Always set 0.01 in gem.in
:Automatically set to 0 when iget=1, that is restarting
tor :Always set 1 in gem.in.
:???exact role is not understood, whether to take toroidal effect in to account or not
ishift :No longer used
fradi :Adiabatic fraction of electrons; set equal to isg the split weight factor in the subroutine
init
kxcut :Cut off value for kx
kxcut :Cut off value for ky
bcut :Cut off value for aruguments of Bessel function
=always set to 3000 in gem.in
=================================================
br0 :Set equal to rmaj0
r0a :r0/a; center of the radial domain
q0 :No longer used
qp :No longer used
width :No longer used
vp0 = vp0*(vt0+vpp*(r-lr0)+yd0*sin(kxz*(r+0.5*lx-lr0)*2*pi/lx))
vpp :No longer used
vt0 :No longer used
yd0 :No longer used
=================================================
c1 :coefficients to define q profile, also defined in equil.f90 as parameter
c2 :coefficients to define q profile, also defined in equil.f90 as parameter
c3 :Not used
c4 :Always 2 defined in gem.in, the power in the Gaussian filter that is epx(-b2^c4)
ifluid :Always 1, invokes kinetic electron
isg :Split weigh factor, almost always 0.1
amie :Proton to electron mass ratio
rneu :Electron ion collision frequency
rneui :Ion electron(?) collision frequency
vexbsw :Switch for equilibrium EXB shear
=1, takes in to account the effect of EXB shear
with EXB shear, the boundary condition is always fixed
=0, ignores EXB shear.
vparsw :Switch for equilibrium parallel flow
=================================================
betasw :ELECTRON beta
nonlin :Switch for ion nonlinear terms
=0 for linear runs
=1 for nonlinear runs
nonline :Switch for electron nonlinear terms
=0 for linear runs
=1 for nonlinear runs
ipara :Switch to take in to parallel non-linearity(??)
=0 to exclude
=1 to include
vwidth :Used for uniform loading; No longer used
vwidthe :Used for uniform loading; No longer used
vcut :Always 4 in gem.in
used to reset electron weight when v_||/vthe>vcut, wght=0
used in subroutines grid1, jie, jpar0, and in setw
isuni :0 always. Used earlier for uniform loading (??)
idg :0 always, =1, writes various component to the output file run.out
epa :Not used
=================================================
mm :Total no of marker particles per species
mion :No longer used
qion :No longer used
mimp :No longer used
qimp :No longer used
mbeam :Mass of beam ions=2,
No longer used
qbeam :Charge of beam ions=1, N
No longer used
lr :Is the number of points for gyro averaging.
=4 always in gem.in
=================================================
kappan 0.0022
kappat 0.0069
kapt
=================================================
nh
lh
ecpow
ehmax
ehmin
teth
iflr :Always 1.
To include the finite Larmor radius effect of the ions; used in ppush, cpush, grid1, jie
iorb :Always 1.
To include finite orbit width term (??). Multiplied to the magnetic drift terms
in ppush an cpush
iflrh
=================================================
Input Parameters: Hybrid Code
=====================================================
imx :Maximum number of number of grid points along x direction
jmx :Maximum number of number of grid points along y direction
kmx :Maximum number of number of grid points along z direction
mmx :Maximum number of marker particles
nmx :Maximum number of time steps
nsmx :Maximum number if impurity ions
modemx :Maximum number of modes
ntube :The z direction is divided in to km grids. These grids are used for the
primary domain decomposition. Particles in each z grid are then
distributed among ntube processors so that,
total number of processors=kmx*ntube.
Also, the calculation of jm Fourier components of potentials
is equally distributed among the ntube processors.
Therefore, jmx/ntube must be an integer
icrs_sec :Used in global codes to plot poloidal cross-section
=1 when to get the plot
=0 otherwise
ipg :which snapshot to get
isphi :which potential to plot
=0 for A_||
=1 for phi
itrace
isft :If isft=1, code calculates the real frequency
irlk :No longer used
qoffset :??? used to define sf_ref in equil.f
=====================================================
im :Number of grid points along x direction
jm :Number of grid points along y direction
km :Number of grid points along z direction
lxa :Radial box size, for fixed BC in linear runs
radial box size for nonlinear simulation
for periodic boundary condition linear runs, lxa is defined in equilf90 as 1/nq'
lyfra :No of wedges the whole tokamak is partitioned in to.
Value of the toroidal mode number in linear runs
delta n in nonlinear runs.
nrst :Sets the interval in time steps after which the coarse graining is to be invoked
eprs :The parameter for coarse graining
epsnx :Filtering/smoothing parameter for electron density in x
epsny :Filtering/smoothing parameter for electron density in y
epsny :Filtering/smoothing parameter for electron density in z
epsax :smoothing parameter for A_|| in x after Fourier filtering
epsay :smoothing parameter for A_|| in y after Fourier filtering
epsay :smoothing parameter for A_|| in z after Fourier filtering
=================================================
dt :Times steps in units of omega_u=eB/mp
nm :Total no of times steps
nsm :Number of ion species
xshape :Not used
yshape :Not Used
zshape :Not Used
ipf :Not used
isham :1 to incorporate fast ion current in ezamp
0 otherwise
ishgk :Whether to use high energy ions
0 otherwise
icmprs :??? did not understand
iez :1 calculates parallel electric field
0 otherwise
isgkm :1 or 0; whether to use split weight scheme or not
icncl :???Whether to cancle (icncl=1) or retain (icncl=0) the FLR effect
ispre :??? did not understand
isdte :??? did not understand
=================================================
delra :No longer used
delri :Smoothing in the ion temperature profile
smaller is the value lesser is the smoothing
delre :Smoothing in the electron temperature profile
smaller is the value lesser is the smoothing
delrn :Smoothing in the density profile
smaller is the value lesser is the smoothing
nlow :determines the lowest wave number in the NONLINEAR simulation in multiples of lymult
for example, if nlow=1, lowest wave number in the simulation is lymult x nlow=lymult
=====================================================
kymode :No longer used
iput :Save files for restart, iput=1 always
iget :To retrieve saved stuff during a restart.
iget=0 for the first run
iget=1 for all restarts
ision :Is in gem.f90
used in push_wrapper
grid1
ezamp
ezampL
drdt
always 1
calculates ion contributions to current and density
ish :No longer used
peritr :??Do not understand the use. Always set 0.
llk :Always set 0, used only in yveck, picks the i=0 Fourier component in
mlk :1 always to pick the m=1 Fourier component in y in the case of onemd=1 (linear runs)
onemd :defines whether to use one mode or multimode runs. For linear runs
onemd=1 to pick single mode.
izon :=0 to remove the zonal component from \phi and d\phi/dt
=1 to retain the zonal component in \phi and d\phi/dt
kxz :???Used in the following expression, in the y velocity
vp0 = vp0*(vt0+vpp*(r-lr0)+yd0*sin(kxz*(r+0.5*lx-lr0)*2*pi/lx))
oml :Lower value of frequency used in the calculation of real frequency
omu :Upper value of frequency used in the calculation of real frequency
nom :No of points in Fourier transform while calculation real frequency
delom :
=================================================
nplot :The interval in time steps, at which the data are stored for contour plots and other
post-processing stuff
XNPLT :The interval in time steps at which spec and dchi called to calculate potentials,
weight, fluxes and other stuff
modem :Used in outd.f for hist.out. The maximum no of mode history plots
npzh
nenh
dtref
islow
mynf :Nfreq=kmx*mynf no of points in in Fourier transform
frmax :Maximum range of frequency
ifskp :Used in yveck1 and ftcamp, nsize=nm/ifskp
=================================================
cut :Used in restart, redefines weight as weight/cut
however in initialize, cut redefined if (cut.eq.0.) cut=1
always 1 in gem.in
amp(0.01) :Amplitude of initial weight defined in loading (loadi and ldel)
:Always set 0.01 in gem.in
:Automatically set to 0 when iget=1, that is restarting
tor :Always set 1 in gem.in.
:???exact role is not understood, whether to take toroidal effect in to account or not
ishift :No longer used
fradi :Adiabatic fraction of electrons; set equal to isg the split weight factor in the subroutine
init
kxcut :Cut off value for kx
kxcut :Cut off value for ky
bcut :Cut off value for aruguments of Bessel function
=always set to 3000 in gem.in
epspx
epspz
etaohm
=================================================
br0 :Set equal to rmaj0
lr0 :r0/a; center of the radial domain
q0 :No longer used
qp :No longer used
width :No longer used
vpp :No longer used
vt0 :No longer used
yd0 :No longer used
vp0 = vp0*(vt0+vpp*(r-lr0)+yd0*sin(kxz*(r+0.5*lx-lr0)*2*pi/lx))
=================================================
c1 :coefficients to define q profile, also defined in equil.f90 as parameter
c2 :coefficients to define q profile, also defined in equil.f90 as parameter
c3 :Not used
c4 :Always 2 defined in gem.in, the power in the Gaussian filter that is epx(-b2^c4)
ifluid :Always 1, invokes kinetic electron
isg :Split weigh factor, almost always 0.1
amie :Proton to electron mass ratio
rneu :Electron ion collision frequency
gamion
gambm
gamdne
gamphi
gamapa
gamte
=================================================
vexbsw :Switch for equilibrium EXB shear
=1, takes in to account the effect of EXB shear
with EXB shear, the boundary condition is always fixed
=0, ignores EXB shear.
vparsw :Switch for equilibrium parallel flow
=================================================
beta :ELECTRON beta
nonlin :Switch for ion nonlinear terms
=0 for linear runs
=1 for nonlinear runs
nonline :Switch for electron nonlinear terms
=0 for linear runs
=1 for nonlinear runs
nonlinh
ipara :Switch to take in to parallel non-linearity(??)
=0 to exclude
=1 to include
iparah :Switch to take in to parallel non-linearity(??) for hot ions
=0 to exclude
=1 to include
nonlint :Switch for tracer(?) ion nonlinear terms
=0 for linear runs
=1 for nonlinear runs
iparat ::Switch to take in to parallel non-linearity(??) for tracer(?) ions
=0 to exclude
=1 to include
vwidth :Used for uniform loading; No longer used
vwidthe :Used for uniform loading; No longer used
vcut :Always 4 in gem.in
used to reset electron weight when v_||/vthe>vcut, wght=0
used in subroutines grid1, jie, jpar0, and in setw
isuni :0 always. Used earlier for uniform loading (??)
idg :0 always, =1, writes various component to the output file run.out
=================================================
mm :Total no of marker particles per species
tets :Ratio of electron temperature to impurity temperature
mims :Ratio of ion mass to impurity mass
q : Charge of ion
lr :Is the number of points for gyro averaging.
=4 always in gem.in
=================================================
kappan 0.0022
kappat 0.0069
kapt
=================================================
talpha :
betah :
lh :
delth :
vc :
vi :
vmin
iflr :Always 1.
To include the finite Larmor radius effect of the ions; used in ppush, cpush, grid1, jie
iorb :Always 1.
To include finite orbit width term (??). Multiplied to the magnetic drift terms
in ppush an cpush
iflrh
=================================================
itube :Always 1 for flux tube
ibase :No longer used in the flux tube code
iperi :1, periodic boundary condition for potentials
0, fixed boundary condition
iperidf :1, periodic boundary condition for particles
0, fixed boundary condition for particles
ibunit :1, convert the GYRO rhostar and beta_e to gem rhostar and beta_e
**In this case the rhostar and beta_e in gem.in uses gyro definitions
0, no need to convert
**In this case the rhostar and beta_e in gem.in uses GEM definitions
mimp :Mass ratio of ions with respect to to protons
mcmp :Mass ratio of impurities with respect to to protons
chgi :Charge of ions with respect to to electron charge
chgc :Charge of impurity ions with respect to electron charge
R/a :Aspect ratio, ratio of major radius to minor radius
elongation :Elongation, stretch up-down
selon :Radial variation of elongation
triangularity :Triangularity: stretch radially outward
stria :Radial variation of triangularity
shift :Measure of Shafranov shift
q0 :Safety factor
shat0 :Shear
teti :Ratio of electron temperature to ion temperature
tcti :Ratio of impurity temperature to ion temperature
rhoia :rhos/a
R/Lni :Ion density gradient scale length normalized to major radius
R/Lti :Ion temperature gradient scale length normalized to major radius
R/Lne :Electron density gradient scale length normalized to major radius
R/Lte :Electron temperature gradient scale length normalized to major radius
R/Lnc :Impurity density gradient scale length normalized to major radius
R/Ltc :Impurity temperature gradient scale length normalized to major radius
nc/ne :Measure of impurity concentration, ratio of impurity to electron density
imx :Number of grid points along x direction
jmx :Number of grid points along y direction
kmx :Number of grid points along z direction
mmx :Maximum number of marker particles
nmx :Maximum number of time steps
nsmx :Maximum number if impurity ions
modemx :Maximum number of modes
ntube :The z direction is divided in to km grids. These grids are used for the primary domain decomposition. Particles in each z grid are then distributed among ntube processors so that, total number of processors=kmx*ntube. Also, the calculation of jm Fourier components of potentials is equally distributed among the ntube processors. Therefore, jmx/ntube must be an integer
icrs_sec :Used in global codes to plot poloidal cross-section
=1 when to get the plot
=0 otherwise
ipg :which snapshot to get
isphi :which potential to plot
=0 for A_||
=1 for phi
icrs_sec :Used in global codes to plot poloidal cross-section
=1 when to get the plot
=0 otherwise
ipg :which snapshot to get
isphi :which potential to plot
=0 for A_||
=1 for phi
lxa :Radial box size, for fixed BC in linear runs
radial box size for nonlinear simulation
for periodic boundary condition linear runs, lxa is defined in equilf90 as 1/nq'
lymult :No of wedges the whole tokamak is partitioned in to.
Number of toroidal mode number in linear runs
:delta n in nonlinear runs.
delra :No longer used in the flux tube code
delri :No longer used in the flux tube code
delre :No longer used in the flux tube code
delrn :No longer used in the flux tube code
nrst :Sets the interval in time steps after which the coarse graining is to be invoked
eprs :The parameter for coarse graining
nlow :determines the lowest wave number in the NONLINEAR simulation in multiples of lymult
for example, if nlow=1, lowest wave number in the simulation is lymult x nlow=lymult
dt :Times steps in units of omega_u=eB/mp
nm :Total no of times steps
nsm :Number of ion species
xshape :Gaussian filter used in nonlinear simulation along x
yshape :Gaussian filter used in nonlinear simulation along y
shape :Gaussian filter used in nonlinear simulation along z
kymode :No longer used in the flux tube code
iput :Save files for restart, iput=1 always
iget :To retrieve saved stuff during a restart.
iget=0 for the first run
iget=1 for all restarts
ision :Is in gem.f90
used in push_wrapper
grid1
ezamp
ezampL
drdt
always 1
calculates ion contributions to current and density
peritr :Do not understand the use. Always set 0.
llk :Always set 0, used only in yveck, picks the i=0 Fourier component in
mlk :1 always to pick the m=1 Fourier component in y in the case of onemd=1 (linear runs)
onemd :defines whether to use one mode or multimode runs. For linear runs
onemd=1 to pick single mode.
izonal :=0 to remove the zonal component from \phi and d\phi/dt
=1 to retain the zonal component in \phi and d\phi/dt
iflut :1 always to keep the magnetic flutter component v_||delB/B in x and y component of velocity/drift
kxz :No longer used in the flux tube code
nplot :The interval in time steps, at which the data are stored for contour plots and other
post-processing stuff
XNPLT :The interval in time steps at which spec and dchi called to calculate potentials,
weight, fluxes and other stuff
modem :Used in outd.f for hist.out. The maximum no of mode history plots
nzcrt :The kx components to be removed from n=0 component. All i<nzcrt components are removed
npze :Used to define critical value of electron toroidal canonical momentum pzcrite
npzi :Used to define critical value of main ion toroidal canonical momentum pzcrite
npzc :Used to define critical value of impurity ion toroidal canonical momentum pzcrite
npzb :Used to define critical value of beam ion toroidal canonical momentum pzcrite
isft :If isft=1, code calculates the real frequency
mynf :Nfreq=kmx*mynf no of points in in Fourier transform
frmax :Maximum range of frequency
ifskp :Used in yveck1 and ftcamp, nsize=nm/ifskp
iphbf :=1, use blending function for phi
iapbf :=1, use blending function for A_{||}
idpbf :=1, use blending flunction for d\phi/dt
=0 always
cut :Used in restart, redefines weight as weight/cut
however in initialize, cut redefined if (cut.eq.0.) cut=1
always 1 in gem.in
amp(0.01) :Amplitude of initial weight defined in loading (loadi and ldel)
:Always set 0.01 in gem.in
:Automatically set to 0 when iget=1, that is restarting
tor :Always set 1 in gem.in.
:???exact role is not understood, whether to take toroidal effect in to account or not
ishift :No longer used in the flux tube code
fradi :Adiabatic fraction of electrons; set equal to isg the split weight factor in the subroutine
init
kxcut :Cut off value for kx
kxcut :Cut off value for ky
bcut :Cut off value for aruguments of Bessel function
=always set to 3000 in gem.in
r0a :r0/a; center of the radial domain
width :No longer used in the flux tube code
vpp :No longer used in the flux tube code
vt0 :No longer used in the flux tube code
yd0 :No longer used in the flux tube code
c4 :Always 2 defined in gem.in, the power in the Gaussian filter that is epx(-b2^c4)
ifluid :Always 1, invokes kinetic electron
isg :Split weigh factor, almost always 0.1
amie :Proton to electron mass ratio
rneu :Electron ion collision frequency
rneui :Ion electron(?) collision frequency
vexbsw :Switch for equilibrium EXB shear
=1, takes in to account the effect of EXB shear
with EXB shear, the boundary condition is always fixed
=0, ignores EXB shear.
vparsw :Switch for equilibrium parallel flow
mach :Value with respect to ion sound speed, used to define flow (??)
gamma_E.a/cs :EXB shearing rate, given in cs/a
beta :ELECTRON beta
nonlin :Switch for ion nonlinear terms
=0 for linear runs
=1 for nonlinear runs
nonline :Switch for electron nonlinear terms
=0 for linear runs
=1 for nonlinear runs
ipara :Switch to take in to parallel non-linearity(??)
=0 to exclude
=1 to include
vwidth :Used for uniform loading; No longer used in the flux tube code
vwidthe :Used for uniform loading; No longer used in the flux tube code
vcut :Always 4 in gem.in
used to reset electron weight when v_||/vthe>vcut, wght=0
used in subroutines grid1, jie, jpar0, and in setw
isuni :0 always. Used earlier for uniform loading (??)
idg :0 always, =1, writes various component to the output file run.out
mm :Total no of marker particles per species
mbeam :Mass of beam ions=2,
No longer used in the flux tube code
qbeam :Charge of beam ions=1, N
No longer used in the flux tube code in the flux tube code
lr :Is the number of points for gyro averaging.
=4 always in gem.in
iflr :Always 1.
To include the finite Larmor radius effect of the ions; used in ppush, cpush, grid1, jie
iorb :Always 1.
To include finite orbit width term (??). Multiplied to the magnetic drift terms
in ppush an cpush
---------------------------------------------------------------
Length in rho_u, time in inverse omega_u, velocity in v_u mass is in mp
Input parameters: GLOBAL GEM
itube :Always 1
ibase :=1, use analytical equilibrium
=0, otherwise
iperi :0 always, fixed boundary condition
ixgc :2 Iterdb;
:3 Miller from Fluxgrid (??)
:4 Miller from Matlab full (??)
:5 General geometry from Matlab full (??)
=====================================================
imx :Maximum number of number of grid points along x direction
jmx :Maximum number of number of grid points along y direction
kmx :Maximum number of number of grid points along z direction
mmx :Maximum number of marker particles
nmx :Maximum number of time steps
nsmx :Maximum number if impurity ions
modemx :Maximum number of modes
ntube :The z direction is divided in to km grids. These grids are used for the
primary domain decomposition. Particles in each z grid are then
distributed among ntube processors so that,
total number of processors=kmx*ntube.
Also, the calculation of jm Fourier components of potentials
is equally distributed among the ntube processors.
Therefore, jmx/ntube must be an integer
icrs_sec :Used in global codes to plot poloidal cross-section
=1 when to get the plot
=0 otherwise
ipg :which snapshot to get
isphi :which potential to plot
=0 for A_||
=1 for phi
im :Number of grid points along x direction
jm :Number of grid points along y direction
km :Number of grid points along z direction
lxa :Radial box size, for fixed BC in linear runs
radial box size for nonlinear simulation
for periodic boundary condition linear runs, lxa is defined in equilf90 as 1/nq'
lymult :No of wedges the whole tokamak is partitioned in to.
Number of toroidal mode number in linear runs
:delta n in nonlinear runs.
delra :No longer used
delri :Smoothing in the ion temperature profile
smaller is the value lesser is the smoothing
delre :Smoothing in the electron temperature profile
smaller is the value lesser is the smoothing
delrn :Smoothing in the density profile
smaller is the value lesser is the smoothing
nrst :Sets the interval in time steps after which the coarse graining is to be invoked
eprs :The parameter for coarse graining
nlow :determines the lowest wave number in the NONLINEAR simulation in multiples of lymult
for example, if nlow=1, lowest wave number in the simulation is lymult x nlow=lymult
=================================================
dt :Times steps in units of omega_u=eB/mp
nm :Total no of times steps
nsm :Number of ion species
xshape :Gaussian filter used in nonlinear simulation along x
yshape :Gaussian filter used in nonlinear simulation along y
zshape :Gaussian filter used in nonlinear simulation along z
ipf :No longer used
isham :1 to incorporate fast ion current in ezamp
:0 otherwise
ishgk :Whether to use high energy ions
:0 otherwise
=================================================
kymode :No longer used
iput :Save files for restart, iput=1 always
iget :To retrieve saved stuff during a restart.
iget=0 for the first run
iget=1 for all restarts
ision :Is in gem.f90
used in push_wrapper
grid1
ezamp
ezampL
drdt
always 1
calculates ion contributions to current and density
ish :No longer used
peritr :??Do not understand the use. Always set 0.
llk :Always set 0, used only in yveck, picks the i=0 Fourier component in
mlk :1 always to pick the m=1 Fourier component in y in the case of onemd=1 (linear runs)
onemd :defines whether to use one mode or multimode runs. For linear runs
onemd=1 to pick single mode.
izonal :=0 to remove the zonal component from \phi and d\phi/dt
=1 to retain the zonal component in \phi and d\phi/dt
iflut :1 always to keep the magnetic flutter component v_||delB/B in x and y
component of velocity/drift
kxz :Used in the following expression, in the y velocity (??)
vp0 = vp0*(vt0+vpp*(r-lr0)+yd0*sin(kxz*(r+0.5*lx-lr0)*2*pi/lx))
=================================================
nplot :The interval in time steps, at which the data are stored for contour plots and other
post-processing stuff
XNPLT :The interval in time steps at which spec and dchi called to calculate potentials,
weight, fluxes and other stuff
modem :Used in outd.f for hist.out. The maximum no of mode history plots
nzcrt :The kx components to be removed from n=0 component. All i<nzcrt components are removed
npze :Used to define critical value of electron toroidal canonical momentum pzcrite
npzi :Used to define critical value of main ion toroidal canonical momentum pzcrite
npzc :Used to define critical value of impurity ion toroidal canonical momentum pzcrite
npzb :Used to define critical value of beam ion toroidal canonical momentum pzcrite
swgradti :No longer used
swgradte :No longer used
swgradn :No longer used
=================================================
isft :If isft=1, code calculates the real frequency
mynf :Nfreq=kmx*mynf no of points in in Fourier transform
frmax :Maximum range of frequency
ifskp :Used in yveck1 and ftcamp, nsize=nm/ifskp
=================================================
iphbf :=1, use blending function for phi
iapbf :=1, use blending function for A_{||}
idpbf :=1, use blending flunction for d\phi/dt
=0 always
=================================================
cut :Used in restart, redefines weight as weight/cut
however in initialize, cut redefined if (cut.eq.0.) cut=1
always 1 in gem.in
amp(0.01) :Amplitude of initial weight defined in loading (loadi and ldel)
:Always set 0.01 in gem.in
:Automatically set to 0 when iget=1, that is restarting
tor :Always set 1 in gem.in.
:???exact role is not understood, whether to take toroidal effect in to account or not
ishift :No longer used
fradi :Adiabatic fraction of electrons; set equal to isg the split weight factor in the subroutine
init
kxcut :Cut off value for kx
kxcut :Cut off value for ky
bcut :Cut off value for aruguments of Bessel function
=always set to 3000 in gem.in
=================================================
br0 :Set equal to rmaj0
r0a :r0/a; center of the radial domain
q0 :No longer used
qp :No longer used
width :No longer used
vp0 = vp0*(vt0+vpp*(r-lr0)+yd0*sin(kxz*(r+0.5*lx-lr0)*2*pi/lx))
vpp :No longer used
vt0 :No longer used
yd0 :No longer used
=================================================
c1 :coefficients to define q profile, also defined in equil.f90 as parameter
c2 :coefficients to define q profile, also defined in equil.f90 as parameter
c3 :Not used
c4 :Always 2 defined in gem.in, the power in the Gaussian filter that is epx(-b2^c4)
ifluid :Always 1, invokes kinetic electron
isg :Split weigh factor, almost always 0.1
amie :Proton to electron mass ratio
rneu :Electron ion collision frequency
rneui :Ion electron(?) collision frequency
vexbsw :Switch for equilibrium EXB shear
=1, takes in to account the effect of EXB shear
with EXB shear, the boundary condition is always fixed
=0, ignores EXB shear.
vparsw :Switch for equilibrium parallel flow
=================================================
betasw :ELECTRON beta
nonlin :Switch for ion nonlinear terms
=0 for linear runs
=1 for nonlinear runs
nonline :Switch for electron nonlinear terms
=0 for linear runs
=1 for nonlinear runs
ipara :Switch to take in to parallel non-linearity(??)
=0 to exclude
=1 to include
vwidth :Used for uniform loading; No longer used
vwidthe :Used for uniform loading; No longer used
vcut :Always 4 in gem.in
used to reset electron weight when v_||/vthe>vcut, wght=0
used in subroutines grid1, jie, jpar0, and in setw
isuni :0 always. Used earlier for uniform loading (??)
idg :0 always, =1, writes various component to the output file run.out
epa :Not used
=================================================
mm :Total no of marker particles per species
mion :No longer used
qion :No longer used
mimp :No longer used
qimp :No longer used
mbeam :Mass of beam ions=2,
No longer used
qbeam :Charge of beam ions=1, N
No longer used
lr :Is the number of points for gyro averaging.
=4 always in gem.in
=================================================
kappan 0.0022
kappat 0.0069
kapt
=================================================
nh
lh
ecpow
ehmax
ehmin
teth
iflr :Always 1.
To include the finite Larmor radius effect of the ions; used in ppush, cpush, grid1, jie
iorb :Always 1.
To include finite orbit width term (??). Multiplied to the magnetic drift terms
in ppush an cpush
iflrh
=================================================
Input Parameters: Hybrid Code
=====================================================
imx :Maximum number of number of grid points along x direction
jmx :Maximum number of number of grid points along y direction
kmx :Maximum number of number of grid points along z direction
mmx :Maximum number of marker particles
nmx :Maximum number of time steps
nsmx :Maximum number if impurity ions
modemx :Maximum number of modes
ntube :The z direction is divided in to km grids. These grids are used for the
primary domain decomposition. Particles in each z grid are then
distributed among ntube processors so that,
total number of processors=kmx*ntube.
Also, the calculation of jm Fourier components of potentials
is equally distributed among the ntube processors.
Therefore, jmx/ntube must be an integer
icrs_sec :Used in global codes to plot poloidal cross-section
=1 when to get the plot
=0 otherwise
ipg :which snapshot to get
isphi :which potential to plot
=0 for A_||
=1 for phi
itrace
isft :If isft=1, code calculates the real frequency
irlk :No longer used
qoffset :??? used to define sf_ref in equil.f
=====================================================
im :Number of grid points along x direction
jm :Number of grid points along y direction
km :Number of grid points along z direction
lxa :Radial box size, for fixed BC in linear runs
radial box size for nonlinear simulation
for periodic boundary condition linear runs, lxa is defined in equilf90 as 1/nq'
lyfra :No of wedges the whole tokamak is partitioned in to.
Value of the toroidal mode number in linear runs
delta n in nonlinear runs.
nrst :Sets the interval in time steps after which the coarse graining is to be invoked
eprs :The parameter for coarse graining
epsnx :Filtering/smoothing parameter for electron density in x
epsny :Filtering/smoothing parameter for electron density in y
epsny :Filtering/smoothing parameter for electron density in z
epsax :smoothing parameter for A_|| in x after Fourier filtering
epsay :smoothing parameter for A_|| in y after Fourier filtering
epsay :smoothing parameter for A_|| in z after Fourier filtering
=================================================
dt :Times steps in units of omega_u=eB/mp
nm :Total no of times steps
nsm :Number of ion species
xshape :Not used
yshape :Not Used
zshape :Not Used
ipf :Not used
isham :1 to incorporate fast ion current in ezamp
0 otherwise
ishgk :Whether to use high energy ions
0 otherwise
icmprs :??? did not understand
iez :1 calculates parallel electric field
0 otherwise
isgkm :1 or 0; whether to use split weight scheme or not
icncl :???Whether to cancle (icncl=1) or retain (icncl=0) the FLR effect
ispre :??? did not understand
isdte :??? did not understand
=================================================
delra :No longer used
delri :Smoothing in the ion temperature profile
smaller is the value lesser is the smoothing
delre :Smoothing in the electron temperature profile
smaller is the value lesser is the smoothing
delrn :Smoothing in the density profile
smaller is the value lesser is the smoothing
nlow :determines the lowest wave number in the NONLINEAR simulation in multiples of lymult
for example, if nlow=1, lowest wave number in the simulation is lymult x nlow=lymult
=====================================================
kymode :No longer used
iput :Save files for restart, iput=1 always
iget :To retrieve saved stuff during a restart.
iget=0 for the first run
iget=1 for all restarts
ision :Is in gem.f90
used in push_wrapper
grid1
ezamp
ezampL
drdt
always 1
calculates ion contributions to current and density
ish :No longer used
peritr :??Do not understand the use. Always set 0.
llk :Always set 0, used only in yveck, picks the i=0 Fourier component in
mlk :1 always to pick the m=1 Fourier component in y in the case of onemd=1 (linear runs)
onemd :defines whether to use one mode or multimode runs. For linear runs
onemd=1 to pick single mode.
izon :=0 to remove the zonal component from \phi and d\phi/dt
=1 to retain the zonal component in \phi and d\phi/dt
kxz :???Used in the following expression, in the y velocity
vp0 = vp0*(vt0+vpp*(r-lr0)+yd0*sin(kxz*(r+0.5*lx-lr0)*2*pi/lx))
oml :Lower value of frequency used in the calculation of real frequency
omu :Upper value of frequency used in the calculation of real frequency
nom :No of points in Fourier transform while calculation real frequency
delom :
=================================================
nplot :The interval in time steps, at which the data are stored for contour plots and other
post-processing stuff
XNPLT :The interval in time steps at which spec and dchi called to calculate potentials,
weight, fluxes and other stuff
modem :Used in outd.f for hist.out. The maximum no of mode history plots
npzh
nenh
dtref
islow
mynf :Nfreq=kmx*mynf no of points in in Fourier transform
frmax :Maximum range of frequency
ifskp :Used in yveck1 and ftcamp, nsize=nm/ifskp
=================================================
cut :Used in restart, redefines weight as weight/cut
however in initialize, cut redefined if (cut.eq.0.) cut=1
always 1 in gem.in
amp(0.01) :Amplitude of initial weight defined in loading (loadi and ldel)
:Always set 0.01 in gem.in
:Automatically set to 0 when iget=1, that is restarting
tor :Always set 1 in gem.in.
:???exact role is not understood, whether to take toroidal effect in to account or not
ishift :No longer used
fradi :Adiabatic fraction of electrons; set equal to isg the split weight factor in the subroutine
init
kxcut :Cut off value for kx
kxcut :Cut off value for ky
bcut :Cut off value for aruguments of Bessel function
=always set to 3000 in gem.in
epspx
epspz
etaohm
=================================================
br0 :Set equal to rmaj0
lr0 :r0/a; center of the radial domain
q0 :No longer used
qp :No longer used
width :No longer used
vpp :No longer used
vt0 :No longer used
yd0 :No longer used
vp0 = vp0*(vt0+vpp*(r-lr0)+yd0*sin(kxz*(r+0.5*lx-lr0)*2*pi/lx))
=================================================
c1 :coefficients to define q profile, also defined in equil.f90 as parameter
c2 :coefficients to define q profile, also defined in equil.f90 as parameter
c3 :Not used
c4 :Always 2 defined in gem.in, the power in the Gaussian filter that is epx(-b2^c4)
ifluid :Always 1, invokes kinetic electron
isg :Split weigh factor, almost always 0.1
amie :Proton to electron mass ratio
rneu :Electron ion collision frequency
gamion
gambm
gamdne
gamphi
gamapa
gamte
=================================================
vexbsw :Switch for equilibrium EXB shear
=1, takes in to account the effect of EXB shear
with EXB shear, the boundary condition is always fixed
=0, ignores EXB shear.
vparsw :Switch for equilibrium parallel flow
=================================================
beta :ELECTRON beta
nonlin :Switch for ion nonlinear terms
=0 for linear runs
=1 for nonlinear runs
nonline :Switch for electron nonlinear terms
=0 for linear runs
=1 for nonlinear runs
nonlinh
ipara :Switch to take in to parallel non-linearity(??)
=0 to exclude
=1 to include
iparah :Switch to take in to parallel non-linearity(??) for hot ions
=0 to exclude
=1 to include
nonlint :Switch for tracer(?) ion nonlinear terms
=0 for linear runs
=1 for nonlinear runs
iparat ::Switch to take in to parallel non-linearity(??) for tracer(?) ions
=0 to exclude
=1 to include
vwidth :Used for uniform loading; No longer used
vwidthe :Used for uniform loading; No longer used
vcut :Always 4 in gem.in
used to reset electron weight when v_||/vthe>vcut, wght=0
used in subroutines grid1, jie, jpar0, and in setw
isuni :0 always. Used earlier for uniform loading (??)
idg :0 always, =1, writes various component to the output file run.out
=================================================
mm :Total no of marker particles per species
tets :Ratio of electron temperature to impurity temperature
mims :Ratio of ion mass to impurity mass
q : Charge of ion
lr :Is the number of points for gyro averaging.
=4 always in gem.in
=================================================
kappan 0.0022
kappat 0.0069
kapt
=================================================
talpha :
betah :
lh :
delth :
vc :
vi :
vmin
iflr :Always 1.
To include the finite Larmor radius effect of the ions; used in ppush, cpush, grid1, jie
iorb :Always 1.
To include finite orbit width term (??). Multiplied to the magnetic drift terms
in ppush an cpush
iflrh
=================================================