ORB5  v4.9.4
Input list

List of inputs with their descriptions and default values.

Note
This page was automatically generated by script generate_dox.py parsing src/readinput.F90.

Namelist /BASIC/

Parameter Type Description Default value
job_time Real Time (in seconds) during which the simulation is run. The simulation is normally stopped when the first of job_time or nrun is reached. 3600.
extra_time Real Extra time (in seconds) given to ORB5 to conclude the run (write the output, restart files, etc). The simulation is stopped at job_time-extra_time. 200.
rfsavetime Real The code will save intermediate restart files each rfsavetime (in seconds). The intermediate restart files are stored in dat0 and dat1 alternatively to avoid data corruption. 3600.
nrun Integer Number of time steps to be run during the simulation 10
dt Real Time step normalized to the ion gyro frequency, \(\Omega_i\) 10.
nl_res Logical TRUE if the run is a restart, FALSE if it is a new run. Note that to make a restart, you need the restart files, i.e. nl_save has to be set to TRUE for the previous simulation. false
nl_save Logical If set to TRUE, ORB5 will create restart files and if set to FALSE, it won''t. true
nsel_equil Selector Flag for equilibrium
  • 'MHD': MHD equilibrium
  • 'adhoc': Ad-hoc equilibrium
'MHD'
nl_asym_equil Logical Use up/down asymmetry of equilibrium (affects in particular bcpart) false
nl_island Logical Use magnetic island structure false
record_path String Path for restart files './dat'
nl_linear Logical Flag for linear run false
s_push Real s <= s_push: pushing in (ksi,eta). s > s_push : pushing in (s,theta star) 0.1
nl_beta Logical Use electron beta input value false
nsel_quasineutral Selector Modify background densities to impose quasi-neutrality
  • 'free': No constraints
  • 'set_ne': \(n_e = \sum Z_i * n_i\)
  • 'set_n1': \(n_1 = (n_e - \sum_{i/=1} (Z_i * n_i))/Z_1\)
  • 'set_nl': \(n_L = (n_e - \sum_{i/=L} (Z_L * n_L))/Z_1\)
'free'
nl_load_fields Logical Flag for loading phi, apar false
nl_save_fields Logical Restart for saving phi, apar false
nl_freeze Logical Flag for frozen field simulation false
nl_verbose Logical If set to TRUE, ORB5 will be verbose in the standard output. false
nl_electron_positron_plasma Logical Electron positron plasma false
nsel_time_integrator Selector Time integrator
  • 'rk4': Runge-Kutta of fourth order
  • 'gl4': Gauss-Legendre symplectic integrator (requires full-f)
'rk4'
navg_max Integer Maximum number of points for gyro-average 32
nl_read_nTequil Logical Flag for reading the n,T profiles from the ogyropsi file (ongoing work) false
nTequil_flat Real To flatten the gradients after (typical value 0.85) 0.85
nspecies Integer Number of species 3
nl_test_ami Logical Perform A. Mishchenko''s tests false
nsel_normalize_density Selector Choose how density profiles are normalized
  • 'annular': Density averaged over annulus
  • 'full': Density averaged over full torus
  • 'free': No constraints
  • 'tae': Special case for TAE
'annular'
physics_time_limit Real Time simulated (in units of \omega_ci) at which the simulation should terminate -1.
nsel_electron_values Selector Choose how to construct electron profile values
  • 'orb5': Traditional construction
  • 'lx_n': Uses lx for Te and n_speak for n
  • 'lx_beta': Uses lx for Te and beta_speak for n
  • 'T_n': Uses T_speak for Te and n_speak for n
  • 'T_beta': Uses T_speak for Te and beta_speak for n
'orb5'
nsel_ion_values Selector Choose how to construct ion profile values
  • 'orb5': Traditional construction
  • 'tau_fpart': Uses tau for T and f_part for n
  • 'tau_n': Uses tau for T and n_speak for n
  • 'T_n': Uses T_speak for T and n_speak for n
  • 'T_fpart': Uses T_speak for T and f_part for n
'orb5'
natts_iter Integer Number of larmor_pts attributes buffers (default 1) 1
nl_read_hdf5_checkpoint Logical Whether to read checkpoint in hdf5 format false
nl_write_hdf5_checkpoint Logical Whether to write checkpoint in hdf5 format false
nl_read_write_checkpoint_and_exit Logical Whether to read/write checkpoint and then immediately exit false

Namelist /EQUIL/

Parameter Type Description Default value
lx Real Horizontal size of plasma in Larmor units: 2/(rho^*) 80.
fname String Equilibrium file 'ogyropsi.h5'
nequ_r Integer Number of grid points in R 360
nequ_z Integer Number of grid points in Z 360
nequ_s Integer Number of grid points in S 60
nequ_c Integer Number of grid points in CHI 60
zrmag Real R magnetic axis [m] 1.0
zzmag Real Z magnetic axis [m] 0.0
r0_mid Real R0 center of plasma 1.0
a_mid Real minor radius [m] 0.2
btor0 Real B0 Magnetic field on axis [T] 1.0
q0 Real q bar at center if nsel_q_profile == quadratic 1.7527
qedge Real q bar at edge if nsel_q_profile == quadratic 3.78
nsel_q_profile Selector q bar profile type
  • 'interp': interpolated profile in $WKDIR/profiles/
  • 'quadratic': q0+(qedge-q0)*s^2
  • 'qcoef': Polynomial: Sum_{i=1..15} qcoef(i)*s^{i-1}
'interp'
qcoef Real array q bar polynomial coefficients 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0
beta Real beta value if nl_beta 0.0
L_Debye Real Debye Length (no effect in the code) 0.0
nl_itm_loadequil Logical Use ITM CPO for equilibrium false
itm_run Integer ITM run number 1
itm_shot Integer ITM shot number 1
prof_file String Profile file if nsel_profile==NSEL_INTERP_TRANSP 'profiles.h5'
nl_chease_norm Logical Remove extra factor of 2pi in PSI (and derived quantities) from CHEASE equilbrium in fname false
nl_ubulk Logical Include equilibrium current false

