read_wout_mod Module



Variables

Type Visibility Attributes Name Initial
character(len=*), public, parameter :: vn_version = 'version_'
character(len=*), public, parameter :: vn_extension = 'input_extension'
character(len=*), public, parameter :: vn_mgrid = 'mgrid_file'
character(len=*), public, parameter :: vn_magen = 'wb'
character(len=*), public, parameter :: vn_therm = 'wp'
character(len=*), public, parameter :: vn_gam = 'gamma'
character(len=*), public, parameter :: vn_maxr = 'rmax_surf'
character(len=*), public, parameter :: vn_minr = 'rmin_surf'
character(len=*), public, parameter :: vn_maxz = 'zmax_surf'
character(len=*), public, parameter :: vn_fp = 'nfp'
character(len=*), public, parameter :: vn_radnod = 'ns'
character(len=*), public, parameter :: vn_polmod = 'mpol'
character(len=*), public, parameter :: vn_tormod = 'ntor'
character(len=*), public, parameter :: vn_maxmod = 'mnmax'
character(len=*), public, parameter :: vn_maxit = 'niter'
character(len=*), public, parameter :: vn_actit = 'itfsq'
character(len=*), public, parameter :: vn_asym = 'lasym'
character(len=*), public, parameter :: vn_recon = 'lrecon'
character(len=*), public, parameter :: vn_free = 'lfreeb'
character(len=*), public, parameter :: vn_error = 'ier_flag'
character(len=*), public, parameter :: vn_aspect = 'aspect'
character(len=*), public, parameter :: vn_rfp = 'lrfp'
character(len=*), public, parameter :: vn_maxmod_nyq = 'mnmax_nyq'
character(len=*), public, parameter :: vn_beta = 'betatotal'
character(len=*), public, parameter :: vn_pbeta = 'betapol'
character(len=*), public, parameter :: vn_tbeta = 'betator'
character(len=*), public, parameter :: vn_abeta = 'betaxis'
character(len=*), public, parameter :: vn_b0 = 'b0'
character(len=*), public, parameter :: vn_rbt0 = 'rbtor0'
character(len=*), public, parameter :: vn_rbt1 = 'rbtor'
character(len=*), public, parameter :: vn_sgs = 'signgs'
character(len=*), public, parameter :: vn_lar = 'IonLarmor'
character(len=*), public, parameter :: vn_modB = 'volavgB'
character(len=*), public, parameter :: vn_ctor = 'ctor'
character(len=*), public, parameter :: vn_amin = 'Aminor_p'
character(len=*), public, parameter :: vn_Rmaj = 'Rmajor_p'
character(len=*), public, parameter :: vn_vol = 'volume_p'
character(len=*), public, parameter :: vn_am = 'am'
character(len=*), public, parameter :: vn_ai = 'ai'
character(len=*), public, parameter :: vn_ac = 'ac'
character(len=*), public, parameter :: vn_ah = 'hot particle fraction'
character(len=*), public, parameter :: vn_atuname = 'T-perp/T-par'
character(len=*), public, parameter :: vn_pmass_type = 'pmass_type'
character(len=*), public, parameter :: vn_piota_type = 'piota_type'
character(len=*), public, parameter :: vn_pcurr_type = 'pcurr_type'
character(len=*), public, parameter :: vn_am_aux_s = 'am_aux_s'
character(len=*), public, parameter :: vn_am_aux_f = 'am_aux_f'
character(len=*), public, parameter :: vn_ai_aux_s = 'ai_aux_s'
character(len=*), public, parameter :: vn_ai_aux_f = 'ai_aux_f'
character(len=*), public, parameter :: vn_ac_aux_s = 'ac_aux_s'
character(len=*), public, parameter :: vn_ac_aux_f = 'ac_aux_f'
character(len=*), public, parameter :: vn_mse = 'imse'
character(len=*), public, parameter :: vn_thom = 'itse'
character(len=*), public, parameter :: vn_pmod = 'xm'
character(len=*), public, parameter :: vn_tmod = 'xn'
character(len=*), public, parameter :: vn_pmod_nyq = 'xm_nyq'
character(len=*), public, parameter :: vn_tmod_nyq = 'xn_nyq'
character(len=*), public, parameter :: vn_racc = 'raxis_cc'
character(len=*), public, parameter :: vn_zacs = 'zaxis_cs'
character(len=*), public, parameter :: vn_racs = 'raxis_cs'
character(len=*), public, parameter :: vn_zacc = 'zaxis_cc'
character(len=*), public, parameter :: vn_iotaf = 'iotaf'
character(len=*), public, parameter :: vn_qfact = 'q-factor'
character(len=*), public, parameter :: vn_chi = 'chi'
character(len=*), public, parameter :: vn_chipf = 'chipf'
character(len=*), public, parameter :: vn_presf = 'presf'
character(len=*), public, parameter :: vn_phi = 'phi'
character(len=*), public, parameter :: vn_phipf = 'phipf'
character(len=*), public, parameter :: vn_jcuru = 'jcuru'
character(len=*), public, parameter :: vn_jcurv = 'jcurv'
character(len=*), public, parameter :: vn_iotah = 'iotas'
character(len=*), public, parameter :: vn_mass = 'mass'
character(len=*), public, parameter :: vn_presh = 'pres'
character(len=*), public, parameter :: vn_betah = 'beta_vol'
character(len=*), public, parameter :: vn_buco = 'buco'
character(len=*), public, parameter :: vn_bvco = 'bvco'
character(len=*), public, parameter :: vn_vp = 'vp'
character(len=*), public, parameter :: vn_specw = 'specw'
character(len=*), public, parameter :: vn_phip = 'phips'
character(len=*), public, parameter :: vn_jdotb = 'jdotb'
character(len=*), public, parameter :: vn_overr = 'over_r'
character(len=*), public, parameter :: vn_bgrv = 'bdotgradv'
character(len=*), public, parameter :: vn_merc = 'DMerc'
character(len=*), public, parameter :: vn_mshear = 'DShear'
character(len=*), public, parameter :: vn_mwell = 'DWell'
character(len=*), public, parameter :: vn_mcurr = 'DCurr'
character(len=*), public, parameter :: vn_mgeo = 'DGeod'
character(len=*), public, parameter :: vn_equif = 'equif'
character(len=*), public, parameter :: vn_fsq = 'fsqt'
character(len=*), public, parameter :: vn_wdot = 'wdot'
character(len=*), public, parameter :: vn_ftolv = 'ftolv'
character(len=*), public, parameter :: vn_fsql = 'fsql'
character(len=*), public, parameter :: vn_fsqr = 'fsqr'
character(len=*), public, parameter :: vn_fsqz = 'fsqz'
character(len=*), public, parameter :: vn_extcur = 'extcur'
character(len=*), public, parameter :: vn_curlab = 'curlabel'
character(len=*), public, parameter :: vn_rmnc = 'rmnc'
character(len=*), public, parameter :: vn_zmns = 'zmns'
character(len=*), public, parameter :: vn_lmns = 'lmns'
character(len=*), public, parameter :: vn_gmnc = 'gmnc'
character(len=*), public, parameter :: vn_bmnc = 'bmnc'
character(len=*), public, parameter :: vn_bsubumnc = 'bsubumnc'
character(len=*), public, parameter :: vn_bsubvmnc = 'bsubvmnc'
character(len=*), public, parameter :: vn_bsubsmns = 'bsubsmns'
character(len=*), public, parameter :: vn_bsupumnc = 'bsupumnc'
character(len=*), public, parameter :: vn_bsupvmnc = 'bsupvmnc'
character(len=*), public, parameter :: vn_rmns = 'rmns'
character(len=*), public, parameter :: vn_zmnc = 'zmnc'
character(len=*), public, parameter :: vn_lmnc = 'lmnc'
character(len=*), public, parameter :: vn_gmns = 'gmns'
character(len=*), public, parameter :: vn_bmns = 'bmns'
character(len=*), public, parameter :: vn_bsubumns = 'bsubumns'
character(len=*), public, parameter :: vn_bsubvmns = 'bsubvmns'
character(len=*), public, parameter :: vn_bsubsmnc = 'bsubsmnc'
character(len=*), public, parameter :: vn_bsupumns = 'bsupumns'
character(len=*), public, parameter :: vn_bsupvmns = 'bsupvmns'
character(len=*), public, parameter :: vn_rbc = 'rbc'
character(len=*), public, parameter :: vn_zbs = 'zbs'
character(len=*), public, parameter :: vn_rbs = 'rbs'
character(len=*), public, parameter :: vn_zbc = 'zbc'
character(len=*), public, parameter :: vn_potvac = 'potvac'
character(len=*), public, parameter :: vn_wpar = 'wpar'
character(len=*), public, parameter :: vn_pparmnc = 'pparmnc'
character(len=*), public, parameter :: vn_ppermnc = 'ppermnc'
character(len=*), public, parameter :: vn_hotdmnc = 'hotdmnc'
character(len=*), public, parameter :: vn_pbprmnc = 'pbprmnc'
character(len=*), public, parameter :: vn_ppprmnc = 'ppprmnc'
character(len=*), public, parameter :: vn_sigmnc = 'sigmnc'
character(len=*), public, parameter :: vn_taumnc = 'taumnc'
character(len=*), public, parameter :: vn_pparmns = 'pparmns'
character(len=*), public, parameter :: vn_ppermns = 'ppermns'
character(len=*), public, parameter :: vn_hotdmns = 'hotdmns'
character(len=*), public, parameter :: vn_pbprmns = 'pbprmns'
character(len=*), public, parameter :: vn_ppprmns = 'ppprmns'
character(len=*), public, parameter :: vn_sigmns = 'sigmns'
character(len=*), public, parameter :: vn_taumns = 'taumns'
character(len=*), public, parameter :: vn_machsq = 'machsq'
character(len=*), public, parameter :: vn_protmnc = 'protmnc'
character(len=*), public, parameter :: vn_protrsqmnc = 'protrsqmnc'
character(len=*), public, parameter :: vn_prprmnc = 'prprmnc'
character(len=*), public, parameter :: vn_protmns = 'protmns'
character(len=*), public, parameter :: vn_protrsqmns = 'protrsqmns'
character(len=*), public, parameter :: vn_prprmns = 'prprmns'
character(len=*), public, parameter :: vn_pmap = 'pmap'
character(len=*), public, parameter :: vn_omega = 'omega'
character(len=*), public, parameter :: vn_tpotb = 'tpotb'
character(len=*), public, parameter :: ln_version = 'VMEC Version'
character(len=*), public, parameter :: ln_extension = 'Input file extension'
character(len=*), public, parameter :: ln_mgrid = 'MGRID file'
character(len=*), public, parameter :: ln_magen = 'Magnetic Energy'
character(len=*), public, parameter :: ln_therm = 'Thermal Energy'
character(len=*), public, parameter :: ln_gam = 'Gamma'
character(len=*), public, parameter :: ln_maxr = 'Maximum R'
character(len=*), public, parameter :: ln_minr = 'Minimum R'
character(len=*), public, parameter :: ln_maxz = 'Maximum Z'
character(len=*), public, parameter :: ln_fp = 'Field Periods'
character(len=*), public, parameter :: ln_radnod = 'Radial nodes'
character(len=*), public, parameter :: ln_polmod = 'Poloidal modes'
character(len=*), public, parameter :: ln_tormod = 'Toroidal modes'
character(len=*), public, parameter :: ln_maxmod = 'Fourier modes'
character(len=*), public, parameter :: ln_maxmod_nyq = 'Fourier modes (Nyquist)'
character(len=*), public, parameter :: ln_maxit = 'Max iterations'
character(len=*), public, parameter :: ln_actit = 'Actual iterations'
character(len=*), public, parameter :: ln_asym = 'Asymmetry'
character(len=*), public, parameter :: ln_recon = 'Reconstruction'
character(len=*), public, parameter :: ln_free = 'Free boundary'
character(len=*), public, parameter :: ln_error = 'Error flag'
character(len=*), public, parameter :: ln_aspect = 'Aspect ratio'
character(len=*), public, parameter :: ln_beta = 'Total beta'
character(len=*), public, parameter :: ln_pbeta = 'Poloidal beta'
character(len=*), public, parameter :: ln_tbeta = 'Toroidal beta'
character(len=*), public, parameter :: ln_abeta = 'Beta axis'
character(len=*), public, parameter :: ln_b0 = 'RB-t over R axis'
character(len=*), public, parameter :: ln_rbt0 = 'RB-t axis'
character(len=*), public, parameter :: ln_rbt1 = 'RB-t edge'
character(len=*), public, parameter :: ln_sgs = 'Sign jacobian'
character(len=*), public, parameter :: ln_lar = 'Ion Larmor radius'
character(len=*), public, parameter :: ln_modB = 'avg mod B'
character(len=*), public, parameter :: ln_ctor = 'Toroidal current'
character(len=*), public, parameter :: ln_amin = 'minor radius'
character(len=*), public, parameter :: ln_Rmaj = 'major radius'
character(len=*), public, parameter :: ln_vol = 'Plasma volume'
character(len=*), public, parameter :: ln_mse = 'Number of MSE points'
character(len=*), public, parameter :: ln_thom = 'Number of Thompson scattering points'
character(len=*), public, parameter :: ln_am = 'Specification parameters for mass(s)'
character(len=*), public, parameter :: ln_ac = 'Specification parameters for <J>(s)'
character(len=*), public, parameter :: ln_ai = 'Specification parameters for iota(s)'
character(len=*), public, parameter :: ln_pmass_type = 'Profile type specifier for mass(s)'
character(len=*), public, parameter :: ln_pcurr_type = 'Profile type specifier for <J>(s)'
character(len=*), public, parameter :: ln_piota_type = 'Profile type specifier for iota(s)'
character(len=*), public, parameter :: ln_am_aux_s = 'Auxiliary-s parameters for mass(s)'
character(len=*), public, parameter :: ln_am_aux_f = 'Auxiliary-f parameters for mass(s)'
character(len=*), public, parameter :: ln_ac_aux_s = 'Auxiliary-s parameters for <J>(s)'
character(len=*), public, parameter :: ln_ac_aux_f = 'Auxiliary-f parameters for <J>(s)'
character(len=*), public, parameter :: ln_ai_aux_s = 'Auxiliary-s parameters for iota(s)'
character(len=*), public, parameter :: ln_ai_aux_f = 'Auxiliary-f parameters for iota(s)'
character(len=*), public, parameter :: ln_pmod = 'Poloidal mode numbers'
character(len=*), public, parameter :: ln_tmod = 'Toroidal mode numbers'
character(len=*), public, parameter :: ln_pmod_nyq = 'Poloidal mode numbers (Nyquist)'
character(len=*), public, parameter :: ln_tmod_nyq = 'Toroidal mode numbers (Nyquist)'
character(len=*), public, parameter :: ln_racc = 'raxis (cosnv)'
character(len=*), public, parameter :: ln_racs = 'raxis (sinnv)'
character(len=*), public, parameter :: ln_zacs = 'zaxis (sinnv)'
character(len=*), public, parameter :: ln_zacc = 'zaxis (cosnv)'
character(len=*), public, parameter :: ln_iotaf = 'iota on full mesh'
character(len=*), public, parameter :: ln_qfact = 'q-factor on full mesh'
character(len=*), public, parameter :: ln_presf = 'pressure on full mesh'
character(len=*), public, parameter :: ln_phi = 'Toroidal flux on full mesh'
character(len=*), public, parameter :: ln_phipf = 'd(phi)/ds: Toroidal flux deriv on full mesh'
character(len=*), public, parameter :: ln_chi = 'Poloidal flux on full mesh'
character(len=*), public, parameter :: ln_chipf = 'd(chi)/ds: Poroidal flux deriv on full mesh'
character(len=*), public, parameter :: ln_jcuru = 'j dot gradu full'
character(len=*), public, parameter :: ln_jcurv = 'j dot gradv full'
character(len=*), public, parameter :: ln_iotah = 'iota half'
character(len=*), public, parameter :: ln_mass = 'mass half'
character(len=*), public, parameter :: ln_presh = 'pressure half'
character(len=*), public, parameter :: ln_betah = 'beta half'
character(len=*), public, parameter :: ln_buco = 'bsubu half'
character(len=*), public, parameter :: ln_bvco = 'bsubv half'
character(len=*), public, parameter :: ln_vp = 'volume deriv half'
character(len=*), public, parameter :: ln_specw = 'Spectral width half'
character(len=*), public, parameter :: ln_phip = 'tor flux deriv over 2pi half'
character(len=*), public, parameter :: ln_jdotb = 'J dot B'
character(len=*), public, parameter :: ln_bgrv = 'B dot grad v'
character(len=*), public, parameter :: ln_merc = 'Mercier criterion'
character(len=*), public, parameter :: ln_mshear = 'Shear Mercier'
character(len=*), public, parameter :: ln_mwell = 'Well Mercier'
character(len=*), public, parameter :: ln_mcurr = 'Current Mercier'
character(len=*), public, parameter :: ln_mgeo = 'Geodesic Mercier'
character(len=*), public, parameter :: ln_equif = 'Average force balance'
character(len=*), public, parameter :: ln_fsq = 'Residual decay'
character(len=*), public, parameter :: ln_wdot = 'Wdot decay'
character(len=*), public, parameter :: ln_extcur = 'External coil currents'
character(len=*), public, parameter :: ln_fsqr = 'Residual decay - radial'
character(len=*), public, parameter :: ln_fsqz = 'Residual decay - vertical'
character(len=*), public, parameter :: ln_fsql = 'Residual decay - hoop'
character(len=*), public, parameter :: ln_ftolv = 'Residual decay - requested'
character(len=*), public, parameter :: ln_curlab = 'External current names'
character(len=*), public, parameter :: ln_rmnc = 'cosmn component of cylindrical R, full mesh'
character(len=*), public, parameter :: ln_zmns = 'sinmn component of cylindrical Z, full mesh'
character(len=*), public, parameter :: ln_lmns = 'sinmn component of lambda, half mesh'
character(len=*), public, parameter :: ln_gmnc = 'cosmn component of jacobian, half mesh'
character(len=*), public, parameter :: ln_bmnc = 'cosmn component of mod-B, half mesh'
character(len=*), public, parameter :: ln_bsubumnc = 'cosmn covariant u-component of B, half mesh'
character(len=*), public, parameter :: ln_bsubvmnc = 'cosmn covariant v-component of B, half mesh'
character(len=*), public, parameter :: ln_bsubsmns = 'sinmn covariant s-component of B, full mesh'
character(len=*), public, parameter :: ln_bsupumnc = 'BSUPUmnc half'
character(len=*), public, parameter :: ln_bsupvmnc = 'BSUPVmnc half'
character(len=*), public, parameter :: ln_rmns = 'sinmn component of cylindrical R, full mesh'
character(len=*), public, parameter :: ln_zmnc = 'cosmn component of cylindrical Z, full mesh'
character(len=*), public, parameter :: ln_lmnc = 'cosmn component of lambda, half mesh'
character(len=*), public, parameter :: ln_gmns = 'sinmn component of jacobian, half mesh'
character(len=*), public, parameter :: ln_bmns = 'sinmn component of mod-B, half mesh'
character(len=*), public, parameter :: ln_bsubumns = 'sinmn covariant u-component of B, half mesh'
character(len=*), public, parameter :: ln_bsubvmns = 'sinmn covariant v-component of B, half mesh'
character(len=*), public, parameter :: ln_bsubsmnc = 'cosmn covariant s-component of B, full mesh'
character(len=*), public, parameter :: ln_bsupumns = 'BSUPUmns half'
character(len=*), public, parameter :: ln_bsupvmns = 'BSUPVmns half'
character(len=*), public, parameter :: ln_rbc = 'Initial boundary R cos(mu-nv) coefficients'
character(len=*), public, parameter :: ln_zbs = 'Initial boundary Z sin(mu-nv) coefficients'
character(len=*), public, parameter :: ln_rbs = 'Initial boundary R sin(mu-nv) coefficients'
character(len=*), public, parameter :: ln_zbc = 'Initial boundary Z cos(mu-nv) coefficients'
character(len=*), public, parameter :: ln_potvac = 'Vacuum Potential on Boundary'
character(len=*), public, parameter :: ln_wpar = 'Energy'
character(len=*), public, parameter :: ln_pparmnc = 'cosmn compoents of hot part. para. pressure'
character(len=*), public, parameter :: ln_ppermnc = 'cosmn compoents of hot part. perp. pressure'
character(len=*), public, parameter :: ln_hotdmnc = 'cosmn compoents of hot part. density'
character(len=*), public, parameter :: ln_pbprmnc = 'cosmn compoents of hot part. para. pres. grad.'
character(len=*), public, parameter :: ln_ppprmnc = 'cosmn compoents of hot part. perp. pres. grad.'
character(len=*), public, parameter :: ln_sigmnc = 'cosmn firehose stability variable'
character(len=*), public, parameter :: ln_taumnc = 'cosmn mirror stability variable'
character(len=*), public, parameter :: ln_pparmns = 'sinmn compoents of hot part. para. pressure'
character(len=*), public, parameter :: ln_ppermns = 'sinmn compoents of hot part. perp. pressure'
character(len=*), public, parameter :: ln_hotdmns = 'sinmn compoents of hot part. density'
character(len=*), public, parameter :: ln_pbprmns = 'sinmn compoents of hot part. para. pres. grad.'
character(len=*), public, parameter :: ln_ppprmns = 'sinmn compoents of hot part. perp. pres. grad.'
character(len=*), public, parameter :: ln_sigmns = 'sinmn firehose stability variable'
character(len=*), public, parameter :: ln_taumns = 'sinmn mirror stability variable'
character(len=*), public, parameter :: ln_machsq = 'Mach # on axis (squared)'
character(len=*), public, parameter :: ln_protmnc = 'cosmn components of pressure'
character(len=*), public, parameter :: ln_protrsqmnc = 'cosmn component of rotational energy'
character(len=*), public, parameter :: ln_prprmnc = 'cosmn components of radial pressure gradient'
character(len=*), public, parameter :: ln_protmns = 'sinmn components of pressure'
character(len=*), public, parameter :: ln_protrsqmns = 'sinmn component of rotational energy'
character(len=*), public, parameter :: ln_prprmns = 'sinmn components of radial pressure gradient'
character(len=*), public, parameter :: ln_pmap = '<p(s,R)>'
character(len=*), public, parameter :: ln_omega = 'Toroidal Angular Freq.'
character(len=*), public, parameter :: ln_tpotb = 'T_perp/T_parallel or T(flow)'
integer, public, parameter :: fatal_error = 666
logical, public :: lnverror = .true.
integer, public, parameter :: nlimset = 2
character(len=*), public, parameter :: vn_br0 = 'br'
character(len=*), public, parameter :: vn_bp0 = 'bp'
character(len=*), public, parameter :: vn_bz0 = 'bz'
character(len=*), public, parameter :: vn_ir = 'ir'
character(len=*), public, parameter :: vn_jz = 'jz'
character(len=*), public, parameter :: vn_kp = 'kp'
character(len=*), public, parameter :: vn_nfp = 'nfp'
character(len=*), public, parameter :: vn_rmin = 'rmin'
character(len=*), public, parameter :: vn_rmax = 'rmax'
character(len=*), public, parameter :: vn_zmin = 'zmin'
character(len=*), public, parameter :: vn_zmax = 'zmax'
character(len=*), public, parameter :: vn_coilgrp = 'coil_group'
character(len=*), public, parameter :: vn_nextcur = 'nextcur'
character(len=*), public, parameter :: vn_mgmode = 'mgrid_mode'
character(len=*), public, parameter :: vn_coilcur = 'raw_coil_cur'
character(len=*), public, parameter :: vn_flp = 'nobser'
character(len=*), public, parameter :: vn_nobd = 'nobd'
character(len=*), public, parameter :: vn_nbset = 'nbsets'
character(len=*), public, parameter :: vn_nbfld = 'nbfld'
character(len=*), public, parameter :: ln_flp = 'flux loops'
character(len=*), public, parameter :: ln_nobd = 'Connected flux loops'
character(len=*), public, parameter :: ln_nbset = 'B-coil loops'
character(len=*), public, parameter :: ln_next = 'External currents'
character(len=*), public, parameter :: ln_nbfld = 'B-coil measurements'
integer, public :: nr0b
integer, public :: np0b
integer, public :: nfper0
integer, public :: nz0b
integer, public :: nobd
integer, public :: nobser
integer, public :: nextcur
integer, public :: nbfldn
integer, public :: nbsets
integer, public :: nbcoilsn
integer, public :: nbvac
integer, public :: nbcoil_max
integer, public :: nlim
integer, public :: nlim_max
integer, public :: nsets
integer, public :: nrgrid
integer, public :: nzgrid
integer, public, DIMENSION(:), ALLOCATABLE :: needflx
integer, public, DIMENSION(:), ALLOCATABLE :: nbcoils
integer, public, DIMENSION(:), ALLOCATABLE :: limitr
integer, public, DIMENSION(:), ALLOCATABLE :: nsetsn
integer, public, DIMENSION(:,:), ALLOCATABLE :: iconnect
integer, public, DIMENSION(:,:), ALLOCATABLE :: needbfld
real(kind=rprec), public :: rminb
real(kind=rprec), public :: zminb
real(kind=rprec), public :: rmaxb
real(kind=rprec), public :: zmaxb
real(kind=rprec), public :: delrb
real(kind=rprec), public :: delzb
real(kind=rprec), public :: rx1
real(kind=rprec), public :: rx2
real(kind=rprec), public :: zy1
real(kind=rprec), public :: zy2
real(kind=rprec), public :: condif
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE, TARGET :: bvac
real(kind=rprec), public, DIMENSION(:,:,:), POINTER :: brvac
real(kind=rprec), public, DIMENSION(:,:,:), POINTER :: bzvac
real(kind=rprec), public, DIMENSION(:,:,:), POINTER :: bpvac
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: unpsiext
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: plbfld
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: rbcoil
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: zbcoil
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: abcoil
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: bcoil
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: rbcoilsqr
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: raw_coil_current
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: xobser
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: zobser
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: xobsqr
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: dsiext
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: psiext
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: plflux
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: b_chi
character(len=300), public :: mgrid_path
character(len=300), public :: mgrid_path_old = " "
character(len=30), public, DIMENSION(:), ALLOCATABLE :: curlabel
character(len=15), public, DIMENSION(:), ALLOCATABLE :: dsilabel
character(len=15), public, DIMENSION(:), ALLOCATABLE :: bloopnames
character(len=30), public :: tokid
real(kind=rprec), public, DIMENSION(:,:,:), ALLOCATABLE :: dbcoil
real(kind=rprec), public, DIMENSION(:,:,:), ALLOCATABLE :: pfcspec
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: rlim
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: zlim
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: reslim
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: seplim
character(len=1), public :: mgrid_mode
integer, public, DIMENSION(nbsetsp) :: nbfld
logical, public :: lpofr
logical, public :: lmac
logical, public :: lfreeb
logical, public :: lrecon
logical, public :: loldout
logical, public :: ledge_dump
logical, public :: lforbal
logical, public :: lmovie
logical, public :: lmove_axis
logical, public :: lwouttxt
logical, public :: ldiagno
logical, public ::
logical, public :: lgiveup
real(kind=rprec), public :: fgiveup
logical, public :: lbsubs
integer, public :: nfp
integer, public :: ns
integer, public :: mpol
integer, public :: ntor
integer, public :: mnmax
integer, public :: mnmax_nyq
integer, public :: itfsq
integer, public :: niter
integer, public :: iasym
integer, public :: ireconstruct
integer, public :: ierr_vmec
integer, public :: imse
integer, public :: itse
integer, public :: nstore_seq
integer, public :: isnodes
integer, public :: ipnodes
integer, public :: imatch_phiedge
integer, public :: isigng
integer, public :: mnyq
integer, public :: nnyq
integer, public :: ntmax
integer, public :: vmec_type
real(kind=rprec), public :: wb
real(kind=rprec), public :: wp
real(kind=rprec), public :: gamma
real(kind=rprec), public :: pfac
real(kind=rprec), public :: rmax_surf
real(kind=rprec), public :: rmin_surf
real(kind=rprec), public :: zmax_surf
real(kind=rprec), public :: aspect
real(kind=rprec), public :: betatot
real(kind=rprec), public :: betapol
real(kind=rprec), public :: betator
real(kind=rprec), public :: betaxis
real(kind=rprec), public :: b0
real(kind=rprec), public :: tswgt
real(kind=rprec), public :: msewgt
real(kind=rprec), public :: flmwgt
real(kind=rprec), public :: bcwgt
real(kind=rprec), public :: phidiam
real(kind=rprec), public :: version_
real(kind=rprec), public :: delphid
real(kind=rprec), public :: IonLarmor
real(kind=rprec), public :: VolAvgB
real(kind=rprec), public :: fsql
real(kind=rprec), public :: fsqr
real(kind=rprec), public :: fsqz
real(kind=rprec), public :: ftolv
real(kind=rprec), public :: Aminor
real(kind=rprec), public :: Rmajor
real(kind=rprec), public :: Volume
real(kind=rprec), public :: RBtor
real(kind=rprec), public :: RBtor0
real(kind=rprec), public :: Itor
real(kind=rprec), public :: machsq
real(kind=rprec), public, ALLOCATABLE :: rzl_local(:,:,:,:)
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: rmnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: zmns
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: lmns
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: rmns
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: zmnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: lmnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: bmnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: gmnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: bsubumnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: bsubvmnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: bsubsmns
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: bsupumnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: bsupvmnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: currvmnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: currumnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: bbc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: raxis
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: zaxis
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: bmns
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: gmns
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: bsubumns
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: bsubvmns
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: bsubsmnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: bsupumns
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: bsupvmns
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: currumns
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: currvmns
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: pparmnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: ppermnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: hotdmnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: pbprmnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: ppprmnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: sigmnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE :: taumnc
real(kind=rprec), public, DIMENSION(:,:), ALLOCATABLE ::
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: iotas
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: iotaf
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: presf
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: phipf
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: mass
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: pres
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: beta_vol
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: xm
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: xn
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: qfact
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: chipf
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: phi
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: chi
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: xm_nyq
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: xn_nyq
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: phip
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: buco
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: bvco
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: vp
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: overr
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: jcuru
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: jcurv
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: specw
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: jdotb
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: bdotgradv
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: fsqt
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: wdot
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: am
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: ac
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: ai
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: am_aux_s
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: am_aux_f
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: ac_aux_s
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: ac_aux_f
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: ai_aux_s
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: ai_aux_f
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: Dmerc
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: Dshear
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: Dwell
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: Dcurr
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: Dgeod
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: equif
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: extcur
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: sknots
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: ystark
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: y2stark
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: pknots
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: ythom
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: y2thom
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: anglemse
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: rmid
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: qmid
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: shear
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: presmid
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: alfa
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: curmid
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: rstark
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: qmeas
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: datastark
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: rthom
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: datathom
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: dsiobt
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: potvac
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: pmap
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: omega
real(kind=rprec), public, DIMENSION(:), ALLOCATABLE :: tpotb
logical, public :: lasym
logical, public :: lthreed
logical, public :: lwout_opened = .false.
logical, public :: lrfp = .false.
character(len=1), public :: mgrid_file*200
character(len=1), public :: input_extension*100
character(len=1), public :: pmass_type*20
character(len=1), public :: pcurr_type*20
character(len=1), public :: piota_type*20
integer, private, parameter :: norm_term_flag = 0
integer, private, parameter :: bad_jacobian_flag = 1
integer, private, parameter :: more_iter_flag = 2
integer, private, parameter :: jac75_flag = 4

