gray/doc/man/gray.ini.5.md

313 lines
7.9 KiB
Markdown
Raw Normal View History

2024-02-08 17:37:17 +01:00
---
title: GRAY.INI
section: 5
---
# NAME
gray.ini --- Configuration file for **gray**(1)
# CONFIGURATION
The configuration file is written in the INI format. The basic syntax
is:
[group]
; comment
parameter = value
Group is one of: *raytracing*, *ecrh_cd*, *antenna*, *equilibrium*,
*profiles*, *misc*.
Values are valid Fortran values, including numbers (integers or floating
points), strings (enclosed in quotes), booleans (*.true.*, *.false.*)
and named constants (e.g. *MODE_X*).
# PARAMETERS
Valid configuration parameters listed by group
Note: parameters with a default value are optional and can be omitted.
## raytracing
Raytracing parameters
**nrayr**
: Number of rays in the radial direction
**nrayth**
: Number of rays in the angular direction
**rwmax** (default: **1.0**)
: Normalized maximum radius of the beam power
**igrad** (default: **0**)
: Switch between simple raytracing (*0*) and beamtracing (*1*)
**ipass** (default: **1**)
: Max number of crossing (out, in, out) of the plasma. When positive
reflections occur on the plasma limiter provided by the G-EQDSK
file; when negative on a simple limiter at R=*rwall*, see below.
**ipol** (default: **.false.**)
: Whether to compute the wave polarisation from chi, psi (see below)
**dst**
: Step size (cm) for the numerical integration
**nstep** (default: **12000**)
: Max number of integration steps
**idst** (default: **STEP_TIME**)
: Choice of the integration variable. One of:
- *STEP_ARCLEN*, arc length (s)
- *STEP_TIME*, time (actually c⋅t)
- *STEP_PHASE*, phase (actually the real part of the eikonal S_r=k₀⋅φ)
## ecrh_cd
ECRH and current drive parameters
**iwarm** (default: **ABSORP_FULL**)
: Choice of the power absorption model. One of:
- *ABSORP_OFF*, no absorption at all
- *ABSORP_WEAK*, weakly relativistic
- *ABSORP_FULL*, fully relativistic (faster variant)
- *ABSORP_FULL_ALT*, fully relativistic (slower variant)
Note: *iwarm /= ABSORP_OFF* is required for current drive.
**ilarm** (default: **5**)
: Order of the electron Larmor radius expansion (used by some
absorption models)
**imx** (default: **-20**)
: Max number of iterations for the solution of the dispersion relation
(used by some absorption models)
Note: if negative the result of the first iteration will be used in case
the result doesn\'t converge within \|imx\| iterations.
**ieccd** (default: **CD_NEOCLASSIC**)
: Current drive model. One of:
- *CD_OFF*, no current drive at all
- *CD_COHEN*, Cohen
- *CD_NO_TRAP*, no trapping
- *CD_NEOCLASSIC*, Neoclassical
## antenna
Antenna/beam launcher parameters
**alpha**
2024-05-16 17:31:37 +02:00
: Poloidal launch angle (deg). Positive is down
2024-02-08 17:37:17 +01:00
**beta**
: Toroidal launch angle (deg). Positive is right
**power** (default: **1.0**)
: Injected power (MW)
**iox**
: Polarisation mode. One of:
- *MODE_O*, ordinary (O)
- *MODE_X*, extraordinary (X)
2024-05-16 17:31:37 +02:00
**psi** (default: **0.0**)
: ψ (deg), angle between the principal axes of the polarisation
2024-02-08 17:37:17 +01:00
ellipse and the (x,y) axes
Note: only used in alternative to *iox* if *ipol=.true.*.
2024-05-16 17:31:37 +02:00
**chi** (default: **0.0**)
: χ=atan(ε) (deg), where ε is the ellipticity of the polarisation
2024-02-08 17:37:17 +01:00
ellipse
Note: only used in alternative to *iox* if *ipol=.true.*.
**ibeam** (default: **BEAM_0D**)
: Beam parameters file format. One of:
- *BEAM_0D*, fixed beam parameters
- *BEAM_1D*, 1D steering angle table
- *BEAM_2D*, 2D steering angles table
**filenm**
: Filepath of the beam data (relative to the gray.ini file)
## equilibrium
MHD equilibrium parameters
**iequil** (default: **EQ_EQDSK_FULL**)
: MHD equilibrium kind. One of:
- *EQ_VACUUM*, vacuum (i.e. no plasma at all)
- *EQ_ANALYTICAL*, analytical model
- *EQ_EQDSK_FULL*, G-EQDSK format - data valid on the whole domain
- *EQ_EQDSK_PARTIAL*, G-EQDSK format - data valid only inside the LCFS
**filenm**
: Filepath of the equilibrium data (relative to the gray.ini file)
**icocos** (default: **3**)
: COCOS index of the equilibrium data (G-EQDSK only)
**ipsinorm** (default: **.false.**)
: Whether the poloidal function is normalised (G-EQDSK only)
Note: Normalised means ψ(axis)=0, ψ(boundary)=1
**idesc** (default: **.true.**)
: Whether the header starts with a description, a.k.a
identification string (G-EQDSK only)
**ifreefmt** (default: **.false.**)
: Whether the records have variable length (G-EQDSK only)
Note: some non-compliant programs output numbers formatted with variable
length instead of using the single (5e16.9) specifier.
**ixp** (default: **X_IS_MISSING**)
: Position of the X point. One of:
- *X_IS_MISSING*, No X point
- *X_AT_TOP*, At the top of the plasma
- *X_AT_BOTTOM*, At the bottom of the plasma
**ssplps** (default: **0.005**)
: Tension for the ψ_n(R,Z) spline, normalised poloidal flux
Note: 0 means perfect interpolation
**ssplf** (default: **0.01**)
: Tension for the F(ψ)=R⋅B_T spline, poloidal current function
Note: 0 means perfect interpolation
**sgnb** (default: **0**)
: Force the sign of the toroidal field. One of:
- *+1*, counter-clockwise (viewed from above)
- *-1*, clockwise
- *0*, use sign from COCOS
**sgni** (default: **0**)
: Force the sign of the plasma current. One of: *+1*,
- *+1*, counter-clockwise (viewed from above)
- *-1*, clockwise
- *0*, use sign from COCOS
**factb** (default: **1.0**)
: Rescaling factor for the magnetic field
## profiles
(input) plasma profiles parameters
**iprof**
: Plasma profiles kind. One of:
- *PROF_ANALYTIC*, analytical model
- *PROF_NUMERIC*, numerical data (ρ, n_e, T_e, table)
**irho**
: Plasma profiles radial coordinate. One of:
- *RHO_TOR*, ρ_t = √Φ (where Φ is the normalised toroidal flux)
- *RHO_POL*, ρ_p = √ψ (where ψ is the normalised poloidal flux)
- *RHO_PSI*, normalised poloidal flux ψ
**filenm**
: Filepath of the plasma profiles data (relative to the gray.ini file)
**sspld** (default: **0.1**)
: Tension of the electron density spline
Note: 0 means perfect interpolation
**factte** (default: **1.0**)
: Rescaling factor for the electron temperature factte = 1
**factne** (default: **1.0**)
: Rescaling factor for the density temperature
**iscal** (default: **SCALE_OFF**)
: Choice of model for rescaling the temperature, density with the
magnetic field (if factb ≠ 0 only). One of:
- *SCALE_OFF*, don't rescale at all
- *SCALE_COLLISION*, scale while preserving collisionality
- *SCALE_GREENWALD*, scale while preserving the Greenwald fraction
## output
Output data parameters
2024-05-16 17:31:37 +02:00
**ipec** (default: **RHO_TOR**)
2024-02-08 17:37:17 +01:00
: ECRH&CD profiles grid: Radial coordinate of the uniform grid.
One of:
- *RHO_TOR*, ρ_t = √Φ (where Φ is the normalised toroidal flux)
- *RHO_POL*, ρ_p = √ψ (where ψ is the normalised poloidal flux)
**nrho** (default: **501**)
: Number of in the radial grid
**istpr** (default: **5**)
: Subsampling factors for the beam cross section (units 8, 12)
**istpl** (default: **5**)
: Subsampling factors for the outer rays data (unit 33)
## misc
Other parameters
**rwall**
: Radius of the inner wall (m). Used to build a simple limiter for
reflections (only when *ipass\<0*)
# EXAMPLE
Below is an example of a gray.ini file
[raytracing]
; beamtracing with 16×24 rays
nrayr = 16
nrayth = 24
igrad = 1
; integrate in the phase
dst = 0.05
nstep = 2400
idst = STEP_PHASE
[antenna]
; vertical launch
alpha = 89.45
beta = 0.0
iox = MODE_X
ibeam = BEAM_1D
filenm = "beamdata.txt"
[equilibrium]
filenm = "equilibrium.eqdsk"
icocos = 2
[profiles]
; analytical profiles
iprof = PROF_ANALYTIC
irho = RHO_TOR
filenm = "profiles.txt"
sspld = 0.01
[output]
ipec = RHO_POL
nrho = 1001
[misc]
rwall = 0.6
# SEE ALSO
**gray**(1), **beamdata.txt**(5), **profiles.txt**(5), **magneticdata.txt**(5)