Namelist /FIELDS/

Parameter Type Description Default value
ns Integer Number of grid intervals in the radial direction 64
nchi Integer Number of grid intervals in the poloidal direction 128
nphi Integer Number of grid intervals in the toroidal direction 64
nidbas Integer Order of splines 3
mfilt1 Integer Smallest poloidal mode number if nsel_filter is mn or mn_only_full -2000
mfilt2 Integer Largest poloidal mode number if nsel_filter is mn or mn_only_full 2000
nfilt1 Integer Smallest toroidal mode number 0
nfilt2 Integer Largest toroidal mode number 8
filtvaln Integer array n modes if nsel_filter==n, and safety factor as first element if nsel_noise_filter==anti_aligned 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
filtdim Integer Number of modes in filtvaln if nsel_filter==n 2
nsel_filter Selector Toroidal Fourier filter type
  • 'n': Select toroidal modes in filtvaln and in [nfilt1,nfilt2]
  • 'mn': Keep modes (m,n) for n in [nfilt1..nfilt2] if abs(m-nint(q(s)*n)) <= deltam and m is also in [mfilt1..mfilt2]
  • 'mn_n0m0': Same as "mn" but keeps only m=0 for n=0
  • 'mn_only_full': Same as mn, but requires that the entire m-band of n*q(s) +/- deltam must be in [mfilt1..mfilt2] at a certain radius for any m to be retained at that radius for a given n
  • 'saw': Special filter for SAW/GAM nonlinearity, see filt_saw
'n'
nsel_inner_bc Selector Fields inner boundary condition
  • 'none': No inner boundary condition
  • 'Dirichlet': Dirichlet inner boundary condition
  • 'unicity': Unicity inner boundary condition
'none'
sfmin Real Radial domain lower boundary 0.0
sfmax Real Radial domain upper boundary 1.0
n_flux_tube Integer Flux tube-like filtering (keep only toroidal modes multiple of n_flux_tube) 1
nblocks Integer Number of radial blocks for serialization of Fourier transforms 1
deltam Integer Halfwidth of density field-aligned filter \(\Delta m\) 5
kthrhomax Real Allows to filter poloidal modes with kthrho>kthrhomax (0 = deactivated) 0.0
nsel_noise_filter Selector Noise filter type
  • 'shifted': Select non-resonant modes satisfying \(\vert m - n*q - 3\Delta m\vert < \Delta m\) or \(\vert m - n*q + 3\Delta m\vert < \Delta m\)
  • 'anti_aligned': Select non-resonant modes satisfying \(\vert m - n * filtvaln(1)\vert < \Delta m\)
'shifted'
background_efield_size Real Shearing rate (zero poloidal rotation at s=speak) 0.0
background_efield_const Real Rotation rate (zero shear profile) 0.0
filt_saw_n0 Integer Toroidal Fourier filter for three wave NL if nsel_filter==saw 0
filt_saw_n1 Integer Toroidal Fourier filter for three wave NL if nsel_filter==saw 0
filt_saw_n2 Integer Toroidal Fourier filter for three wave NL if nsel_filter==saw 0
filt_saw_n0m Integer array Poloidal Fourier filter for three wave NL if nsel_filter==saw 99999999, 99999999, 99999999, 99999999, 99999999, 99999999, 99999999, 99999999
filt_saw_n1m Integer array Poloidal Fourier filter for three wave NL if nsel_filter==saw 99999999, 99999999, 99999999, 99999999, 99999999, 99999999, 99999999, 99999999
filt_saw_n2m Integer array Poloidal Fourier filter for three wave NL if nsel_filter==saw 99999999, 99999999, 99999999, 99999999, 99999999, 99999999, 99999999, 99999999
flow_scale Real Scale factor for background flow in prof_file 1.0
background_efield_deltarho Real Additional width for background flow profile 0.0
background_efield_sreverse Real Shear reversal point -1.0
sreverse_smooth Real Width of background electric field shear reversal region 0.01
nsel_pot_profile Selector Background potential profile
  • 'off': No background potential
  • 'Ben': Ben''s profile - use background_efield_{size,const,deltarho,sreverse}
  • 'shear': Constant shear - use background_efield_size
  • 'prof_file': pot_back calculated from toroidal angular frequency in prof_file
  • 'ogyropsi': pot_back loaded from ogyropsi.h5
  • 'Jamie': Jamie''s profile - To be removed later
  • 'vprof': Same as ''Ben'' reading vprof from file
'off'
background_diamag_comp Integer Compensate for diamagnetic flow due to canonical momentum. 0
nsel_fix_fields Selector Fix fields to a constant for testing purposes
  • 'off': No fixed field
  • 's2': Impose phi(s,chi,phi)=1000*s^2
  • 'sin2_chi': Impose phi(s,chi,phi)=1000*sin(chi/2pi)^2
  • 'sin2_phi': Impose phi(s,chi,phi)=1000*sin(phi/2pi)^2
'off'
nsel_strong Selector Vary value of u_E^2 and component of u_E for testing purposes if species(1)nl_strong
  • 'expected': Expected background flow
  • 'ue2_s2': Set ue2 = 500.0*zs*zs
  • 'ue2_sin2_chi': Set ue2 = 50*(SIN(zchi/2))**2
  • 'ue2_s2_sin2_chi': Set ue2 = 50*zs*zs + 50*(SIN(zchi/2))**2
  • 'uephi_sin2_chi': Set ue_phi = 5000*zs**2*(SIN(zchi/2))**2
