VMEC 8.52
3D Equilibrium solver with nested flux surfaces.
Loading...
Searching...
No Matches
vmec_params.f90
Go to the documentation of this file.
1
3
4 USE stel_kinds, ONLY: rprec, dp
5 USE vparams, ONLY: mpold
6
7 implicit none
8
9 INTEGER, PARAMETER :: meven = 0
10 INTEGER, PARAMETER :: modd = 1
11 INTEGER, PARAMETER :: ndamp = 10
12 INTEGER, PARAMETER :: ns4 = 25
13
14 INTEGER, PRIVATE :: ink ! 0,1, 2,3,...,mpold
15 INTEGER, PARAMETER, DIMENSION(0:mpold) :: jmin1 = (/ 1,1,(2,ink=2,mpold) /)
16 INTEGER, PARAMETER, DIMENSION(0:mpold) :: jmin2 = (/ 1,2,(2,ink=2,mpold) /)
17 INTEGER, PARAMETER, DIMENSION(0:mpold) :: jlam = (/ 2,2,(2,ink=2,mpold) /)
18
19 INTEGER, PARAMETER :: norm_term_flag = 0
20 INTEGER, PARAMETER :: bad_jacobian_flag = 1
21 ! 2 not used anymore?
22 ! 3: 'VMEC INDATA ERROR: NCURR.ne.1 but BLOAT.ne.1.'
23 INTEGER, PARAMETER :: jac75_flag = 4
24 INTEGER, PARAMETER :: input_error_flag = 5
25 ! 6 not used anymore?
26 INTEGER, PARAMETER :: phiedge_error_flag = 7
27 INTEGER, PARAMETER :: ns_error_flag = 8 ! 'NS ARRAY MUST NOT BE ALL ZEROES'
28 INTEGER, PARAMETER :: misc_error_flag = 9 ! (can happen in mgrid_mod)
29 ! 10: 'VAC-VMEC I_TOR MISMATCH : BOUNDARY MAY ENCLOSE EXT. COIL'
30 INTEGER, PARAMETER :: successful_term_flag = 11 ! ftol force criterion has been met
31
32 ! These denote(d) bits in the call to runvmec().
33 INTEGER, PARAMETER :: restart_flag = 1 ! (1 << 0)
34 INTEGER, PARAMETER :: readin_flag = 2 ! (1 << 1)
35 INTEGER, PARAMETER :: timestep_flag = 4 ! (1 << 2)
36 INTEGER, PARAMETER :: output_flag = 8 ! (1 << 3)
37 INTEGER, PARAMETER :: cleanup_flag = 16 ! (1 << 4)
38 INTEGER, PARAMETER :: reset_jacdt_flag = 32 ! (1 << 5)
39
40 REAL(rprec), PARAMETER :: pdamp = 0.05_dp
41 CHARACTER(LEN=*), PARAMETER :: version_ = '8.52'
42
43 INTEGER :: ntmax
44
45 INTEGER :: rcc
46 INTEGER :: rss
47 INTEGER :: rsc
48 INTEGER :: rcs
49 INTEGER :: zsc
50 INTEGER :: zcs
51 INTEGER :: zcc
52 INTEGER :: zss ! stacking indices for xc, gc, ...
53
54 INTEGER :: mnyq
55 INTEGER :: nnyq
56
57 INTEGER, ALLOCATABLE :: uminus(:)
58 REAL(rprec), ALLOCATABLE :: mscale(:)
60 REAL(rprec), ALLOCATABLE :: nscale(:)
61
62 REAL(rprec) :: signgs
63
64 REAL(rprec) :: lamscale=1
65
66 INTEGER, PARAMETER :: m0=0
67 INTEGER, PARAMETER :: m1=1
68 INTEGER, PARAMETER :: n0=0
69
70
71END MODULE vmec_params
integer, parameter dp
integer, parameter rprec
integer, parameter restart_flag
integer, parameter readin_flag
integer, parameter bad_jacobian_flag
integer, parameter jac75_flag
integer, parameter reset_jacdt_flag
integer, parameter cleanup_flag
integer, parameter phiedge_error_flag
integer, parameter n0
from totzsp
integer, dimension(0:mpold), parameter jmin2
starting js(m) values for which R,Z are evolved
integer, parameter timestep_flag
integer, dimension(0:mpold), parameter jlam
starting js(m) values for which Lambda is evolved
real(rprec) signgs
sign of Jacobian : must be =1 (right-handed) or =-1 (left-handed)
real(rprec), dimension(:), allocatable mscale
array for norming theta-trig functions (internal use only) so that the discrete SUM[cos(mu)*cos(m'u)]...
integer, parameter ns_error_flag
integer, dimension(:), allocatable uminus
integer, parameter successful_term_flag
real(rprec), parameter pdamp
integer, dimension(0:mpold), parameter jmin1
starting js(m) values where R,Z are non-zero
integer, parameter misc_error_flag
integer, parameter m1
from totzsp
integer, parameter input_error_flag
integer, parameter modd
parity selection label for odd poloidal modes of R and Z
integer, parameter ns4
integer, parameter output_flag
real(rprec) lamscale
integer, parameter m0
from totzsp
real(rprec), dimension(:), allocatable nscale
array for norming zeta -trig functions (internal use only)
character(len= *), parameter version_
integer ntmax
number of contributing Fourier basis function (can be 1, 2 or 4); assigned in read_indata()
integer, parameter norm_term_flag
integer, parameter meven
parity selection label for even poloidal modes of R and Z
integer, parameter ndamp
number of iterations over which damping is averaged
integer, parameter mpold
maximum number of poloidal harmonics (in r,z,lam fourier series)
Definition vparams.f90:13