State-of-the-art stellarator optimization code
The following table contains explanations for each variable in the input namelist used by VMEC. Not all values need be specified in a file. Examples can be found to guide the user in creating an input namelist for their application. The file containing the input namelist is a text file named input.run where ‘run’ is specified by the user and appended to all output files for a given run. The ‘Type’ column indicates the form of the data. Values denoted real(12,100) are reals defined by selected_real_kind(12,100), (12 point percision, and 100 point range). The ‘Size’ column indicates the size of the variable if it’s an array (denoted 1 if it’s just a scalar value).
Variable | Type | Size | Description |
---|---|---|---|
nfp | integer | 1 | Number of toroidal field periods |
ncurr | integer | 1 | Switch for using (0) flux conservation or (1) prescribed toroidal current |
nsin | integer | 1 | Deprecated parameters. |
niter | integer | 1 | Total number of iterations |
nstep | integer | 1 | Output interval to screen and threed1 file |
nvacskip | integer | 1 | Interval for full update of vacuum solutions |
mpol | integer | 1 | Poloidal Mode Number (m) |
ntor | integer | 1 | Toroidal Mode Number (n) |
ntheta | integer | 1 | Number of theta grid points (>=2*mpol+6) |
nzeta | integer | 1 | Number of planes (in zeta) on which mgrid data has been calculated. |
mfilter_fbdy | integer | 1 | |
nfilter_fbdy | integer | 1 | |
time_slice | real(12,100) | 1 | Time slice of equilibria (label) |
curtor | real(12,100) | 1 | Total toroidal curent. [A] |
delt | real(12,100) | 1 | Blending parameter |
ftol | real(12,100) | 1 | Residual tolerance. |
tcon0 | real(12,100) | 1 | Weight factor for constrained force. (defaults to 1.0 for values greater than 1.0) |
gamma | real(12,100) | 1 | Adiabatic index (compressional index) |
phiedge | real(12,100) | 1 | Total enclosed toroidal flux [Wb]. |
spres_ped | real(12,100) | 1 | Value (in s) beyond which pressure profile is flat. (pedestal) |
bloat | real(12,100) | 1 | Bloating factor for pressure and current profiles (bloats the domain not the value). |
pres_scale | real(12,100) | 1 | |
prec2d_threshold | real(12,100) | 1 | |
am | real(12,100) | 0:20 | Mass or Pressure (gamma=0) expansion coefficients |
ai | real(12,100) | 0:20 | Iota expansion coefficients |
ac | real(12,100) | 0:20 | Toroidal current density expansion coefficients |
aphi | real(12,100) | 0:20 | Deprecated parameters. |
ns_array | integer | 100 | Number of radial grid points for each grid iteration |
niter_array | integer | 100 | Maximum number of iterations for a given radial resolution |
ftol_array | real(12,100) | 100 | Array of residual values at which a given multigrid iteration ends. |
extcur | real(12,100) | 500 | Array of currents in each external group for free boundary run. |
raxis | real(12,100) | 0:61 | see raxis_cc |
zaxis | real(12,100) | 0:61 | see zaxis_cs |
raxis_cc | real(12,100) | 0:61 | Radial Fourier Cosine Coefficients of magnetic Axis (R=raxis_cc*cos(-n*zeta)) |
raxis_cs | real(12,100) | 0:61 | Radial Fourier Sine Coefficients of magnetic Axis (R=raxis_cs*sin(-n*zeta)) |
zaxis_cc | real(12,100) | 0:61 | Vertical Fourier Cosine Coefficients of magnetic Axis (Z=zaxis_cc*cos(-n*zeta)) |
zaxis_cs | real(12,100) | 0:61 | Vertical Fourier Sine Coefficients of magnetic Axis (Z=zaxis_cs*sin(-n*zeta)) |
rbc | real(12,100) | -61:61,0:60 | Boundary cosine coefficients for R= cos(m*theta-n*zeta) |
rbs | real(12,100) | -61:61,0:60 | Boundary sine coefficients for R |
zbc | real(12,100) | -61:61,0:60 | Boundary cosine coefficients for Z |
zbs | real(12,100) | -61:61,0:60 | Boundary sine coefficients for Z |
lfreeb | logical | 1 | Switch for free boundary run. |
lrecon | logical | 1 | Switch for reconstruction run. |
lmac | logcial | 1 | |
loldout | logical | 1 | Switch for old output format. This will produce a fort.8 file. |
ledge_dump | logical | 1 | Output edge values to ‘FORT.NEDGE0’. |
lspectrum_dump | logical | 1 | |
lasym | logical | 1 | Non-stellarator symmetric configuration (T) |
loptim | logical | 1 | Obsolete |
lforbal | logical | 1 | |
lrfp | logical | 1 | Switch for using poloidal flux as radial coordinate. |
mgrid_file | character | 100 | Vacuum Green’s Function Filename |
precon_type | character | 10 | Preconditioner type |
pcurr_type | character | 20 | Current Profile type |
piota_type | character | 20 | Iota Profile type |
pmass_type | character | 20 | Pressure (mass) profile type |
phidiam | real(12,100) | 1 | Diamagnetic toroidal flux [Wb]. |
psa | real(12,100) | 100 | |
pfa | real(12,100 | 100 | |
isa | real(12,100) | 100 | |
ifa | real(12,100) | 100 | |
sigma_current | real(12,100) | 1 | Standard deviation in toroidal current [A]. Standard deviations <0 are interpreted as percent of respective measurement. |
imatch_phiedge | integer | 1 | PHIEDGE switch: 0 use pressure profile, (1) match value, (2) use LIMPOS data (in mgrid), (3) use Ip (fixed boundary only) |
iopt_raxis | integer | 1 | |
tensi | real(12,100) | 1 | Spline tension for iota profile |
tensp | real(12,100) | 1 | Spline tension for pressure profile. |
mseangle_offset | real(12,100) | 1 | Uniform experimental offset of MSE data (calibration offset) |
imse | integer | 1 | Number of Motional Stark Effect (MSE) data points |
isnodes | integer | 1 | Number of iota spline points (computed internally unless specified explicitly) |
rstark | real(12,100) | 100 | |
datastark | real(12,100) | 100 | Pitch angle data from stark measurement |
sigma_stark | real(12,100) | 100 | Standard deviation in MSE data [degrees]. Standard deviations of <0 are interpreted as a percent of the respective measurement. |
itse | integer | 1 | Number of pressure profile data points. |
ipnodes | integer | 1 | Number of pressure spline points (computed internally unless specified explicitly) |
presfac | real(12,100) | 1 | Number by which Thomson scattering data is scaled to get actual pressure. |
pres_offset | real(12,100) | 1 | Uniform arbitrary radial offset of pressure data. |
rthom | real(12,100) | 100 | Radial coordinate Data for Thomson scattering. (lpofr=.true. then in real space, lpofr=.false. then in flux space) |
datathom | real(12,100) | 100 | Pressure data from Thomson scattering. |
sigma_thom | real(12,100) | 100 | Standard deviation for pressure profile data [Pa]. Standard deviations of <0 are interpreted as a percent of the respective measurement. |
sigma_delphid | real(12,100) | 1 | Standard deviation for pressure profile data [Wb]. Standard deviations of <0 are interpreted as a percent of the respective measurement. |
tensi2 | real(12,100) | 1 | vbl spline tension for iota |
fpolyi | real(12,100) | 1 | vbl spline tension form factor (note if tensi!=tensi2 then tension(ith point)=tensi+(tensi2-tensi)*(i/n-1)^fpolyi ) |
nflxs | integer | 1 | Number of flux loop measurements used in matching. |
indxflx | integer | 100 | Array giving index of flux measurement in iconnect array. |
dsiobt | real(12,100) | 100 | Measured flux loop signals corresponding to the combination of signals in iconnect array. |
sigma_flux | real(12,100) | 100 | Standard deviation for external poloidal flux data [Wb]. Standard deviations of <0 are interpreted as a percent of the respective measurement. |
nbfld | integer | 5 | Number of selected external bfield measurements used in matching. |
indxbfld | integer | 100,5 | Array giving index of bfield measurement used in matching |
bbc | real(12,100) | 100,5 | Measured magnetic field at rbcoil(m,n) zbcoil(m,n) at the orientation br*cos(abcoil) + bz*sin(abcoil) |
sigma_b | real(12,100) | 100,5 | Standard deviation for external magnetic field data [T]. Standard deviations of <0 are interpreted as a percent of the respective measurement. |
lpofr | logical | 1 | Switch for pressure data coordinates (.true. real space, .false. flux space) |