'expected'
nl_gradgyr Logical Take gradient of gyroaverage potential ( \(E=-\nabla<\phi>\)) instead of gyroaverage gradient of potential ( \(E=-<\nabla\phi>\)). It is consistent with Euler-Lagrange derivation and required for good momentum conservation, but computationally more expensive. false
nsel_setrho Selector Method to use for the charge deposition
  • 'by_particle': Outer loop on particles
  • 'by_cell': Outer loop on cells
  • 'by_color': Outer loop on tile colors
  • 'by_color_buf': Same as by_color, using cell buffers
'by_particle'
nsel_getfield Selector Method to use for the field evaluation
  • 'by_particle': Outer loop on particles
  • 'by_cell': Outer loop on cells
'by_particle'
stride_refresh_larmor Integer (0) refresh number of larmor points per particle every substep, (N) refresh at every N full steps 0
nl_neoclassical Logical Run in neoclassical limit false
nl_usenint Logical
nsel_dft_method Selector Method to use for the DFTs in the rhs and field creation
  • 'pptransp': Use the pptransp algorithm
  • 'local_dft': Use the local DFT algorithm
'pptransp'

Namelist /PARALLEL/

Parameter Type Description Default value
nclones Integer Number of MPI clones 1
nthreads Integer Number of OpenMP threads nthreads_default
nsel_ptransp Selector Parallel transpose method
  • 'without_clones': Do not use MPI clones
  • 'with_clones': Use MPI clones
'without_clones'

Namelist /SORTING/

Parameter Type Description Default value
nl_larmor_sort Logical Sort Larmor arrays for deposition and field evaluation false
nl_gc_sort Logical Sort guiding center arrays (part_att) for deposition and field evaluation. Predominates over nsel_sort_cache. false
nbin_s Integer Number of sorting bins in the s direction fields%ns
nbin_chi Integer Number of sorting bins in the chi direction fields%nchi
nbin_phi Integer Number of sorting bins in the phi direction fields%nphi
color_nbin_s Integer Number of grid cells to use in s for the charge deposition using the color scheme algorithm 1
color_nbin_chi Integer Number of grid cells to use in chi for the charge deposition using the color scheme algorithm 1

Namelist /SOLVER/

Parameter Type Description Default value
iquafor Integer Number of Gauss quad points per interval 4
deltam_mat Integer Halfwidth of matrix field-aligned filter 5
kappan_sh Real Shielding term 0.0
widths_sh Real Width of shielding profile 0.02
nsel_poisson Selector Poisson solver model
  • 'LWA': Long wavelength approximation
  • 'arbitrary': Arbitrary wavelength
  • 'Pade': Padé approximation
'LWA'
nsel_ampere Selector Ampere solver model
  • 'off': Do not solve Ampere (electrostatics)
  • 'EM_gyroapar': Electromagnetic <A//>
  • 'EM_apar': Electromagnetic A//
'off'
nsel_control_variate Selector Control variate scheme
  • 'off': No control variate
  • 'current': Split up the adiabatic response to A_par (electron skin term) in Ampere''s law.
'off'
control_variate_tolerance Real Control variate scheme tolerance 1.e-4
control_variate_niter Integer Number of iterations in control variate scheme 1
nsel_pullback Selector Pullback scheme
  • 'none': Usual cancellation
  • 'dA_dt_0': Pullback cancellation, \(\partial{A_\parallel^s}/\partial{t}=0\)
  • 'Ohm': Pullback cancellation, Ohm''s law (not done yet)
'none'
nsel_efluid Selector Efluid scheme
  • 'none': Fully gyrokinetic
  • 'mhd': MHD efluid model
  • 'debug': Debug efluid model
'none'
efluid_colls Real Efluid collisionality 0.0
nsel_bsplines_basis Selector B-splines basis at boundaries is fields
  • 'original': Original (cubic bounded)
  • 'DeBoor': New (cubic transformation based on De Boor algorithm)
'original'
nradbands Integer Number of radial bands in the matrix if nsel_poisson is arbitrary 5
nalpha Integer Number of gyropoints per arc of the lenght of a local ion Larmor radius if nsel_poisson is arbitrary and nl_auto_vspace is false 8
nw Integer Number of points in the vperp direction if nsel_poisson is arbitrary 8
wmax Real The integral over the vperp direction is done over the domain [0,wmax] if nsel_poisson is arbitrary 5.0
nqx Integer Number of quadrature points in the first (radial) direction if nsel_poisson is arbitrary 1
nqy Integer Number of quadrature points in the second (poloidal) direction if nsel_poisson is arbitrary 1
nl_auto_vspace Logical Auto discretization of the velocity phase-space if nsel_poisson is arbitrary true
nl_auto_radbands Logical Auto choice for the number of radial bands if nsel_poisson is arbitrary true
nl_auto_quadrature Logical Auto choice for the number of quadrature points as well as for the quadrature method (Gauss,equid) if nsel_poisson is arbitrary true
nsel_gradp Selector Approximation type for grad_perp in quasineutrality
  • 'grad_pol': grad_perp ~ grad_pol
  • 'grad_pol_corr': grad_perp ~ grad_pol + correction
'grad_pol'
nl_apar_den_corr Logical Enable A_par density correction false
nl_lin_pullback Logical Linearised pullback true

Namelist /DIAG/

