Take from src/aorsa2din_mod.f90
! --------------------------------------------------------
! Declarations and defaults for aorsa2d.in input variables
! --------------------------------------------------------
CHARACTER*128 :: eqdsk = 'g1080408021.txt' ! eqdsk name
CHARACTER*128 :: netCDF_file1 = 'phillips_nstx3.5.2.nc' !cql3d distribution file name 1
CHARACTER*128 :: netCDF_file2 = 'phillips_nstx3.5.2.nc' !cql3d distribution file name 2
CHARACTER*128 :: root = 'none' ! if (root = 'none') sum all modes
! if (root = 'fast') sum only modes within 20% of fast wave
! if (root = 'slow') sum only modes within 20% of slow wave
real :: xkx_ono = -30. !kx (m-1) for which Ono's dispersion relations is plotted
real :: xky_ono = 0.0 !ky (m-1) for which Ono's dispersion relations is plotted
integer :: nstrap = 4 ! number of current straps in antenna
real :: scrape = 100. ! scrape-off length in rho for iprofile = 5 (numerical profiles)
real :: nmin = 1.0e+18 ! minimum density allowed in scrape-off layer for iprofile = 5 (numerical profiles)
real :: Temin = .015 ! minimum temperature (keV) allowed in scrape-off layer for iprofile = 5
real :: rhomax = 1.0 ! maximum value of the rho grid
real :: xlt = 20.0E-02 ! width of current strap (m)
real :: wd = 50.0E-02 ! separation between centers of antenna elements
real :: enorm_factor = 0.0 ! if (enorm_factor .eq. 0.0) AORSA & CQL3D use same enorm (default)
! if (enorm_factor .gt. 0.0) AORSA enorm = enorm_factor x the maximum energy
real :: xkperp_cutoff = 0.75 ! fraction of xkperp above which the electron conductivity (sig3)
! is enhanced to short out noise in E_parallel (default = 0.75)
real :: damping = 0.0 ! enhancement factor (default = 0.0) for the electron conductivity (sig3)
! applied above the fractional value of xkperp (xkperp_cutoff) to
! short out noise in E_parallel
real :: taue = 50.0e-03 ! energy diffusion time used in flow drive calculation
real :: theta_ant = 0.0
real :: eslowev = 3.5e+06
real :: amu_slo = 4.0
real :: z_slo = 2.0
real :: eta_slo = 0.0
real :: xnuomi = 0.0 !-----xnuomi is the ion collison rate used in hot and cold plasma dielectrics
real :: xnuome = 0.0 !-----xnuome is the electron collison rate used in hot and cold plasma dielectrics
real :: xnuead = 0.0000E+00 !-----xnuead = ad hoc collision frequency for electron in sec-1
real :: xnu1ad = 0.0000E+00 !-----nu1ad=ad hoc collision frequency for majority ions in sec-1
real :: xnu2ad = 0.0000E+00 !-----nu2ad=ad hoc collision frequency for minority ions in sec-1
real :: rant = 0.0 !-----rant = major radius of antenna in meters (default is 0.0 in which case, psiant = .95)
real :: antang = 0.0 !-----antang = angle that the antenna straps make with the vertical
!-----in degrees (default is 0 deg. - vertical straps)
real :: dthetant0 = 40.
real :: dpsiant0 = .05
real :: antlen = 1.0
real :: antlc = .0001 !-----antlc = propagation constant along the antenna = c / vphase
real :: psilim = .99
real :: psimask = 1.05
real :: psiant = 0.95
real :: psimol = 1.00 !-----psimol: if (psimol .eq. 1.0) molifier is NOT used for plasma profiles (default)
!----- if (psimol .ne. 1.0) molifier is used for profiles, centered at psimol
real :: psipne = 0.50
real :: psipte = .30
real :: psipti1 = .30
real :: psipti2 = .30
real :: psipti3 = .30
real :: psipti4 = .30
real :: psipti5 = .30
real :: psipti6 = .30
real :: yant = 0.0 !-----yant = location of antenna center in Z (m)
real :: te0 = 4.2900E+03 !-----te0=central value of eletron temperature in eV
real :: ti0 = 7.0700E+03 !-----ti0=central value of ion temperature in eV
real :: ti02 = 7.0700E+03
real :: ti03 = 7.0700E+03
real :: ti04 = 7.0700E+03
real :: ti05 = 7.0700E+03
real :: ti06 = 7.0700E+03
real :: epszet = 1.0000E-07 !-----epszet=error criterion for Z function calculation if disp is used
real :: delta0 = 0.0000E+00 !-----delta0=numerical damping for Bernstein wave: about 1.e-04 (dimensionless)
real :: xwall = 0.0000E+00 !-----xwall = not used
real :: xnwall = 0.0000E+00 !-----xnwall = density of metal put on last mesh point
real :: amu1 = 2.0000E+00 !-----amu1= ratio of majority ion to hydrogen ion mass
real :: amu2 = 1.0000E+00 !-----amu2= ratio of minority ion to hydrogen ion mass
real :: z1 = 1.0000E+00 !-----z1=ratio of majority ion charge to hydrogen ion charge
real :: z2 = 1.0000E+00 !-----z2=ratio of minority ion charge to hydrogen ion charge
real :: eta = 0.0 !-----eta=ratio of minority ion density to electron density
real :: b0 = 2.08 !-----b0=value of magnetic field at x=0 in Tesla
real :: q0 = 1.0 !-----q0=value of inverse rotational transform on axis
real :: rt = 1.68 !-----rt= major radius of torus
real :: ekappa = 2.0 !-----ekappa = elongation
real :: rwleft = 0.0 !-----rwleft = major radius of the left conducting wall
real :: rwright = 0.0 !-----rwright = major radius of the right conducting wall
real :: ytop = 0.0 !-----ytop = location of the upper conducting wall
real :: ybottom = 0.0 !-----ybottom = location of the lower conducting wall
real :: ymax = 0.0 !-----ymax = radius in vertical (y) direction- in default it is set to awallx
real :: freqcy = 3.2000E+07 !-----freqcy= rf frequency in Hertz
real :: aplasm = 7.0000E-01 !-----aplasm = not used
real :: alim = 100.0 !-----alim = location of limiter
real :: grad = 0.0 !-----grad = 0.0 ignors gradients in Wdot (default)
!-----grad = 1.0 includes gradients in Wdot
real :: signbz = 1.0000E+00
real :: xn0 = 3.1100E+19 !-----xn0=electron density at x=0
real :: xn2 = 0.0
real :: xn3 = 0.0
real :: xn4 = 0.0
real :: xn5 = 0.0
real :: xn6 = 0.0
real :: xnslo = 0.0
real :: flat = 0.0000E+00 !-----flat = not used
real :: b1rat = 7.0000E-01 !-----b1rat = not used
real :: b2rat = 1.3000E+00 !-----b2rat = not used
real :: curdnx = 1.0 !-----curdnx=Amps/meter of toroidal length of antenna in the x direction
real :: curdny = 1.0 !-----curdny=Amps/meter of toroidal length of antenna in the y direction
real :: curdnz = 1.0 !-----curdnz=Amps/meter of toroidal length of antenna in the z direction
real :: prfin = 0.0 !-----prfin = total applied RF power
real :: xnuabs = 0.0000E+00 !-----xnuabs not used
real :: xbnch = 0.0000E+00 !-----xbnch not used
real :: xleft = -7.000E-01 !-----xleft=left boundary for energy integrals and outgoing energy flux
real :: xright = 7.0000E-01 !-----xright=right boundary for energy integrals and incoming energy flux
real :: qavg0 = 1.0 !-----qavg0 is the rotational transform on axis
real :: xnlim = 0.0 !-----xnlim=electron density in scrape-off region (x>aplasm)
real :: xn2lim = 0.0
real :: xn3lim = 0.0
real :: xn4lim = 0.0
real :: xn5lim = 0.0
real :: xn6lim = 0.0
real :: xnslolim = 0.0
real :: telim = 0.0000E+00 !-----telim = electron temperature in scrape-off region (x>aplasm)
real :: tilim = 0.0000E+00 !-----tilim = ion temperature in scrape-off region (x>aplasm)
real :: ti2lim = 0.0000E+00
real :: ti3lim = 0.0000E+00
real :: ti4lim = 0.0000E+00
real :: ti5lim = 0.0000E+00
real :: ti6lim = 0.0000E+00
real :: dfreq = 0.0000E+00 !-----dfreq not used
real :: dkz = 0.0000E+00 !-----dkz not used
real :: xnudip = 2.5000E+00 !-----xnudip is not used
real :: adip = 0.0000E+00 !-----adip is not used
real :: efold = 0.0000E+00 !-----efold is not used
real :: amu3 = 12.0 !-----amu3=ratio of third ion mass to hydrogen ion mass
real :: z3 = 6.0 !-----z3=ratio of third ion charge to hydrogen ion charge
real :: eta3 = 0.0 !-----eta3=ratio of third ion density to electron density
real :: xnu3ad = 0.0 !-----xnu3ad not used
real :: amu4 = 12.0 !-----amu4=ratio of 4th ion mass to hydrogen ion mass
real :: z4 = 6.0 !-----z4=ratio of 4th ion charge to hydrogen ion charge
real :: eta4 = 0.0 !-----eta4=ratio of 4th ion density to electron density
real :: xnu4ad = 0.0 !-----xnu4ad not used
real :: amu5 = 12.0 !-----amu5=ratio of 5th ion mass to hydrogen ion mass
real :: z5 = 6.0 !-----z5=ratio of 5th ion charge to hydrogen ion charge
real :: eta5 = 0.0 !-----eta5=ratio of 5th ion density to electron density
real :: xnu5ad = 0.0 !-----xnu5ad not used
real :: amu6 = 12.0 !-----amu6=ratio of 6th ion mass to hydrogen ion mass
real :: z6 = 6.0 !-----z6=ratio of 6th ion charge to hydrogen ion charge
real :: eta6 = 0.0 !-----eta6=ratio of 6th ion density to electron density
real :: xnu6ad = 0.0 !-----xnu6ad not used
real :: xdelta = 5.5000E-01 !-----xdelta not used
real :: wdelta = 0.0000E+00 !-----wdelta not used
real :: xdelt2 = -7.000E-02 !-----xdelt2 not used
real :: wdelt2 = 0.0000E+00 !-----wdelt2 not used
real :: zeffcd = 2.5000E+00 !-----zeffcd=Zeff for Ehst-Karney current drive calculation
real :: rzoom1 = 0.0 !-----rzoom1 = R on left side of wdot calculation
real :: rzoom2 = 0.0 !-----rzoom2 = R on right side of wdot calculation
real :: yzoom1 = 0.0 !-----yzoom1 = Y on bottom of wdot calculation
real :: yzoom2 = 0.0 !-----yzoom2 = Y on top of wdot calculation
real :: ydisp = 0.0 !-----ydisp = y value (m) at which contours of D(x, kx) are drawn
real :: xkydisp = 0.0 !-----xkydisp = ky value (m-1) for which contours of D(x, kx) are drawn
real*4 :: dfquotient = 0.0 !-----dfquotient = divisor of df for which a single contour of D(x, kx) is drawn
! if (dfquotient .eq. 0.0) all 20 contours are drawn (default)
! if (dfquotient .ne. 0.0) only one coutour is drawn with df/dfquotient
real*4 :: rmin_zoom = 2.15 !-----R_min for edge density plot
real*4 :: rmax_zoom = 2.35 !-----R_max for edge density plot
real*4 :: yplot = .05 !-----yplot = cut in y for slow wave dipersion plots
real :: alphan = 1.0
real :: alphan2 = 1.0
real :: alphan3 = 1.0
real :: alphan4 = 1.0
real :: alphan5 = 1.0
real :: alphan6 = 1.0
real :: alphan_slo = 1.0
real :: alphate = 1.0
real :: alphati = 1.0
real :: alphati2 = 1.0
real :: alphati3 = 1.0
real :: alphati4 = 1.0
real :: alphati5 = 1.0
real :: alphati6 = 1.0
real :: betan = 2.0
real :: betan2 = 2.0
real :: betan3 = 2.0
real :: betan4 = 2.0
real :: betan5 = 2.0
real :: betan6 = 2.0
real :: betan_slo = 2.0
real :: betate = 2.0
real :: betati = 2.0
real :: betati2 = 2.0
real :: betati3 = 2.0
real :: betati4 = 2.0
real :: betati5 = 2.0
real :: betati6 = 2.0
integer :: version_number = 24 !-----version_number: version of AORSA
integer :: n_prof_flux = 0 !-----n_prof_flux = flag determining whether profiles are wrt toroidal or poloidal flux
! if(n_prof_flux .eq. 0) profiles are wrt sqrt(poloidal) flux (default)
! if(n_prof_flux .ne. 0) profiles are wrt sqrt(toroidal) flux
integer :: upshift = 1 !-----upshift: if (upshift .ne. 0) upshift is turned on (default)
!-----if (upshift .eq. -1) upshift is turned off for xkperp > xkperp_cutoff
!-----if (upshift .eq. -2) don't allow k_parallel too close to zero
!-----if (upshift .eq. 0) upshift is turned off always
integer :: odd_order = 0 !-----odd_order:
! if (odd_order .eq. 0) odd_order derivatives are NOT included (default)
! if (odd_order .ne. 0) odd_order derivatives are included (Maxwellians ONLY)
integer :: nsmooth = 4 !-----nsmooth:
! if (nsmooth .eq. 0) derivatives are NOT smoothed
! if (nsmooth .ne. 0) derivatives are smoothed nsmooth times (default: 4 times)
integer :: eqdsk_special = 0 ! if (eqdsk_special .eq. 0) regular geqdsk (default)
! if (eqdsk_special .ne. 0) special eqdsk for Alcator-C lower hybrid
logical :: nphi_sum_only = .false. !-----if (nphi_sum_only .eq. .true.) skip aorsa and just sum the modes for nphi_number > 1
!-----if (nphi_sum_only .eq. .false.) run aorsa and sum modes if nphi_number > 1 (default)
logical :: anti_alias = .false. !-----if (anti_alias .eq. .false.) no filter: keep all modes (default)
!-----if (anti_alias .eq. .true. ) anti-aliasing filter (two-thirds rule)
logical :: use_new_wdot = .false. !-----if (use_new_wdot .eq. .false.) use original wdote - resonant terms only (default)
!-----if (use_new_wdot .eq. .true. ) use new wdote - both resonant and non-resonant terms
logical :: use_no_damp = .false. !-----if (use_no_damp .eq. .true.) turn off artificial damping for power calculation
!-----if (use_no_damp .eq. .false.) keep artificial damping for power calculation calculation (default)
logical :: read_solution = .false. !-----if (read_solution .eq. .true.) skip scalapack solution and read fields from out_fields
!-----if (read_solution .eq. .false.) solve for field with scalapack (default)
logical :: plot_only = .false. !-----if (plot_only .eq. .true.) skip aorsa and just do plots
!-----if (plot_only .eq. .false.) run aorsa and do plots (default)
logical :: curved_ant = .true. !-----if (curved_ant .eq. .true.) antenna follows flux surface (default)
!-----if (curved_ant .eq. .false.) antenna is vertical
integer :: norm = 1 !-----if (norm .eq. 1) normalize to jdote (default)
!-----if (norm .eq. 2) normalize to wdot
!-----if (norm .eq. 3) normalize to wdot_ql
integer :: z2_electron = 0 !-----if (z2_electron .eq. 0) use the original Z2 function for electrons (default)
!-----if (z2_electron .eq. 1) use the Z2 table for electrons with l = 0 (Taylor expansion along field line)
!-----if (z2_electron .eq. 2) use Fourier expansion along field line for electrons with l = 0 (full orbits)
integer :: i_write = 0 !-----i_write: if (i_write .eq. 0) 4-D ORBIT_RF file is NOT written (default)
!----- if (i_write .ne. 0) 4-D ORBIT_RF file IS written
integer :: n_bin = 2
integer :: iql = 1
integer :: i_antenna = 1 ! i_antenna = flag determining which antenna model is used
! if(i_antenna .eq. 0) antenna current is Gaussian
! if(i_antenna .eq. 1) antenna current is cos(ky * y) (default)
! where ky = omgrf / vphase = (omgrf / clight) * antlc = k0 * antlc
! For constant current, set antlc = 0.0
integer :: nuper = 65
integer :: nupar = 129
integer :: nkperp = 201 !-----nkperp: number of kperp values used in Lee's interpolation version of the
! non-Maxwellian sigma (default = 201: interpolates on 201 points)
! if (nkperp .eq. 0) there is no interpolation
integer :: nzeta_wdote = 51 !-----nzeta_wdote: if (nzeta_wdote .eq. 0) no wdot calculation for electrons
!----- if (nzeta_wdote .eq. 1) wdote is calculated without interpolation
!----- if (nzeta_wdote .ge. 2) wdote is calculated with interpolation
!----- over nzeta_wdote grid points (default is 51)
integer :: nzeta_wdoti = 51 !-----nzeta_wdoti: if (nzeta_wdoti .eq. 0) no wdot calculation for ions
!----- if (nzeta_wdoti .eq. 1) wdoti is calculated without interpolation
!----- if (nzeta_wdoti .ge. 2) wdoti is calculated with interpolation
!----- over nzeta_wdoti grid points (default is 51)
integer :: i_sav = 0
integer :: j_sav = 0
integer :: i_sav1 = 0
integer :: j_sav1 = 0
integer :: i_sav2 = 0
integer :: j_sav2 = 0
integer :: isolve = 1 !-----isolve = flag determining whether wave solution is calculated or not
! if(isolve .ne. 0) wave solution is calculated (default)
! if(isolve .eq. 0) wave solutions is read from file='fields_fourier'
integer :: ftrap = 1 !-----ftrap = integer flag determining whether trapped particles effect current drive
! if(ftrap.eq.0) no trapped particles
! if(ftrap.ne.0) include trapped particles (default)
integer :: nnode_local = 0 !-----nnode_local = number of local Fourier modes used to calculate local Wdot
!----- if (nnode_local .le. 0)Wdot is NOT calculated (default)
!----- if (nnode_local .gt. 0)Wdot is calculated
integer :: nnode_overlap = 0 !-----nnode_overlap is the number of overlapped points
integer :: iprofile = 3 !-----iprofile: if (iprofile .eq. 1) generic profiles (Gaussian)
!----- if (iprofile .eq. 2) generic profiles (parabolas)
!----- if (iprofile .eq. 3) fits of form (1 - rho**beta)**alpha (default)
!----- if (iprofile .eq. 5) numerical profiles from namelist
integer :: nboundary = 1 !-----nboundary: if(nboundary .eq. 1)flux surface boundary (default)
!----- if(nboundary .eq. 0)square boundary
integer :: nprow = 8 ! shape of processor grid. nprow*npcol == nproc from mpi communicator
integer :: npcol = 8
integer :: nwdot = 0 !-----nwdot=number of radial modes used in wdot and flow (fy) calculation
integer :: lmax = 5 !-----lmax = highest order Bessel function kept in ion plasma conductivity wdot
integer :: lmaxe = 1 !-----lmaxe = highest order Bessel function kept in electron plasma conductivity and wdot
integer :: ibessel = 1 !-----ibessel = flag determining which Bessel functions are used in Wdot
! if(ibessel.eq.0) Complex Bessel functions are used from besic
! if(ibessel.eq.1) Real Bessel functions used from ribesl (default)
! if(ibessel.eq.2) 2nd order expanded Bessel functions are used in Wdot only
integer :: inu = 0 !-----inu: if(inu.eq.0)real collisions are left out
integer :: iprint = 1 !-----iprint: if (iprint .eq. 28) print fields_local
!----- if (iprint .eq. 1) don't print fields_local (default)
integer :: iexact = 1 !-----iexact: not used
integer :: iroot = 2 !-----iroot: not used
integer :: iequat = 1
integer :: igeom = 5 !-----igeom: if(igeom.eq.2)Solovev flux surfaces
!----- if(igeom.eq.5)EQDSK (GA) flux surfaces (default)
integer :: iqx = 4 !-----iqx: not used
integer :: iqprof = 1 !-----iqprof: if(iqprof.eq.1) q proportional to density (default)
!----- if(iqprof.eq.2) q proportional to sqrt(density) for TAE runs
integer :: iez = 0 !-----iez: not used
integer :: nstep = 16 !-----nstep: not used
integer :: nabs = 2 !-----nabs not used
integer :: isigma = 1 !-----if(isigma.eq.0) cold plasma conductivity is used.
!-----if(isigma.eq.1) hot plasma conductivity is used (default)
integer :: nzfun = 1 !-----nzfun: if(nzfun.eq.0) Simple Z function is used from ZFUN
!----- if(nzfun.eq.1) Generalized Z function of Brambilla is used (default)
!----- if(nzfun.eq.2) Z function of Smithe is used by doing numerical integrals.
!----- if(nzfun.eq.3) Z function table lookup of Smithe is used
integer :: iabsorb = 2 !-----iabsorb not used
integer :: itemp = 0 !-----itemp not used
integer :: nfreqm = 1 !-----nfreqm not used
integer :: nkzm = 1 !-----nkzm not used
integer :: idens = 0 !-----idens not used
integer :: ibackground = 1 !-----ibackground is not used
integer :: idiag = 5
integer :: jdiag = 4
integer :: ndiste = 0 !-----ndist: if (ndist .eq. 0) Maxwellian is used in sigmad_stix
!----- if (ndist .eq. 1) non-Maxwellian is used in sigmad_stix
integer :: ndisti1 = 0
integer :: ndisti2 = 0
integer :: ndisti3 = 0
integer :: ndisti4 = 0
integer :: ndisti5 = 0
integer :: ndisti6 = 0
integer :: nphimx, nphasemx
integer :: nmodesx = 128 !-----nmodesx=number of modes used in the x direction
integer :: nmodesy = 128 !-----nmodesy=number of modes used in the y direction
integer :: nmodeslb = 256 !-----nmodeslb =number of modes used along the field line
integer :: izfunc !-----not used
integer :: nphi_number = 10 !-----number of nphi's in the nphi_array
parameter (nphimx = 200) !-----dimension of nphi_array
integer :: nphi_array(nphimx) = 0 !-----list of nphi's in the nphi_array
parameter (nphasemx = 12)
real :: phase_array(nphasemx) = 0.0 !-----list of phase on each antenna strap