Interfaces

public interface read_wout_file

  • public subroutine readw_and_open(file_or_extension, ierr, iopen)

    Arguments

    Type IntentOptional Attributes Name
    character(len=*), intent(in) :: file_or_extension
    integer, intent(out) :: ierr
    integer, optional :: iopen
  • public subroutine readw_only(iunit, ierr, iopen)

    Arguments

    Type IntentOptional Attributes Name
    integer, intent(in) :: iunit
    integer, intent(out) :: ierr
    integer, optional :: iopen

Subroutines

public subroutine readw_and_open(file_or_extension, ierr, iopen)

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: file_or_extension
integer, intent(out) :: ierr
integer, optional :: iopen

public subroutine readw_only(iunit, ierr, iopen)

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: iunit
integer, intent(out) :: ierr
integer, optional :: iopen

private subroutine read_wout_text(iunit, ierr)

Arguments

Type IntentOptional Attributes Name
integer :: iunit
integer :: ierr

private subroutine read_wout_nc(filename, ierr)

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: filename
integer, intent(out) :: ierr

public subroutine write_wout_text(filename, ierr)

Arguments

Type IntentOptional Attributes Name
character(len=*) :: filename
integer, intent(out) :: ierr

public subroutine Compute_Currents(ierror)

Arguments

Type IntentOptional Attributes Name
integer, intent(out) :: ierror

public subroutine read_wout_deallocate(ierr)

Arguments

Type IntentOptional Attributes Name
integer, intent(out) :: ierr