Note
Input parameters of this section starting with nfreq_ are used to specify the frequency of the different diagnostics. If the frequency is \(f_D \), then the diagnostics will be executed every \(f_D \) time steps, or every \(f_D\cdot\Delta t \cdot n_{steps}\) in units of \(\Omega_{ci}^{-1}\).
Parameter Type Description Default value
nfreq_phipol Integer Frequency of fields diagnostics 100
sttime Real Start simulation time (ignored if restart run) 0.0
nfreq_spec Integer Frequency of energy spectrum diagnostics 5
s_spec Real Start simulation time 0.5
nfreq_dens Integer Frequency of 2D-binning density diagnostics 100
win_dens_l Real array Windows for 2D density diagnostics, start times 0.0, 1.0e18, 1.0e18
win_dens_r Real array Windows for 2D density diagnostics, stop times 1.0e18, 0.0, 0.0
thetabin_s Real s position for theta profiles 0.5
win_phipol_l Real array Windows for 2D phipol diagnostics, start times 0.0, 1.0e18, 1.0e18
win_phipol_r Real array Windows for 2D phipol diagnostics, stop times 1.0e18, 0.0, 0.0
nfreq_hdf5 Integer Frequency of hdf5 file save 10
nfreq_1D Integer Frequency of 1D profiles 1
nfreq_noise Integer Frequency of ions/electrons separate noise 100
nl_noise_2D Logical Flag for 2D noise diagnostics false
nbin_vel Integer Number of velocity bins 8
nbin_flux Integer Number of radial bins for flux diagnostics 64
nbin_theta2d Integer Number of poloidal bins for 2D profiles 64
svol_min Real Inner boundary for global fields diagnostics 0.0
svol_max Real Outer boundary for global fields diagnostics 1.0
nbin_sampling_psi Integer Number of radial bins for sampling diagnostics 64
nbin_sampling_v2 Integer Number of energy bins for sampling diagnostics 64
nfreq_3d Integer Frequency of 3D diagnostics 0
nl_strong_diag Logical Perform diagnostics for strong flow testing false
nfreq_testpart Integer Frequency of test particle output 10
nfreq_parmove Integer Frequency of parmove diagnostics 0
nfreq_sampling Integer Frequency of the sampling diagnostics 0
nfreq_phasespace Integer Frequency of the 3d phasespace diagnostics 0
nl_write_3d_moments Logical Whether to write the fluid moments if writing the 3D diagnostics true
nsel_3d_diag Selector Which type of 3D field diagnostic to use
  • 'real': Write 3D field arrays in real space
  • 'rhs_f': Write 3D potential in fourier
'real'
nsel_pszs Selector Phase space zonal structure diagnostics
  • 'off': Switched off
  • 'online': PSZS with 3D charge assignment and backsolve
  • 'offline': PSZS with 3D charge assignment, storing only b-spline coefs
'off'
nfreq_3d_multi_1 Integer How many n calls to 3D moments should include the density 5
nfreq_3d_multi_2 Integer How many n calls to 3D moments_density should include the moments 1
nfreq_3d_multi_real Integer How many n calls to 3D diags should include a real space diag 0
nfreq_source_3d Integer Frequency of 3d source diagnostics 0
nl_mpr Logical Flag for MPR diagnostic false
pszs_nke Integer number of grid points in energy 8
pszs_ntam Integer number of grid points in toroidal angolar momentum 8
pszs_nmu Integer number of grid points in mu 8
pszs_nidbas Integer order of b-splines 2
pszs_freq Integer Frequency of 3D diagnostics 1
nsel_pszs_type Selector PSZS options
  • 'f0': Use f0
  • 'w': Use w weight (delta f)
'f0'
nl_pszs_ke2u Logical Use v parallel false
nl_pszs_mu2vp Logical Use v perpendicular false
nl_pszs_mu2u Logical Use v parallel false
nl_pszs_tam2psi Logical Use psi false
nl_pszs_tam2s Logical Use s false

Namelist /ISLANDS/

Parameter Type Description Default value
m Integer Poloidal mode number for island elicity 2
n Integer Toroidal mode number for island elicity 1
psitilde Real Island amplitude, \(\tilde{\psi}\) 0.0
nl_helical_diag Logical Compute and save helical flux false
nsel_q_profile Selector Island safety factor if basicnsel_equil==adhoc
  • 'quadratic': equilq0 + (equilqedge-equilq0)*radius**2
  • 'interp': Interpolate from profile
'quadratic'
filt1 Integer Filter definition in phi 0
filt2 Integer Filter definition in phi 8

Namelist /DIAGNOSTICS/

Parameter Type Description Default value
counter_mom_freq Integer Stride for momentum diagnostic 100
counter_phi_freq Integer Stride for field diagnostic 100
nl_diagnoseOff Logical Turn off diagnostics true
nbLambdaSubgroup Integer array Number of lambda subgroups [Unable to parse], 1
dlambda_inv Real array Inverse of lambda bin size [Unable to parse], 1.
nbNRGSubgroup Integer array Number of energy subgroups [Unable to parse], 1
dNRG_inv Real array Inverse of energy bin size [Unable to parse], 1.
nl_split_vpar Logical Split v_// false

Namelist /ANTENNA/

Parameter Type Description Default value
nsel_type Selector Perturbation type
  • 'none': None
  • 'rho': Charge density
  • 'phi': Electrostatic potential
'none'
frequency Real Oscillation angular frequency, in \(\Omega_i\) units 0.
steady_coef Real Time independent coefficient of antenna''s amplitude 0.
oscil_coef Real Oscillatory coefficient of antenna''s amplitude 1.
m Integer array Poloidal mode numbers [Unable to parse], 0
n Integer array Toroidal mode numbers [Unable to parse], 0
amplitudes Real array Mode amplitudes [Unable to parse], 0.
phases Real array Mode phases [Unable to parse], 0.
nsel_profile Selector Radial profile shape
  • 'poly': Polynomial p(1)+p(2)*s+p(3)*s^2+p(4)*s^3+p(5)*s^4+p(6)*s^5+p(7)*s^6, where p=profile_poly_coef
  • 'sin': Sinusoidal shape: sin(k*s+phase)
  • 'gauss': Gaussian shape: exp(-((s-s0)/delta)^2)
  • 'interp': Interpolated from file profile_file
