# This test runs a nonlinear ITG turbulence calculation using a circular Miller geometry with Cyclone-base-case-like parameters.
# This test uses a Boltzmann adiabatic electron response.
debug = false
[Dimensions]
ntheta = 24 # number of points along field line (theta) per 2pi segment
nperiod = 1 # number of 2pi segments along field line is 2*nperiod-1
ny = 64 # number of real-space grid-points in y
nx = 192 # number of real-space grid-points in x
nhermite = 8 # number of hermite moments (v_parallel resolution)
nlaguerre = 4 # number of laguerre moments (mu B resolution)
nspecies = 1 # number of evolved kinetic species (adiabatic electrons don't count towards nspecies)
[Domain]
y0 = 28.2 # controls box length in y (in units of rho_ref) and minimum ky, so that ky_min*rho_ref = 1/y0
boundary = "linked" # use twist-shift boundary conditions along field line
[Physics]
beta = 0.0 # reference normalized pressure, beta = n_ref T_ref / ( B_ref^2 / (8 pi))
nonlinear_mode = true # this is a nonlinear calculation
[Time]
dt = 0.02 # timestep size (in units of L_ref/vt_ref)
nstep = 20000 # number of timesteps
scheme = "sspx3" # use SSPx3 timestepping scheme
[Initialization]
ikpar_init = 0 # parallel wavenumber of initial perturbation
init_field = "density" # initial condition set in density
init_amp = 1.0e-3 # amplitude of initial condition
[Geometry]
igeo = 1 # use Miller geometry, and read geometry coefficients from "eik"-style text file
geofile = "cyclone_miller.eik.out" # name of geometry file
rhoc = 0.5 # flux surface label, r/a
Rmaj = 2.77778 # major radius of center of flux surface, normalized to L_ref
R_geo = 2.77778 # major radius of magnetic field reference point, normalized to L_ref (i.e. B_t(R_geo) = B_ref)
qinp = 1.4 # safety factor
shat = 0.8 # magnetic shear
shift = 0.0 # shafranov shift
akappa = 1.0 # elongation of flux surface
akappri = 0.0 # radial gradient of elongation
tri = 0.0 # triangularity of flux surface
tripri = 0.0 # radial gradient of triangularity
betaprim = 0.0 # radial gradient of beta
# it is okay to have extra species data here; only the first nspecies elements of each item are used
[species]
z = [ 1.0, -1.0 ] # charge (normalized to Z_ref)
mass = [ 1.0, 2.7e-4 ] # mass (normalized to m_ref)
dens = [ 1.0, 1.0 ] # density (normalized to dens_ref)
temp = [ 1.0, 1.0 ] # temperature (normalized to T_ref)
tprim = [ 2.49, 0.0 ] # temperature gradient, L_ref/L_T
fprim = [ 0.8, 0.0 ] # density gradient, L_ref/L_n
vnewk = [ 0.0, 0.0 ] # collision frequency
type = [ "ion", "electron" ] # species type
[Boltzmann]
add_Boltzmann_species = true # use a Boltzmann species
Boltzmann_type = "electrons" # the Boltzmann species will be electrons
tau_fac = 1.0 # temperature ratio, T_i/T_e
[Dissipation]
closure_model = "none" # no closure assumptions (just truncation)
hypercollisions = true # use hypercollision model
nu_hyper_m = 0.5 # coefficient of hermite hypercollisions
p_hyper_m = 6 # power of hermite hypercollisions
nu_hyper_l = 0.5 # coefficient of laguerre hypercollisions
p_hyper_l = 6 # power of laguerre hypercollisions
hyper = true # use hyperviscosity
D_hyper = 0.05 # coefficient of hyperviscosity
nu_hyper = 2 # power of hyperviscosity
[Restart]
restart = false
save_for_restart = true
[Diagnostics]
nwrite = 100 # write diagnostics every 100 timesteps
fluxes = true # compute and write heat and particle fluxes
[Wspectra] # spectra of W = |G_lm|**2
species = false
hermite = false
laguerre = false
hermite_laguerre = true # W(l,m) (summed over kx, ky, z)
kx = false
ky = true # W(ky) (summed over kx, z, l, m)
kxky = false
z = false
[Pspectra] # spectra of P = ( 1 - Gamma_0(b_s) ) |Phi|**2
species = false
kx = false
ky = true # P(ky) (summed over kx, z)
kxky = false
z = true # P(z) (summed over kx, ky)