'poly'
profile_poly_coef Real array Radial profile polynomial coefficients if nsel_profile==poly 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0
profile_sin_ks Real Radial profile wave vector if nsel_profile==sin TWOPI
profile_sin_phase Real Radial profile phase if nsel_profile==sin 0.
profile_gauss_s0 Real Radial profile gaussian center if nsel_profile==gauss .5
profile_gauss_delta Real Radial profile gaussian width if nsel_profile==gauss .2
nl_filter_plasma_n Logical Filter out antennan(1) from plasma self-consistent potential false
profile_file String Name of the text file containing antenna''s radial profile if nsel_profile==interp, formatted as the number of points in the first line, then sorted s coordinate in the first column and profile values in the second column. 'antenna_profile'

Namelist /TYPE_SPECIES/

Parameter Type Description Default value
species_name String Name of the species 'unnamed'
is_electrons Logical Boolean to choose if the species is of electron type or not false
is_kinetic Logical Boolean for kinetic treatment of a species (t=kinetic, f=adiabatic) true

Namelist /ATTRIBUTES/

Parameter Type Description Default value
mass Real Mass(specie) / mass of the first species (which determines LX) merge
charge Real Charge(specie) / e merge
tau Real T(specie)/Te at s_0 1.0
n Real Volume averaged density (MKSA) 1.0e19
vpar Real Value of the parallel velocity at s=speak 0.0
pertw Real Initial df perturbation 1.0e-3
kappan0 Real Density gradient 0.0
speak Real s location of maximum gradient 0.5
kappat0 Real Temperature gradient 2.4
kappavp0 Real Parallel velocity gradient 0.0
rhov_core Real Transition between exponential and parabolic profiles position of \(\rho_{vol}\) if nsel_profile == NSEL_TYPE_10 0.3
rhov_ped Real Top of pedestal position of \(\rho_{vol}\) if nsel_profile == NSEL_TYPE_9 or NSEL_TYPE_10 0.8
rhov_edge Real Foot of pedestal position of \(\rho_{vol}\) if nsel_profile == NSEL_TYPE_9 or NSEL_TYPE_10 1.0
T0 Real Maximum value of T in the core if nsel_profile == NSEL_TYPE_9 20.0
T1 Real Value of T at rhov_edge if nsel_profile == NSEL_TYPE_9 1.0
mu_T Real \(\frac{1}{T1}\frac{dT}{d\rho}\) in the pedestal if nsel_profile == NSEL_TYPE_9 or NSEL_TYPE_10 0.0
N0 Real Maximum value of N in the core if nsel_profile == NSEL_TYPE_9 20.0
N1 Real Value of N at rhov_edge if nsel_profile == NSEL_TYPE_9 1.0
mu_N Real \(\frac{1}{N1}\frac{dN}{d\rho}\) in the pedestal if nsel_profile == NSEL_TYPE_9 or NSEL_TYPE_10 0.0
VP0 Real Maximum value of VP in the core if nsel_profile == NSEL_TYPE_9 20.0
VP1 Real Value of VP at rhov_edge if nsel_profile == NSEL_TYPE_9 1.0
mu_VP Real \(\frac{1}{VP1}\frac{dVP}{d\rho}\) in the pedestal if nsel_profile == NSEL_TYPE_9 or NSEL_TYPE_10 0.0
widths Real Width of gradient T and n profile 0.208
kapv Real Cut-off velocity used in v-loading 5.0
nptot Integer Total number of particles 2048
navg Integer Number of gyro-points if nsel_gyr==fixed, or scaling factor if nsel_gyr==adapt_navg 4
nsel_gyr Selector Gyro-averaging method
  • 'adapt': Adaptative number of gyro-points. It takes 4 gyropoints per ion sound Larmor radius. The minimum value is 4 and the maximum value is basicnavg_max
  • 'fixed': Fixed number of gyro-points given in input (navg)
  • 'dk': Drift-kinetic approximation (no gyro-averaging)
  • 'adapt_navg': Adaptative number of gyro-points. It takes pi*navg gyropoints per ion sound Larmor radius. The maximum value is basicnavg_max
'adapt'
nsel_tilt Selector Use a random tilt angle for the gyro-averaging
  • 'no': No tilt on gyroangle
  • 'random': Random tilt on gyroangle
'no'
nsel_init_pert Selector Initial density perturbation
  • 'noise': Uniform perturbation
  • 'mode_uncorrected': Gaussian distribution in m and n
  • 'mode': Gaussian distribution in m and n
  • 'mode_TAE': Gaussian distribution
  • 'mode_SAW': Gaussian distribution in m and n
  • 'd_cos': cos(chi) perturbation
  • 'd_sin': sin(chi) perturbation
  • 'rh_cos': Distribution for RH test, cosinus
  • 'rh_sin': Distribution for RH test, sinus
  • 'rh_sin_b': Distribution for RH test, sinus
  • 'tanh_sin': Distribution for GAMs, tanh(r)*sin(theta)
  • 'gene': Use mode_gene parameters
  • 'gene_vpll': Use mode_gene parameters, v_parallel dependent
  • 'potential': Initialize electrostatic potential
  • 'rh_vpll': v_parallel sinus distribution
  • 'coll_ii_1': Test collisions ion-ion 1
  • 'coll_ii_2': Test collisions ion-ion 2
  • 'coll_ii_3': Test collisions ion-ion 3
  • 'coll_ii_4': Test collisions ion-ion 4
  • 'singlepart': Single particle weight
  • 'ligka_l5': Ligka (mode 5) [under development]
  • 'ligka_l5_auto': auto-Ligka (mode 5) [under development]
  • 'gauss_list': List of gaussian perturbations
'noise'
mmin_ini Integer Lower boundary in m for pertcase=2 0
mmax_ini Integer Upper boundary in m for pertcase=2 0
nmin_ini Integer Lower boundary in n for pertcase=2 0
nmax_ini Integer Upper boundary in n for pertcase=2 0
s0_l Real Center of gaussian for loading 0.5
ds0_l Real Gaussian width for loading 0.2
fgau Real Fraction between gaussian and constant part of the pdf 0.0
nl_adiabatic_density Logical Compute adiabatic electron density using splines false
nsel_adiabatic_gyr Selector Gyro-averaging method for charge assignment in ne integration
  • 'adapt': Adaptative number of gyro-points. It takes 4 gyropoints per ion sound Larmor radius. The minimum value is 4 and the maximum value is basicnavg_max
  • 'fixed': Fixed number of gyro-points given in input (navg)
  • 'dk': Drift-kinetic approximation (no gyro-averaging)
  • 'adapt_navg': Adaptative number of gyro-points. It takes pi*navg gyropoints per ion sound Larmor radius. The maximum value is basicnavg_max
'adapt'
wdecay_rate Real Rate of weight decay (coefficient of Krook op.) 0.0
nsel_f0 Selector f0 distribution type
  • 'maxwellian': Maxwellian distribution
  • 'cdt': Claudio Di Troya (work in progress)
  • 'cdtn': Claudio Di Troya (work in progress)
  • 'bump_on_tail': Bump on tail
  • 'bump_on_tail_o': Bump on tail orb5
  • 'bump_on_tail_o_nochi': Bump on tail orb5 no chi dependence
  • 'bump_on_tail_g_bref': Bump on tail Gysela B_ref
  • 'slowing_down': Slowing down
  • 'slowing_down_pitch': Slowing down pitch
  • 'slowing_down_pitch_g_bref': Slowing down pitch Gysela B_ref
  • 'slowing_down_pitch_o': Slowing down pitch Orb5
  • 'slowing_down_pitch_o_nochi': Slowing down pitch Orb5
  • 'num_f0': Numerical f0
  • 'slowing_down_bump': Slowing down / bump on tail hybrid
'maxwellian'
cdt_alpha Real CDT profile parameter 1.0
cdt_Tw Real CDT profile parameter 1.0
cdt_w0 Real CDT profile parameter 1.0
cdt_pphi0 Real CDT profile parameter 1.0
cdt_deltapphi Real CDT profile parameter 1.0
cdt_lambda0 Real CDT profile parameter 1.0
cdt_deltalambda Real CDT profile parameter 1.0
cdt_w1 Real CDT profile parameter 1.0
cdt_normalize Real CDT profile parameter 0.0
nl_wdecay_conserve_density Logical Whether to correct source terms to conserve density false
f_part Real Dilution 1.0
nl_wdecay_conserve_zonal Logical Whether to correct Krook op. to conserve zonal flows by projecting out zonal-flow like components false
nl_wdecay_conserve_energy Logical Whether to correct source terms to conserve kinetic energy false
nl_wdecay_conserve_vpll Logical Whether to correct source terms to conserve parallel velocity false
bumpontail_vpar_fast Real Bump on tail profile parameter 4.0
bumpontail_tval_fast Real Bump on tail profile parameter 1.0
nl_wdecay_gyro_switch Logical Mimic GYRO source term false
wdecay_heatrate Real Decay rate for radially smoothed \(\delta f(energy,s)\) 0.0
wdecay_heat_s0 Real Right edge of core heating region 0.5
wdecay_heat_s1 Real Left edge of edge cooling region 0.5
kr_pert Real radial wavenumber of sin/cos perturbation in units of (1/a) 1.0
wdecay_edgefac Real Rate of weight decay at radii greater than wdecay_sedge 0.0
nsel_g_bref Selector gysela like bref value
  • 'B0': B0
  • 'BMIN': BMIN
  • 'BMAX': BMAX
'B0'
wdecay_sedge Real Left edge weight decay and right edge of heating interval 1.0
nsel_loadphi Selector Flag for phi loading
  • 'uniform': Uniform loading of phi \(\phi(i_p)=2\pi(i_p-1/2)/N_p \quad \forall i_p\in[1,N_p]\)
  • 'Hammersley': Hammersley loading of phi
'uniform'
cutoffvpa Real Cut-off parallel velocity for electrons pushing, normalized to kapve*v_the(s) 100.
pitch_fac Real Load electrons between pitch_fac*lambda and pi-pitch_fac*lambda 1.0
nsel_load_space Selector Loading in space if is_electrons
  • 'gaussian': Gaussian loading
  • 'alphab': Loading proportional to alpha_b(s,chi)
'gaussian'
nsel_load_v Selector Loading of particles in velocity
  • 'v2': Loading uniform in v^2
  • 'v3': Loading uniform in v^3
  • 'v2_T0': Loading uniform in v^2, discarding the local temperature
'v2'
nl_psi0corr Logical Flag for f0_can with correction false
nl_f0can Logical Canonical Maxwellian true
nl_no_vpar_nl Logical No vpar nonlinearity false
nl_mirror Logical Flag for mirror term in ion \(v_\parallel\) eq. of motion true
nl_addp Logical Add pressure terms true

| nl_addp2 | Logical | Add pressure term compensating missing B|| drive | false | | nl_addvpa | Logical | Add \(\epsilon_B^2\) term in \(dv_\parallel/dt\) | true | | nsel_push | Selector | Particle pushing method

  • 'full': Push particles on perturbed trajectories (0 or 4 in old convention)
  • 'no': Do not push particles and weights (1 in old convention)
  • 'unpert': Push on unperturbed trajectories (2 in old convention)
  • 'full_test': Push particles on perturbed trajectories, no weigth evolution, no deposition (5 in old convention)
  • 'unpert_test': Push particles on unperturbed trajectories, no weigth evolution, no deposition (3 in old convention)

| 'full' | | nsel_profile | Selector | Equilibrium profile

  • '1': f(s), equispaced in psi/psi_e
  • '2': f(rho/a), like LORB5
  • '22': f(rho^2/a^2), global vs local
  • '3': f(rho/a), CYCLONE benchmark, Bruce
  • '4': f(rho/a), CYCLONE benchmark, Seb
  • 'interp_ITM': interpolated experimental profile (ITM) -> 5 in old convention
  • 'interp_TRANSP': interpolated experimental profile (TRANSP), read from prof_file -> 6 in old convention
  • '7': f(s), flat gradient profile for MHD
  • '8': f(psi), Solovev equilibrium
  • '9': f(rho/a), exp profiles in core, linear pedestal profiles, constant in the SOL
  • '10': f(rho/a), parabolic profiles in the deep core, exp profiles in core, linear pedestal profiles, constant in the SOL

| '1' | | nsel_hybrid_model | Selector | Hybrid model

  • 'off': Do not use hybrid model
  • 'upgrade': Upgraded hybrid model based on Idomura2016
  • 'standard': Standard hybrid model (deposit only trapped particle charge)

| 'off' | | nl_wclean | Logical | Weight clean for Alfveen test | false | | nl_wclean_t0 | Logical | Weight clean at t=0 for Alfveen test | false | | nsel_testpart | Selector | Flag for fast test particles

  • 'off': Do not use test particles
  • 'read': Read test_part file for initial condition and overwrites particles on me_world=0
  • 'firsts': Just print out trajectories for first ntest particles

| 'off' | | nl_vpaback | Logical | Flag for standard ExB term in \(v_\parallel\) eq. of motion | false | | nl_vpaback_mod | Logical | Flag for modified ExB term in \(v_\parallel\) eq/ of motion | false | | nl_bgpot | Logical | Flag for background potential in f0 | false | | wdecay_ediffrate | Real | Rate of energy diffusion | 0.0 | | heating_nbins_r | Integer | Number of radial bins for heating | 64 | | heating_nbins_en | Integer | Number of energy bins for heating | 64 | | nl_randomload | Logical | Use pseudorandom rather than hammersley in velocity space | false | | randomize_seed | Integer | Seed for random toroidal scatter and noise rescaling | 64 | | heatdep_sigma | Real | Position of fixed heat source region | 0.4 | | heatdep_width | Real | Width of fixed heat source region | 0.1 | | nl_pure_toroidal_rotation | Logical | Initialise ion distribution consistent with the neoclassical solution in the presence of a radial electric field: toroidal rotation consistent with zero poloidal flow. | false | | wdecay_coarsefac | Real | Per step coarsening, first weight | 0.0 | | pdecay_coarsefac | Real | Per step coarsening, second weight | 0.0 | | coarsen_nsteps | Integer | Frequency of coarsening operations (timesteps). | 10 | | nbins_en | Integer | Number of bins in energy for coarse-graining | 64 | | nbins_lambda | Integer | Number of bins in pitch angle for coarse-graining | 64 | | nl_coarsen_pvol | Logical | Perform coarsening on phase space volumes. | true | | nl_2weights | Logical | Use 2 weights scheme | false | | nl_fixed_heat_source | Logical | Time-invariant fixed heat source | false | | part_output_num | Integer | max. no of markers for which ''marker quantities'' are output | 0 | | nl_modified_can_mom | Logical | Use modified corrected canonical momentum | false | | deltarho | Real | Half-window range for nsel_profile=NSEL_TYPE_4 | 0.4 | | rho_plateau_mid | Real | Window centre for nsel_profile=NSEL_TYPE_4 | 0.5 | | nsel_sort_cache | Selector | Guiding center sorting for cache optimization

  • 'off': Cache sort disabled
  • 'on': Cache sort enabled
  • 'light': **deprecated if favour of ''on'' option **
  • 'heavy': **deprecated if favour of ''on'' option **

| 'off' | | sort_freq | Integer | Cache sorting every sort_freq time steps | 1 | | nl_directdf | Logical | Use direct df scheme | false | | nl_df0_dt | Logical | Include dPsi/dt_0 term in weight evolution | false | | quadtree_par_frequency | Integer | Apply quadtree every N timesteps | 0 | | quadtree_par_numpart | Integer | Maximum number of particle per quadtree box | 20 | | quadtree_par_sigma | Real | Quadtree smoothing parameter | 0.1 | | quadtree_par_seq_clones | Logical | Quadtree: should clones be run sequentially | false | | init_potential_mmin_ini | Integer | Initial potential lower boundary in m | 0 | | init_potential_mmax_ini | Integer | Initial potential upper boundary in m | 12 | | init_potential_nmin_ini | Integer | Initial potential lower boundary in n | 6 | | init_potential_nmax_ini | Integer | Initial potential upper boundary in n | 6 | | init_potential_pertw | Real | Initial potential amplitude | 1.e-5 | | mode_saw_dtana | Real | Mode SAW parameter if nsel_init_pert==mode_SAW | 0.02 | | mode_saw_s | Real array | Mode SAW parameters if nsel_init_pert==mode_SAW | 0.37, 0.40, 0.60, 0.63 | | mode_gene_tilt | Real | For gene initialisation, tilt perturbation in s-phi plane | 0. | | mode_gene_width | Real | For gene initialisation, radial width of gaussian | 0.225 | | mode_gene_kyfac | Real | For gene initialisation, prefactor to the ky falloff | 1.0 | | mode_gene_angle_offset | Real | For gene initialisation, offset for the poloidal angle | 0.0 | | mode_gene_radial_option | Integer | For gene init., radial option (1: r/a=0.5; 2: (sfmax+sfmin)/2) | 1 | | wdecay_psourcerate | Real | Decay rate for particle source | 0.0 | | flow_force_rate | Real | Flow forcing rate | 0.0 | | nl_strong | Logical | Use strong flow | false | | nl_bst_str | Logical | Include B* strong flow terms | false | | nl_dens_corr | Logical | Density correction term in distribution | false | | umin_input | Real | Minimum parallel velocity | merge | | umax_input | Real | Maximum parallel velocity | merge | | mumax_input | Real | Maximum magnetic moment | merge | | nl_chargecorr | Logical | Use fluxes to evolve zonal density | false | | nl_BCout_zero_weight | Logical | Put w-weight of markers leaving the domain at the outer boundary to zero | true | | nsel_heatsource_radial | Selector | Where to read the heat source radial profile from

  • 'code': Use Bens implementation
  • 'file': Read from file

| 'code' | | heatsource_file | String | Path for heat source radial profile | 'heatsource_profile' | | heat_edge_lim | Real | Radial position after which the heat source stops heating | 1.0 | | mode_ligka_l5_n | Integer | For ligka l5 initialisation, toroidal mode number | 15 | | mode_ligka_l5_m | Integer | For ligka l5 initialisation, poloidal mode number | 15 | | mode_ligka_l5_m2 | Integer | For ligka l5 initialisation, poloidal mode number (upper limit) | -1 | | mode_ligka_l5_s | Real | For ligka l5 initialisation, radial mode position | 0.5 | | mode_ligka_l5_w | Real | For ligka l5 initialisation, radial mode width | 0.2 | | mode_ligka_l5_type | Integer | For ligka l5 initialisation, mode type | 1 | | mode_ligka_l5_odd | Integer | For ligka l5 initialisation, odd parity | 0 | | nsel_buffer_type | Selector | Type of outer buffer

  • 'none': No external buffer
  • 'naive_krook': Naive Krook external buffer
  • 'krook_cons': Krook external buffer with density conservation
  • 'collision': Collisional external buffer

| 'none' | | buffer_rate | Real | Buffer rate | 0.0 | | buffer_edge | Real | Buffer edge | 0.9 | | buffer_Nbin | Integer | Number of spatial bins for conserving Krook buffer | 20 | | atomic_mass_number | Real | atomic_mass_number (for isp=1) | 1.0 | | nl_dump_f0 | Logical | Output f0 in initialization | false | | nl_dump_derivs | Logical | Output derivatives of f0 in initialization (if dump_f0) | false | | npsi_dump_f0 | Integer | Number of points in psi for ump_f0 | 100 | | nu_dump_f0 | Integer | Number of points in v_// for dump_f0 | 129 | | nze_dump_f0 | Integer | Number of points in KE for dump_f0 | 129 | | nsel_fixed_source_type | Selector | Type of fixed source

  • 'basic': Basic fixed source term
  • 'ECRH': ECRH fixed source term

| 'basic' | | nsel_beam_type | Selector | Beam type for electron resonance

  • 'X': X-mode for the ECRH beam
  • 'O': O-mode for the ECRH beam

| 'X' | | nl_num_f0_divide_n | Logical | Whether numerical_f0 needs f divided by n | true | | slowingdown_birth_energy | Real | Slowing down profile parameter | 1.0 | | slowingdown_amid | Real | Middle radius | 1.0 | | slowingdown_B_on_axis | Real | Magnetic field on axis | 1.0 | | slowingdown_norm_option | Integer | Slowing down normalization choice | 1 | | slowingdown_initbump | Real | Slowing down: addition anisotropy in velocity space, amplitude | 0.0 | | slowingdown_xi_0 | Real | Anisotropic slowing down pitch | 0.0 | | slowingdown_sigma_xi | Real | Anisotropic slowing down pitch width | 0.1 | | slowingdown_delta_ze | Real | Anisotropic slowing delta ze | 1.e-6 | | nsel_vpar_constant_in_f0 | Selector | Set d(mu*B )/dt=0 for du/dt in rhs

  • 'off': dvpar0 kept
  • 'H0': dvpar as dH0/vpar
  • 'vpar1': dvpar as dvpar1
  • 'H0_corr': dvpar as dH0/vparv corrected to get dvpar1
  • 'vpar1_corr': dvpar as dvparv1 corrected to get dH0

| 'off' | | slowingdown_delta_psi | Real | Anisotropic slowing delta psi | 1.e-6 | | slowingdown_delta_chi | Real | Anisotropic slowing delta chi | 1.e-6 | | slowingdown_delta_u | Real | Anisotropic slowing delta u | 1.e-6 | | beam_freq | Real | Beam frequency [Hz] | 82700000000. | | beam_width | Real | Beam width [m] | 0.0188 | | beam_theta0 | Real | Mean beam angle theta_0 | 1.5708 | | beam_power_in | Real | Power of the ECRH beam at the entry of the plasma [W] | 0. | | beam_harmonic | Integer | Beam harmonic for electron resonance | 2 | | n_speak | Real | value of density in speak | 1.0 | | T_speak | Real | value of temperature in speak | 1.0 | | beta_speak | Real | value of beta in speak | 1.0 | | pszs_lb | Real array | Lower bounds of pszs dimensions (len=3), default=-9999. => take default) | -9999., -9999., -9999. | | pszs_ub | Real array | Upper bounds of pszs dimensions (len=3), default=-9999. => take default) | -9999., -9999., -9999. |

Namelist /COLLISIONS/

Parameter Type Description Default value
nu_ref Real Thermal self collision of a species with N = T = q = m = 1 (= first species at reference radial location) in this case, nu_ref = ln lambda /(2*pi*epsilon^2) 0.0
nsel_collisions Selector Choose the collision type
  • 'none': no collisions
  • 'self_linear': linear self collisions only
  • 'multispecies_linear': linear multi-species collisions
  • 'self_nonlinear': nonlinear self collisions only
  • 'multispecies_nonlinear': nonlinear multi-species collisions
'none'
ns_coll Integer s-grid for momentum and energy variation binning 64
nchi_coll Integer chi-grid for momentum and energy variation binning 64
N_slide_save Integer Number of time steps kept for time average of profiles 10