ORB5  v4.9.4
equil_mod Module Reference

Data Types

interface  get_gradients
 
interface  sc2xy
 

Functions/Subroutines

subroutine norm1
 
subroutine, public equil_backfields (s, chi, pot, es, echi)
 
subroutine, public equil_backfields1d (psi, pot, epsi)
 
real function, dimension(size(quant_list, 1)) equil_quants (s, chi, quant_list)
 
pure real function, public equil_absb (s, chi)
 Returns the norm of the equilibrium magnetic field. More...
 
subroutine equil_comps (s, chi, comp_no, out)
 
subroutine, public bderivs (s, chi, dBds, dBdchi, absb)
 
real function, public equil_dmaxb (st)
 
real function, public equil_maxb (st)
 
real function, public equil_addpbst (s, chi)
 
real function, public equil_tprime (s, chi)
 
pure real function, public equil_tob (s, chi)
 Returns R*B_tor/B. More...
 
real function, public equil_s (px, py)
 
subroutine, public sc2xy (s, theta, x, y)
 
subroutine sc2xyn (s, theta, x, y, n)
 
subroutine, public sc2xy_sincos (s, cost, sint, x, y)
 
subroutine, public sc2xy_chease (s, theta, x, y)
 
subroutine, public xy2sc (x, y, s, chi_out)
 
real function, dimension(2), public get_comp (s, chi)
 
real function, dimension(2), public get_gradpsi (px, py)
 
real function, dimension(2), public get_gradb (px, py)
 
pure subroutine get_gradients1 (s, chi, grads, gradchi, gradphi)
 
pure subroutine get_gradientsn (s, chi, n, grads, gradchi, gradphi)
 
real function, dimension(2), public get_grhphi (px, py)
 
real function, public equil_brotb (s, chi)
 
real function, public jacob (s, chi)
 
real function, public jacobderivative (s, chi)
 
real function, public jacob_tsp (s, chi)
 
subroutine init_profiles
 Define equilibrium profiles (density, temperature and parallel momentum) More...
 
real function profile_i (st, kappa_x, width, peak, grad)
 
subroutine normalize_profiles
 
subroutine set_profiles_mks
 
subroutine get_nbars (isp, cnorm, cnorm2)
 Calculate average density value \bar{n} for normalization. More...
 
subroutine calculate_other_normalizations
 
subroutine calculate_ubulk
 Calculate the ubulk and ubulk_prime look up tables. More...
 
subroutine adjust_svol_min_max
 Readjust svol_min and svol_max to grid points. More...
 
subroutine impose_quasineutrality
 
subroutine impose_quasineutrality_mks
 
real function sech (x)
 
subroutine, public profiles_sh (isp, psi, nishval)
 
subroutine, public profiles (isp, psi, tval, tgrad, nval, ngrad, vpval, vpgrad)
 Get equilibrium profiles and gradients. More...
 
subroutine read_equil_ah
 
subroutine s2rad_mhd (ps, prad, pdrds)
 Compute s->rho_vol by linear interpolation with CHEASE grids. More...
 
subroutine s2rad_adhoc (ps, prad, pdrds)
 Compute s->rho_vol analytically according to q-profile. More...
 
subroutine, public s2rad (ps, prad, pdrds)
 Convert \(s=\sqrt(\psi/\psi_{edge})\) in \(\rho/a_{mid}\) and gives \(d(\rho/a_{mid})/ds\). More...
 
real function, public get_psi_of_r (zrho)
 
real function, public func_sigma (ss)
 
real function, public func_sigmab (ss)
 
real function, public func_sigmatprimeob (ss)
 
real function, public func_b_pszs (ss)
 
real function, public func_tprimeob_pszs (ss)
 
real function, public fitbound_v (zr)
 
real function, public equil_hchi (s, chi)
 
subroutine, public equil_h (px, py, h)
 
real function get_rho (s, theta)
 
subroutine, public qchi (radvar, qout, strsel)
 Get q profile by linear interpolation. More...
 
real function, public s_of_q (zq)
 
subroutine, public get_qmin (sqmin, qmin)
 
real function, public get_vth_psi (zpsit, isp)
 
subroutine int_jacob
 
subroutine allocate_flux_bins
 Allocate arrays for bin volumes, surfaces, etc. More...
 
subroutine calculate_vol_coord
 
subroutine build_zpsi_grd
 Build psi grid for the binning. More...
 
subroutine build_bin_vol
 Compute volume and surface of a radial bin. More...
 
subroutine bin_vol_loop (i, zirqpts, zqp, zqw, zdtheta, ztheta_grd)
 
subroutine build_zpsi_grd_island
 
subroutine init_jacobian_island
 
real function, public gtgp_xy (px, py)
 
real function, public func_torpsi (ss)
 Get toroidal flux. More...
 
subroutine, public init_dens_profile (worktype, isp, zf_av, z_den)
 
subroutine dump_equil
 Write equilibrium quantities in the hdf5 file format. More...
 
real function, public func_alphab_fsa (ss)
 
subroutine, public create_equil
 
subroutine, public equil_aux
 
real function, public get_chi (s, theta)
 
subroutine make_equil_sc_coeff
 
subroutine make_equil_strong
 Computes quantities needed during time evolution on a (s,chi) grid. More...
 
subroutine coeff_axis
 
subroutine, public get_fdfds (s, F, dFds)
 
subroutine, public get_rz (s, chi, r, z)
 
real function, public get_theta (s, chi)
 
subroutine, public equil_coef_sc (s, chi, zr, zpsidr, zpsidz, zB, zhchi, zhphi, zgrB, addpchi, addpphi, brotb, divh, grads, gradchi)
 
pure subroutine, public equil_move_sc (s, chi, zr, ztprime, zB, zgrB, zdivh, zh, addpBst, addp, exh, ztsubB, addvpa)
 Compute quantities in curvilinear coordinates needed during time evolution by bilinear interpolation. More...
 
subroutine, public get_larm_coeff (s, chi, larmsc, larmchic, larmchis)
 
subroutine, public get_larm_coeffn (s, chi, larmsc, larmchic, larmchis)
 Compute coefficients for particle position by bilinear interpolation. More...
 
real function, public calc_ftrap (s, theta, itrap)
 Local fraction of trapped particles. More...
 
subroutine create_psi
 
subroutine qbar (zrad, zq, zdqdrad)
 Get pseudo-safety factor and its derivative. More...
 
subroutine read_equil_cpo
 
subroutine, public read_equil_hdf5
 
subroutine make_equil_sc_coeff_chease
 
subroutine set_back_pot
 Set the background potential: various options depending on input flags. More...
 
subroutine, public make_toroidal_flow_potential (potential, write_exb_diagnostics, time)
 Load a toroidal angular frequency profile given as an arbitrary set of points, and calculate the background potential to give this rotation. Toroidal rotation profile specified in prof_file (/data/omega), with npsi_profile points (in /data/NPSI). Omega should be in units of radians/cyclotron frequency. Designed for general coordinate system and doesn't make large-aspect ratio assumptions. Uses the following input parameters: nsel_pot_profile=NSEL_POT_PROF_FILE, flow_scale, prof_file. More...
 
subroutine load_omega ()
 
real function, public equil_pp (s)
 
real function, public equil_ubulk (s_val, isp)
 
real function, public equil_ubulk_prime (s_val, isp)
 
subroutine load_profiles (isp)
 
subroutine get_nref
 
subroutine, public compute_bin_vol (stmin, zds, stbin, chitmin, zdchi, chitbin, zdphi)
 
pure integer function find_chease_s_index (imap, s)
 Given a value of s, and an initial guess, find the index of the closest value in S_CHEASE. More...
 
pure integer function find_index (dumarray, imap, s)
 Given a value, and an initial guess, find the index of the closest value in a CHEASE array. More...
 
pure integer function find_chease_chi_index (imap, cchi)
 Given a value of chi, and an initial guess, find the index of the closest value in CHI_CHEASE. More...
 
subroutine, public equil_move_strong (s, chi, due2dsigma, due2dchi, dBdsigma, dBdchi)
 
subroutine, public equil_pot (sigmat, chi, es_back)
 
subroutine, public back_vel_mod (sigmat, chi, vexb2)
 
subroutine back_vel_diff (sigmat, chi, due2dsigma, due2dchi)
 
subroutine, public equil_perp_vec (s, chi, hy, hz, grsigma2, grchi2, grsigmagrchi, J_s, r)
 
subroutine, public curl_ue (sigmat, chi, X, Y, Z)
 
subroutine, public back_vel_tor (sigmat, chi, ue_phi)
 
subroutine, public equil_strong_vdr (sigmat, chi, duphidpsi, duphidchi)
 
subroutine dump_equil_strong
 
subroutine set_n_corr
 
subroutine set_corr_axis
 
pure subroutine, public getdn_corr (psit, dncorr)
 
real function, public getdens_corr (psit)
 
subroutine read_equil_ntprofiles
 
subroutine, public acc_update_device_equil_variables
 

Variables

integer, parameter nequ_qtt =28
 
integer, parameter nequ_qtt_sc =51
 
integer, parameter nequ_qtt_sc_chease =18
 
integer, parameter nequ_isl =5
 
integer, parameter nequ_1d =4
 
real, parameter extent =0.1
 
real, parameter equ_grid_offset = 1.5
 
integer, parameter equ_grid_lw = 2
 
integer, parameter equ_grid_hi = 1
 
integer, save nrho
 
integer, save nrho_q
 
integer, save n1dprof_pt
 
integer, save, public ngmax
 
integer, save ngmaxtheta
 
integer, dimension(:), allocatable, save, public jchiin
 
integer, dimension(:), allocatable, save, public jchiin0
 
integer, save, public ichimin
 
integer, save, public ichimax
 
integer, save, public ichimin0
 
integer, save, public ichimax0
 
real, save drho
 
real, save drho_inv
 
real, save drho_q
 
real, save drho_q_inv
 
real, save gea_midn
 
real, save, public xmag
 
real, save, public ymag
 
real, save, public rhfs
 
real, save, public c_psi0corr
 
real, save, public psi0
 
real, save e_mid =1.0
 
real, save ds
 
real, save, public ds_inv
 
real, save dth
 
real, save dth_inv
 
real, dimension(:), allocatable, save, public volps
 
real, dimension(:), allocatable, save, public voltor
 
real, dimension(:), allocatable, save, public voltor_inv
 
real, dimension(:), allocatable, save, public volanu
 
real, dimension(:), allocatable, save, public voldiag
 
real, dimension(:), allocatable, save, public pvol_norm
 
real, dimension(:), allocatable, save, public ekinps
 
real, dimension(:), allocatable, save, public volps_tr
 
real, dimension(:), allocatable, save, public pvol_norm_tr
 
real, dimension(:), allocatable, save, public ekinps_tr
 
real, save rmajor
 
real, save zmajor
 
real, save edge_rmin
 
real, save edge_rmax
 
real, save edge_zmin
 
real, save edge_zmax
 
real, save, public b_norm
 
real, save, public d_norm
 
real, save t_norm
 
real, save, public ger_min
 
real, save, public ger_max
 
real, save, public gez_min
 
real, save gez_max
 
real, save, public gedr
 
real, save, public gedz
 
real, save, public gedr_inv
 
real, save, public gedz_inv
 
real, save geds
 
real, save gedc
 
real, save geds_inv
 
real, save gedc_inv
 
real, save, public fpsin
 
real, save, public a_midn
 
real, save r0_midn
 
real, save, public bmin_c
 
real, save, public bmax_c
 
real, save, public fonbmax_c
 
real, save, public fonbmin_c
 
real, dimension(:,:,:), allocatable, save, public a_equ
 
real, dimension(:,:,:), allocatable, save c_equ
 
real, dimension(:,:,:), allocatable, save d_equ
 
real, dimension(:,:,:), allocatable, save e_equ
 
real, dimension(:,:), allocatable, target, save a_1dprof
 
real, dimension(:), allocatable, save psi_of_r
 
real, dimension(:), allocatable, save qs
 
real, dimension(:), allocatable, save dqsdr
 
real, dimension(:), allocatable, save, public thgrid_eq
 
real, dimension(:), allocatable, save, public sgrid_eq
 
real, dimension(:,:), allocatable, save rhotab
 
real, dimension(:,:), allocatable, save lambdatab
 
real, dimension(:,:), allocatable, save, public sigmas
 
real, dimension(:), allocatable, save alphab_fsa
 
real, dimension(:), allocatable, save, public alphain
 
real, dimension(:), allocatable, save, public alphain0
 
real, save, public chibmin
 
real, save, public chibmax
 
real, save, public chibmin0
 
real, save, public chibmax0
 
real, save q_fact1
 
real, save q_fact2
 
real, save corr_axis
 
real, dimension(:,:), allocatable, save chigtab
 
real, save dpsi_0
 
real, save dpsi_0inv
 
real, dimension(:), allocatable, save psi_grd
 
real, dimension(:), allocatable, save rho_tor_norm
 
real, dimension(:), allocatable, save drho_tor_norm
 
real, dimension(:,:), allocatable, save t_pic
 
real, dimension(:,:), allocatable, save gradt_pic
 
real, dimension(:,:), allocatable, save t_pic_mks
 
real, dimension(:,:), allocatable, save n_pic
 
real, dimension(:,:), allocatable, save gradn_pic
 
real, dimension(:,:), allocatable, save n_pic_mks
 
real, dimension(:), allocatable, save ni_shield
 
real, dimension(:), allocatable, save lx_pic
 
real, dimension(:), allocatable, save zeff_pic
 
real, dimension(:), allocatable, save zefftmp_pic
 
real, dimension(:), allocatable, save beta_pic
 
real, dimension(:,:), allocatable, save vp_pic
 
real, dimension(:,:), allocatable, save gradvp_pic
 
real, dimension(:), allocatable, save gradgradne
 
real, dimension(:), allocatable, save n_corr
 
real, dimension(:), allocatable, save, public bin_vol
 
real, dimension(:,:), allocatable, save, public bin_vol_2d
 
real, dimension(:,:), allocatable, save, public bin_vol_3d_inv
 
real, dimension(:,:), allocatable, save, public bin_vol_3d
 
real, dimension(:), allocatable, save bin_helical_ti
 
real, dimension(:), allocatable, save bin_helical_ni
 
real, dimension(:), allocatable, save psi_av
 
real, dimension(:,:), allocatable, save psi_av_hel
 
real, dimension(:,:), allocatable, save bin_vol_hel
 
real, dimension(:), allocatable, save, public bin_surf
 
real, dimension(:), allocatable, save, public nbar
 
real, dimension(:), allocatable, save tbar
 
real, dimension(:), allocatable, save nbar_anu
 
real, dimension(:), allocatable, save torpsitab
 
real, dimension(:), allocatable, save, public zpsi_grd
 
real, dimension(:), allocatable, save, public psihe_grd
 
real, save, public psires
 
real, save, public psihes
 
real, save, public width_is
 
integer, save, public znin
 
integer, save, public znisl
 
integer, save, public znout
 
integer hdf5_ioutgyro
 
real, dimension(:), allocatable, save p_psi
 
real, dimension(:), allocatable, save dpdpsi
 
real, dimension(:), allocatable, save f_psi
 
real, dimension(:), allocatable, save fdfdpsi
 
real, dimension(:), allocatable, save q_psi
 
real, dimension(:), allocatable, save dqdpsi
 
real, dimension(:), allocatable, save psi_chease
 
real, dimension(:), allocatable, save chi_chease
 
real, dimension(:), allocatable, save s_chease
 
real, dimension(:), allocatable, save rgeom
 
real, dimension(:), allocatable, save ageom
 
real, dimension(:), allocatable, save kappae
 
real, dimension(:), allocatable, save bmax_s
 
real, dimension(:), allocatable, save volume
 
real, dimension(:), allocatable, save psinorm_chease
 
real, dimension(:), allocatable, save rhovnorm_chease
 
real, dimension(:), allocatable, save drhovnormds_chease
 
real, dimension(:), allocatable, save mhdti
 
real, dimension(:), allocatable, save mhdte
 
real, dimension(:), allocatable, save mhdn
 
real, dimension(:,:), allocatable, save ubulk_s
 
real, dimension(:,:), allocatable, save ubulk_prime_s
 
real, dimension(:), allocatable, save pot_back
 
real, dimension(:), allocatable, save int1
 
real, public zdpsi_0
 
integer, dimension(:), allocatable, save profile_grid
 
integer, parameter psi_g =0
 
integer, parameter sigma_g =1
 
integer, parameter rho_g =2
 

Function/Subroutine Documentation

◆ acc_update_device_equil_variables()

subroutine, public equil_mod::acc_update_device_equil_variables
+ Here is the caller graph for this function:

◆ adjust_svol_min_max()

subroutine equil_mod::adjust_svol_min_max
private

Readjust svol_min and svol_max to grid points.

+ Here is the caller graph for this function:

◆ allocate_flux_bins()

subroutine equil_mod::allocate_flux_bins
private

Allocate arrays for bin volumes, surfaces, etc.

+ Here is the caller graph for this function:

◆ back_vel_diff()

subroutine equil_mod::back_vel_diff ( real, intent(in)  sigmat,
real, intent(in)  chi,
real, intent(out)  due2dsigma,
real, intent(out)  due2dchi 
)
private
Parameters
[in]sigmatCalculate the derivatives of u_e^2 (background velocity) using quadratic interpolation and finite differencing
[in]chiCalculate the derivatives of u_e^2 (background velocity) using quadratic interpolation and finite differencing
+ Here is the caller graph for this function:

◆ back_vel_mod()

subroutine, public equil_mod::back_vel_mod ( real, intent(in)  sigmat,
real, intent(in)  chi,
real, intent(out)  vexb2 
)
Bug:
LV: back_vel_mod is called from several places, many of which irrespective of nl_strong But c_equ(48,:,:) is computed only if species(1)nl_strong Before the logic of the code is fixed, a patch is applied here
+ Here is the caller graph for this function:

◆ back_vel_tor()

subroutine, public equil_mod::back_vel_tor ( real, intent(in)  sigmat,
real, intent(in)  chi,
real, intent(out)  ue_phi 
)
Bug:
LV: back_vel_tor is called from several places, many of which irrespective of nl_strong But c_equ(47,:,:) is computed only if species(1)nl_strong Before the logic of the code is fixed, a patch is applied here
+ Here is the caller graph for this function:

◆ bderivs()

subroutine, public equil_mod::bderivs ( real, intent(in)  s,
real, intent(in)  chi,
real, intent(out)  dBds,
real, intent(out)  dBdchi,
real, intent(out)  absb 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ bin_vol_loop()

subroutine equil_mod::bin_vol_loop ( integer, intent(in)  i,
integer, intent(in)  zirqpts,
real, dimension(10), intent(in)  zqp,
real, dimension(10), intent(in)  zqw,
real, intent(in)  zdtheta,
real, dimension(1:diag%nbin_theta2d+1), intent(in)  ztheta_grd 
)
private
Parameters
[in]iRadial bin number
[in]zirqptsNumber of quadrature points in s
[in]zdthetaInterval length in theta
[in]zqpQuadrature point in s
[in]zqwQuadrature weights
[in]ztheta_grdGrid equidistant in theta*
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ build_bin_vol()

subroutine equil_mod::build_bin_vol
private

Compute volume and surface of a radial bin.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ build_zpsi_grd()

subroutine equil_mod::build_zpsi_grd
private

Build psi grid for the binning.

+ Here is the caller graph for this function:

◆ build_zpsi_grd_island()

subroutine equil_mod::build_zpsi_grd_island
private
Note
seems like zdpsi_0 should be reset to its original value ALS
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ calc_ftrap()

real function, public equil_mod::calc_ftrap ( real, intent(in)  s,
real, intent(in)  theta,
integer, intent(in)  itrap 
)

Local fraction of trapped particles.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ calculate_other_normalizations()

subroutine equil_mod::calculate_other_normalizations
private
Bug:
zvvt2, zpvt2, and zpkkt2 should probably be set to 0 at the beginning of this loop, not the i loop - ALS
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ calculate_ubulk()

subroutine equil_mod::calculate_ubulk

Calculate the ubulk and ubulk_prime look up tables.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ calculate_vol_coord()

subroutine equil_mod::calculate_vol_coord
private
+ Here is the caller graph for this function:

◆ coeff_axis()

subroutine equil_mod::coeff_axis
+ Here is the caller graph for this function:

◆ compute_bin_vol()

subroutine, public equil_mod::compute_bin_vol ( real, intent(in)  stmin,
real, intent(in)  zds,
integer, intent(in)  stbin,
real, intent(in)  chitmin,
real, intent(in)  zdchi,
integer, intent(in)  chitbin,
real, intent(in)  zdphi 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ create_equil()

subroutine, public equil_mod::create_equil
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ create_psi()

subroutine equil_mod::create_psi
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ curl_ue()

subroutine, public equil_mod::curl_ue ( real, intent(in)  sigmat,
real, intent(in)  chi,
real, intent(out)  X,
real, intent(out)  Y,
real, intent(out)  Z 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dump_equil()

subroutine equil_mod::dump_equil

Write equilibrium quantities in the hdf5 file format.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dump_equil_strong()

subroutine equil_mod::dump_equil_strong
private
+ Here is the caller graph for this function:

◆ equil_absb()

pure real function, public equil_mod::equil_absb ( real, intent(in)  s,
real, intent(in)  chi 
)

Returns the norm of the equilibrium magnetic field.

Returns the norm of the equilibrium magnetic field at position (s,chi) using a bilinear interpolation

Parameters
[in]sRadial position
[in]chiPoloidal position
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_addpbst()

real function, public equil_mod::equil_addpbst ( real, intent(in)  s,
real, intent(in)  chi 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_aux()

subroutine, public equil_mod::equil_aux
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_backfields()

subroutine, public equil_mod::equil_backfields ( real, intent(in)  s,
real, intent(in)  chi,
real, intent(out)  pot,
real, intent(out)  es,
real, intent(out)  echi 
)
+ Here is the caller graph for this function:

◆ equil_backfields1d()

subroutine, public equil_mod::equil_backfields1d ( real, intent(in)  psi,
real, intent(out)  pot,
real, intent(out)  epsi 
)
+ Here is the caller graph for this function:

◆ equil_brotb()

real function, public equil_mod::equil_brotb ( real, intent(in)  s,
real, intent(in)  chi 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_coef_sc()

subroutine, public equil_mod::equil_coef_sc ( real, intent(in)  s,
real, intent(in)  chi,
real, intent(out)  zr,
real, intent(out)  zpsidr,
real, intent(out)  zpsidz,
real, intent(out)  zB,
real, intent(out)  zhchi,
real, intent(out)  zhphi,
real, dimension(3), intent(out)  zgrB,
real, intent(out)  addpchi,
real, intent(out)  addpphi,
real, intent(out)  brotb,
real, intent(out)  divh,
real, dimension(2), intent(out)  grads,
real, dimension(2), intent(out)  gradchi 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_comps()

subroutine equil_mod::equil_comps ( real, intent(in)  s,
real, intent(in)  chi,
integer, dimension(:), intent(inout)  comp_no,
real, dimension(:), intent(inout)  out 
)
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_dmaxb()

real function, public equil_mod::equil_dmaxb ( real, intent(in)  st)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_h()

subroutine, public equil_mod::equil_h ( real, intent(in)  px,
real, intent(in)  py,
real, dimension(3), intent(out)  h 
)

◆ equil_hchi()

real function, public equil_mod::equil_hchi ( real, intent(in)  s,
real, intent(in)  chi 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_maxb()

real function, public equil_mod::equil_maxb ( real, intent(in)  st)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_move_sc()

pure subroutine, public equil_mod::equil_move_sc ( real, intent(in)  s,
real, intent(in)  chi,
real, intent(out)  zr,
real, intent(out)  ztprime,
real, intent(out)  zB,
real, dimension(3), intent(out)  zgrB,
real, intent(out)  zdivh,
real, dimension(3), intent(out)  zh,
real, intent(out)  addpBst,
real, dimension(3), intent(out)  addp,
real, dimension(3), intent(out)  exh,
real, intent(out)  ztsubB,
real, intent(out)  addvpa 
)

Compute quantities in curvilinear coordinates needed during time evolution by bilinear interpolation.

Parameters
[in]sRadial coordinate \(s\)
[in]chiPoloidal coordinate
[out]zgrb\((h\wedge\nabla b/b)\cdot \nabla s\), \( (h\wedge\nabla b/b)\cdot \nabla\chi\), and \( (h\wedge\nabla b/b)\cdot \nabla \phi\)
[out]exh\(T(\psi)/J\_sB \), \(\nabla s \cdot \nabla \psi /(Br^2) \), and \(\nabla \psi \cdot \nabla \chi /(Br^2)\)
[out]zrRadial coordinate \(r\)
[out]ztprime\(\frac{dT(\psi)}{d\psi}\)
[out]zbMagnetic field intensity
[out]zdivhDivergence of \(h\)
[out]zh0.0, \(h\cdot \nabla\chi\), \(h\cdot \nabla\phi\)
[out]addpbstAdditional term for \(B^\star\)
[out]addp0.0, \( h \wedge h \wedge (\nabla\wedge B)/B \cdot \nabla \chi\), \( h \wedge h \wedge (\nabla\wedge B)/B \cdot \nabla \phi\)
[out]ztsubb\(T(\psi)/B\)
[out]addvpa\(p'(\psi) T(\psi) dB/d\chi /(J\_\psi B^4)\)
Todo:
Commented out these five that are not being used - remove? - ALS
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_move_strong()

subroutine, public equil_mod::equil_move_strong ( real, intent(in)  s,
real, intent(in)  chi,
real, intent(out)  due2dsigma,
real, intent(out)  due2dchi,
real, intent(out)  dBdsigma,
real, intent(out)  dBdchi 
)
Parameters
[in]sInterpolate values from equilibrium grid that are used in strong flow eqn of motion
[in]chiInterpolate values from equilibrium grid that are used in strong flow eqn of motion
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_perp_vec()

subroutine, public equil_mod::equil_perp_vec ( real, intent(in)  s,
real, intent(in)  chi,
real, intent(out)  hy,
real, intent(out)  hz,
real, intent(out)  grsigma2,
real, intent(out)  grchi2,
real, intent(out)  grsigmagrchi,
real, intent(out)  J_s,
real, intent(out)  r 
)
Parameters
[in]sReturns values required in calculated the components of (h x {h x A})
[in]chiReturns values required in calculated the components of (h x {h x A})
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_pot()

subroutine, public equil_mod::equil_pot ( real, intent(in)  sigmat,
real, intent(in)  chi,
real, intent(out)  es_back 
)
+ Here is the call graph for this function:

◆ equil_pp()

real function, public equil_mod::equil_pp ( real, intent(in)  s)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_quants()

real function, dimension(size(quant_list,1)) equil_mod::equil_quants ( real, intent(in)  s,
real, intent(in)  chi,
integer, dimension(:), intent(in)  quant_list 
)
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_s()

real function, public equil_mod::equil_s ( real, intent(in)  px,
real, intent(in)  py 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_strong_vdr()

subroutine, public equil_mod::equil_strong_vdr ( real, intent(in)  sigmat,
real, intent(in)  chi,
real, intent(out)  duphidpsi,
real, intent(out)  duphidchi 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_tob()

pure real function, public equil_mod::equil_tob ( real, intent(in)  s,
real, intent(in)  chi 
)

Returns R*B_tor/B.

Returns the R*B_tor/B at position (s,chi) using a bilinear interpolation

Parameters
[in]sRadial position
[in]chiPoloidal position
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_tprime()

real function, public equil_mod::equil_tprime ( real, intent(in)  s,
real, intent(in)  chi 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ equil_ubulk()

real function, public equil_mod::equil_ubulk ( real, intent(in)  s_val,
integer, intent(in)  isp 
)
Parameters
[in]s_vals coordinate
[in]ispspecies of the markers
+ Here is the caller graph for this function:

◆ equil_ubulk_prime()

real function, public equil_mod::equil_ubulk_prime ( real, intent(in)  s_val,
integer, intent(in)  isp 
)
Parameters
[in]s_vals coordinate
[in]ispspecies of the markers
+ Here is the caller graph for this function:

◆ find_chease_chi_index()

pure integer function equil_mod::find_chease_chi_index ( integer, intent(in)  imap,
real, intent(in)  cchi 
)
private

Given a value of chi, and an initial guess, find the index of the closest value in CHI_CHEASE.

Parameters
[in]imapInitial guess of index
[in]cchiGiven chi
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ find_chease_s_index()

pure integer function equil_mod::find_chease_s_index ( integer, intent(in)  imap,
real, intent(in)  s 
)
private

Given a value of s, and an initial guess, find the index of the closest value in S_CHEASE.

Parameters
[in]imapInitial guess of index
[in]sGiven s $acc routine (find_index) seq
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ find_index()

pure integer function equil_mod::find_index ( real, dimension(:), intent(in)  dumarray,
integer, intent(in)  imap,
real, intent(in)  s 
)
private

Given a value, and an initial guess, find the index of the closest value in a CHEASE array.

Parameters
[in]imapInitial guess of index
[in]sGiven s
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ fitbound_v()

real function, public equil_mod::fitbound_v ( real, intent(in)  zr)

◆ func_alphab_fsa()

real function, public equil_mod::func_alphab_fsa ( real, intent(in)  ss)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ func_b_pszs()

real function, public equil_mod::func_b_pszs ( real, intent(in)  ss)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ func_sigma()

real function, public equil_mod::func_sigma ( real, intent(in)  ss)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ func_sigmab()

real function, public equil_mod::func_sigmab ( real, intent(in)  ss)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ func_sigmatprimeob()

real function, public equil_mod::func_sigmatprimeob ( real, intent(in)  ss)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ func_torpsi()

real function, public equil_mod::func_torpsi ( real, intent(in)  ss)

Get toroidal flux.

Parameters
[in]ssRadial position
Returns
Toroidal flux
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ func_tprimeob_pszs()

real function, public equil_mod::func_tprimeob_pszs ( real, intent(in)  ss)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_chi()

real function, public equil_mod::get_chi ( real, intent(in)  s,
real, intent(in)  theta 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_comp()

real function, dimension(2), public equil_mod::get_comp ( real, intent(in)  s,
real, intent(in)  chi 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_fdfds()

subroutine, public equil_mod::get_fdfds ( real, intent(in)  s,
real, intent(out)  F,
real, intent(out)  dFds 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_gradb()

real function, dimension(2), public equil_mod::get_gradb ( real, intent(in)  px,
real, intent(in)  py 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_gradients1()

pure subroutine equil_mod::get_gradients1 ( real, intent(in)  s,
real, intent(in)  chi,
real, dimension(2), intent(out)  grads,
real, dimension(2), intent(out)  gradchi,
real, intent(out)  gradphi 
)
private

◆ get_gradientsn()

pure subroutine equil_mod::get_gradientsn ( real, dimension(n), intent(in)  s,
real, dimension(n), intent(in)  chi,
integer, intent(in)  n,
real, dimension(1:2,n), intent(out)  grads,
real, dimension(1:2,n), intent(out)  gradchi,
real, dimension(n), intent(out)  gradphi 
)
private

◆ get_gradpsi()

real function, dimension(2), public equil_mod::get_gradpsi ( real, intent(in)  px,
real, intent(in)  py 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_grhphi()

real function, dimension(2), public equil_mod::get_grhphi ( real, intent(in)  px,
real, intent(in)  py 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_larm_coeff()

subroutine, public equil_mod::get_larm_coeff ( real, intent(in)  s,
real, intent(in)  chi,
real, intent(out)  larmsc,
real, intent(out)  larmchic,
real, intent(out)  larmchis 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_larm_coeffn()

subroutine, public equil_mod::get_larm_coeffn ( real, intent(in)  s,
real, intent(in)  chi,
real, dimension(:), intent(out)  larmsc,
real, dimension(:), intent(out)  larmchic,
real, dimension(:), intent(out)  larmchis 
)

Compute coefficients for particle position by bilinear interpolation.

Parameters
[in]sRadial position of the marker's GC
[in]chiPoloidal position of the marker's GC
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_nbars()

subroutine equil_mod::get_nbars ( integer, intent(in)  isp,
real, intent(out)  cnorm,
real, intent(out)  cnorm2 
)
private

Calculate average density value \bar{n} for normalization.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_nref()

subroutine equil_mod::get_nref
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_psi_of_r()

real function, public equil_mod::get_psi_of_r ( real, intent(in)  zrho)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_qmin()

subroutine, public equil_mod::get_qmin ( real, intent(out)  sqmin,
real, intent(out)  qmin 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_rho()

real function equil_mod::get_rho ( real, intent(in)  s,
real, intent(in)  theta 
)
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_rz()

subroutine, public equil_mod::get_rz ( real, intent(in)  s,
real, intent(in)  chi,
real, intent(out)  r,
real, intent(out)  z 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_theta()

real function, public equil_mod::get_theta ( real, intent(in)  s,
real, intent(in)  chi 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get_vth_psi()

real function, public equil_mod::get_vth_psi ( real, intent(in)  zpsit,
integer, intent(in)  isp 
)
+ Here is the call graph for this function:

◆ getdens_corr()

real function, public equil_mod::getdens_corr ( real, intent(in)  psit)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getdn_corr()

pure subroutine, public equil_mod::getdn_corr ( real, intent(in)  psit,
real, intent(out)  dncorr 
)
+ Here is the caller graph for this function:

◆ gtgp_xy()

real function, public equil_mod::gtgp_xy ( real, intent(in)  px,
real, intent(in)  py 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ impose_quasineutrality()

subroutine equil_mod::impose_quasineutrality
private
+ Here is the caller graph for this function:

◆ impose_quasineutrality_mks()

subroutine equil_mod::impose_quasineutrality_mks
private
+ Here is the caller graph for this function:

◆ init_dens_profile()

subroutine, public equil_mod::init_dens_profile ( integer, intent(in)  worktype,
integer, intent(in)  isp,
real, dimension(:), intent(inout), optional  zf_av,
real, dimension(:), intent(inout), optional  z_den 
)
+ Here is the caller graph for this function:

◆ init_jacobian_island()

subroutine equil_mod::init_jacobian_island
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ init_profiles()

subroutine equil_mod::init_profiles
private

Define equilibrium profiles (density, temperature and parallel momentum)

THIS works only for bulk ions and electrons. Other species better have nsel_species /= 6 SSAAR

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ int_jacob()

subroutine equil_mod::int_jacob
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ jacob()

real function, public equil_mod::jacob ( real, intent(in)  s,
real, intent(in)  chi 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ jacob_tsp()

real function, public equil_mod::jacob_tsp ( real, intent(in)  s,
real, intent(in)  chi 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ jacobderivative()

real function, public equil_mod::jacobderivative ( real, intent(in)  s,
real, intent(in)  chi 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ load_omega()

subroutine equil_mod::load_omega
private

read hdf5 file, get omega

Interpolate \Omega onto equilibrium grid

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ load_profiles()

subroutine equil_mod::load_profiles ( integer, intent(in)  isp)
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_equil_sc_coeff()

subroutine equil_mod::make_equil_sc_coeff
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_equil_sc_coeff_chease()

subroutine equil_mod::make_equil_sc_coeff_chease
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_equil_strong()

subroutine equil_mod::make_equil_strong
private

Computes quantities needed during time evolution on a (s,chi) grid.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_toroidal_flow_potential()

subroutine, public equil_mod::make_toroidal_flow_potential ( real, dimension(0:ngmax), intent(out)  potential,
logical, intent(in)  write_exb_diagnostics,
real, intent(in)  time 
)

Load a toroidal angular frequency profile given as an arbitrary set of points, and calculate the background potential to give this rotation. Toroidal rotation profile specified in prof_file (/data/omega), with npsi_profile points (in /data/NPSI). Omega should be in units of radians/cyclotron frequency. Designed for general coordinate system and doesn't make large-aspect ratio assumptions. Uses the following input parameters: nsel_pot_profile=NSEL_POT_PROF_FILE, flow_scale, prof_file.

Given a toroidal angular frequency profile, we want to calculate the electrostatic potential associated with the perpendicular part (the parallel part is handled by the equilibrium distribution function).

A toroidal flow, \(v_\Omega = \Omega R\), has vector components: \( v_\Omega = (v\cdot\nabla\varphi)\mathrm{e}_\varphi = \Omega \mathrm{e}_\varphi \)

Decompose into parallel and perpendicular components with: \( v_\Omega = (v_\Omega \cdot \hat{b}) \hat{b} - \hat{b}\times(\hat{b}\times v_\Omega) \)

The perpendicular part is: \( -\Omega b^{\theta_*} b^\varphi g_{\varphi \varphi}\mathrm{e}_{\theta_*} + \Omega(b^{\theta_*})^2 g_{{\theta_*} {\theta_*}}\mathrm{e}_\varphi \)

where \(g_{x y}\) is the \(x,y\) component of the covariant metric tensor.

We can then equate components of this term to the components of the \(E \times B\) velocity to find the electric field, and then integrate that to find the potential

read hdf5 file, get omega

Loop over s at one poloidal angle - potential is a flux function

Get \Omega on higher-resolution grid

(theta_*, theta_*) component of metric tensor

Get magnetic equilibrium quantities

Calculate ExB and parallel velocity components

Electric field from theta_* or phi component of ExB

Get physical values of different components

Reconstruct toroidal angular velocity, sanity check

Normalise the electric field before computing the potential

Integrate the electric field to find the potential

Write out various quantities, creating the datasets first if need be

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ norm1()

subroutine equil_mod::norm1
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ normalize_profiles()

subroutine equil_mod::normalize_profiles
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ profile_i()

real function equil_mod::profile_i ( real, intent(in)  st,
real, intent(in)  kappa_x,
real, intent(in)  width,
real, intent(in)  peak,
logical, intent(in)  grad 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ profiles()

subroutine, public equil_mod::profiles ( integer, intent(in)  isp,
real, intent(in)  psi,
real, intent(out)  tval,
real, intent(out)  tgrad,
real, intent(out)  nval,
real, intent(out)  ngrad,
real, intent(out)  vpval,
real, intent(out)  vpgrad 
)

Get equilibrium profiles and gradients.

Parameters
[in]ispSpecies under consideration
[in]psiRadial position
[out]tvalTemperature
[out]tgradTemperature gradient
[out]nvalDensity
[out]ngradDensity gradient
[out]vpvalParallel velocity
[out]vpgradParallel velocity gradient
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ profiles_sh()

subroutine, public equil_mod::profiles_sh ( integer, intent(in)  isp,
real, intent(in)  psi,
real, intent(out)  nishval 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ qbar()

subroutine equil_mod::qbar ( real, intent(in)  zrad,
real, intent(out)  zq,
real, intent(out)  zdqdrad 
)
private

Get pseudo-safety factor and its derivative.

+ Here is the caller graph for this function:

◆ qchi()

subroutine, public equil_mod::qchi ( real, intent(in)  radvar,
real, intent(out)  qout,
character(len=*), intent(in), optional  strsel 
)

Get q profile by linear interpolation.

Parameters
[in]radvarRadial position
[out]qoutOuptut safety factor at radial position
[in]strselOptional value to switch from \(\rho_{vol}\) to \(s\)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ read_equil_ah()

subroutine equil_mod::read_equil_ah
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ read_equil_cpo()

subroutine equil_mod::read_equil_cpo
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ read_equil_hdf5()

subroutine, public equil_mod::read_equil_hdf5

PSI in equilbrium is 2pi * poloidal magnetic flux in some versions of CHEASE

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ read_equil_ntprofiles()

subroutine equil_mod::read_equil_ntprofiles
private
Note
The density seems to be normalized to n(speak) and not nbar
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ s2rad()

subroutine, public equil_mod::s2rad ( real, intent(in)  ps,
real, intent(out)  prad,
real, intent(out)  pdrds 
)

Convert \(s=\sqrt(\psi/\psi_{edge})\) in \(\rho/a_{mid}\) and gives \(d(\rho/a_{mid})/ds\).

Parameters
[in]psRadial \(s\) coordinate
[out]pdrdsDerivative of \(\rho/a_{mid}\) with repsect to \(s\)
[out]pradConverted radial coordinate
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ s2rad_adhoc()

subroutine equil_mod::s2rad_adhoc ( real, intent(in)  ps,
real, intent(out)  prad,
real, intent(out)  pdrds 
)
private

Compute s->rho_vol analytically according to q-profile.

Parameters
[in]psRadial coordinate in s
[out]pradRadial coordinate in rho_vol
[out]pdrdsDerivative of rho_vol with respect to s
+ Here is the caller graph for this function:

◆ s2rad_mhd()

subroutine equil_mod::s2rad_mhd ( real, intent(in)  ps,
real, intent(out)  prad,
real, intent(out)  pdrds 
)
private

Compute s->rho_vol by linear interpolation with CHEASE grids.

Parameters
[in]psRadial coordinate in s
[out]pradRadial coordinate in rho_vol
[out]pdrdsDerivative of rho_vol with respect to s
+ Here is the caller graph for this function:

◆ s_of_q()

real function, public equil_mod::s_of_q ( real, intent(in)  zq)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sc2xy()

subroutine, public equil_mod::sc2xy ( real, intent(in)  s,
real, intent(in)  theta,
real, intent(out)  x,
real, intent(out)  y 
)

◆ sc2xy_chease()

subroutine, public equil_mod::sc2xy_chease ( real, intent(in)  s,
real, intent(in)  theta,
real, intent(out)  x,
real, intent(out)  y 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sc2xy_sincos()

subroutine, public equil_mod::sc2xy_sincos ( real, intent(in)  s,
real, intent(in)  cost,
real, intent(in)  sint,
real, intent(out)  x,
real, intent(out)  y 
)

◆ sc2xyn()

subroutine equil_mod::sc2xyn ( real, dimension(:), intent(in)  s,
real, dimension(:), intent(in)  theta,
real, dimension(:), intent(out)  x,
real, dimension(:), intent(out)  y,
integer, intent(in)  n 
)
private

◆ sech()

real function equil_mod::sech ( real, intent(in)  x)
private
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ set_back_pot()

subroutine equil_mod::set_back_pot
private

Set the background potential: various options depending on input flags.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ set_corr_axis()

subroutine equil_mod::set_corr_axis
private
+ Here is the caller graph for this function:

◆ set_n_corr()

subroutine equil_mod::set_n_corr
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ set_profiles_mks()

subroutine equil_mod::set_profiles_mks
private

◆ xy2sc()

subroutine, public equil_mod::xy2sc ( real, intent(in)  x,
real, intent(in)  y,
real, intent(out)  s,
real, intent(out)  chi_out 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ a_1dprof

real, dimension(:,:), allocatable, target, save equil_mod::a_1dprof
private

◆ a_equ

real, dimension(:,:,:), allocatable, save, public equil_mod::a_equ

◆ a_midn

real, save, public equil_mod::a_midn

◆ ageom

real, dimension(:), allocatable, save equil_mod::ageom
private

◆ alphab_fsa

real, dimension(:), allocatable, save equil_mod::alphab_fsa
private

◆ alphain

real, dimension(:), allocatable, save, public equil_mod::alphain

◆ alphain0

real, dimension(:), allocatable, save, public equil_mod::alphain0

◆ b_norm

real, save, public equil_mod::b_norm

◆ beta_pic

real, dimension(:), allocatable, save equil_mod::beta_pic
private

◆ bin_helical_ni

real, dimension(:), allocatable, save equil_mod::bin_helical_ni
private

◆ bin_helical_ti

real, dimension(:), allocatable, save equil_mod::bin_helical_ti
private

◆ bin_surf

real, dimension(:), allocatable, save, public equil_mod::bin_surf

◆ bin_vol

real, dimension(:), allocatable, save, public equil_mod::bin_vol

◆ bin_vol_2d

real, dimension(:,:), allocatable, save, public equil_mod::bin_vol_2d

◆ bin_vol_3d

real, dimension(:,:), allocatable, save, public equil_mod::bin_vol_3d

◆ bin_vol_3d_inv

real, dimension(:,:), allocatable, save, public equil_mod::bin_vol_3d_inv

◆ bin_vol_hel

real, dimension(:,:), allocatable, save equil_mod::bin_vol_hel
private

◆ bmax_c

real, save, public equil_mod::bmax_c

◆ bmax_s

real, dimension(:), allocatable, save equil_mod::bmax_s
private

◆ bmin_c

real, save, public equil_mod::bmin_c

◆ c_equ

real, dimension(:,:,:), allocatable, save equil_mod::c_equ
private

◆ c_psi0corr

real, save, public equil_mod::c_psi0corr

◆ chi_chease

real, dimension(:), allocatable, save equil_mod::chi_chease
private

◆ chibmax

real, save, public equil_mod::chibmax

◆ chibmax0

real, save, public equil_mod::chibmax0

◆ chibmin

real, save, public equil_mod::chibmin

◆ chibmin0

real, save, public equil_mod::chibmin0

◆ chigtab

real, dimension(:,:), allocatable, save equil_mod::chigtab
private

◆ corr_axis

real, save equil_mod::corr_axis
private

◆ d_equ

real, dimension(:,:,:), allocatable, save equil_mod::d_equ
private

◆ d_norm

real, save, public equil_mod::d_norm

◆ dpdpsi

real, dimension(:), allocatable, save equil_mod::dpdpsi
private

◆ dpsi_0

real, save equil_mod::dpsi_0
private

◆ dpsi_0inv

real, save equil_mod::dpsi_0inv
private

◆ dqdpsi

real, dimension(:), allocatable, save equil_mod::dqdpsi
private

◆ dqsdr

real, dimension(:), allocatable, save equil_mod::dqsdr
private

◆ drho

real, save equil_mod::drho
private

◆ drho_inv

real, save equil_mod::drho_inv
private

◆ drho_q

real, save equil_mod::drho_q
private

◆ drho_q_inv

real, save equil_mod::drho_q_inv
private

◆ drho_tor_norm

real, dimension(:), allocatable, save equil_mod::drho_tor_norm
private

◆ drhovnormds_chease

real, dimension(:), allocatable, save equil_mod::drhovnormds_chease
private

◆ ds

real, save equil_mod::ds
private

◆ ds_inv

real, save, public equil_mod::ds_inv

◆ dth

real, save equil_mod::dth
private

◆ dth_inv

real, save equil_mod::dth_inv
private

◆ e_equ

real, dimension(:,:,:), allocatable, save equil_mod::e_equ
private

◆ e_mid

real, save equil_mod::e_mid =1.0
private

◆ edge_rmax

real, save equil_mod::edge_rmax
private

◆ edge_rmin

real, save equil_mod::edge_rmin
private

◆ edge_zmax

real, save equil_mod::edge_zmax
private

◆ edge_zmin

real, save equil_mod::edge_zmin
private

◆ ekinps

real, dimension(:), allocatable, save, public equil_mod::ekinps

◆ ekinps_tr

real, dimension(:), allocatable, save, public equil_mod::ekinps_tr

◆ equ_grid_hi

integer, parameter equil_mod::equ_grid_hi = 1
private

◆ equ_grid_lw

integer, parameter equil_mod::equ_grid_lw = 2
private

◆ equ_grid_offset

real, parameter equil_mod::equ_grid_offset = 1.5
private

◆ extent

real, parameter equil_mod::extent =0.1
private

◆ f_psi

real, dimension(:), allocatable, save equil_mod::f_psi
private

◆ fdfdpsi

real, dimension(:), allocatable, save equil_mod::fdfdpsi
private

◆ fonbmax_c

real, save, public equil_mod::fonbmax_c

◆ fonbmin_c

real, save, public equil_mod::fonbmin_c

◆ fpsin

real, save, public equil_mod::fpsin

◆ gea_midn

real, save equil_mod::gea_midn
private

◆ gedc

real, save equil_mod::gedc
private

◆ gedc_inv

real, save equil_mod::gedc_inv
private

◆ gedr

real, save, public equil_mod::gedr

◆ gedr_inv

real, save, public equil_mod::gedr_inv

◆ geds

real, save equil_mod::geds
private

◆ geds_inv

real, save equil_mod::geds_inv
private

◆ gedz

real, save, public equil_mod::gedz

◆ gedz_inv

real, save, public equil_mod::gedz_inv

◆ ger_max

real, save, public equil_mod::ger_max

◆ ger_min

real, save, public equil_mod::ger_min

◆ gez_max

real, save equil_mod::gez_max
private

◆ gez_min

real, save, public equil_mod::gez_min

◆ gradgradne

real, dimension(:), allocatable, save equil_mod::gradgradne
private

◆ gradn_pic

real, dimension(:,:), allocatable, save equil_mod::gradn_pic
private

◆ gradt_pic

real, dimension(:,:), allocatable, save equil_mod::gradt_pic
private

◆ gradvp_pic

real, dimension(:,:), allocatable, save equil_mod::gradvp_pic
private

◆ hdf5_ioutgyro

integer equil_mod::hdf5_ioutgyro
private

◆ ichimax

integer, save, public equil_mod::ichimax

◆ ichimax0

integer, save, public equil_mod::ichimax0

◆ ichimin

integer, save, public equil_mod::ichimin

◆ ichimin0

integer, save, public equil_mod::ichimin0

◆ int1

real, dimension(:), allocatable, save equil_mod::int1
private

◆ jchiin

integer, dimension(:), allocatable, save, public equil_mod::jchiin

◆ jchiin0

integer, dimension(:), allocatable, save, public equil_mod::jchiin0

◆ kappae

real, dimension(:), allocatable, save equil_mod::kappae
private

◆ lambdatab

real, dimension(:,:), allocatable, save equil_mod::lambdatab
private

◆ lx_pic

real, dimension(:), allocatable, save equil_mod::lx_pic
private

◆ mhdn

real, dimension(:), allocatable, save equil_mod::mhdn
private

◆ mhdte

real, dimension(:), allocatable, save equil_mod::mhdte
private

◆ mhdti

real, dimension(:), allocatable, save equil_mod::mhdti
private

◆ n1dprof_pt

integer, save equil_mod::n1dprof_pt
private

◆ n_corr

real, dimension(:), allocatable, save equil_mod::n_corr
private

◆ n_pic

real, dimension(:,:), allocatable, save equil_mod::n_pic
private

◆ n_pic_mks

real, dimension(:,:), allocatable, save equil_mod::n_pic_mks
private

◆ nbar

real, dimension(:), allocatable, save, public equil_mod::nbar

◆ nbar_anu

real, dimension(:), allocatable, save equil_mod::nbar_anu
private

◆ nequ_1d

integer, parameter equil_mod::nequ_1d =4
private

◆ nequ_isl

integer, parameter equil_mod::nequ_isl =5
private

◆ nequ_qtt

integer, parameter equil_mod::nequ_qtt =28
private

◆ nequ_qtt_sc

integer, parameter equil_mod::nequ_qtt_sc =51
private

◆ nequ_qtt_sc_chease

integer, parameter equil_mod::nequ_qtt_sc_chease =18
private

◆ ngmax

integer, save, public equil_mod::ngmax

◆ ngmaxtheta

integer, save equil_mod::ngmaxtheta
private

◆ ni_shield

real, dimension(:), allocatable, save equil_mod::ni_shield
private

◆ nrho

integer, save equil_mod::nrho
private

◆ nrho_q

integer, save equil_mod::nrho_q
private

◆ p_psi

real, dimension(:), allocatable, save equil_mod::p_psi
private

◆ pot_back

real, dimension(:), allocatable, save equil_mod::pot_back
private

◆ profile_grid

integer, dimension(:), allocatable, save equil_mod::profile_grid
private

◆ psi0

real, save, public equil_mod::psi0

◆ psi_av

real, dimension(:), allocatable, save equil_mod::psi_av
private

◆ psi_av_hel

real, dimension(:,:), allocatable, save equil_mod::psi_av_hel
private

◆ psi_chease

real, dimension(:), allocatable, save equil_mod::psi_chease
private

◆ psi_g

integer, parameter equil_mod::psi_g =0
private

◆ psi_grd

real, dimension(:), allocatable, save equil_mod::psi_grd
private

◆ psi_of_r

real, dimension(:), allocatable, save equil_mod::psi_of_r
private

◆ psihe_grd

real, dimension(:), allocatable, save, public equil_mod::psihe_grd

◆ psihes

real, save, public equil_mod::psihes

◆ psinorm_chease

real, dimension(:), allocatable, save equil_mod::psinorm_chease
private

◆ psires

real, save, public equil_mod::psires

◆ pvol_norm

real, dimension(:), allocatable, save, public equil_mod::pvol_norm

◆ pvol_norm_tr

real, dimension(:), allocatable, save, public equil_mod::pvol_norm_tr

◆ q_fact1

real, save equil_mod::q_fact1
private

◆ q_fact2

real, save equil_mod::q_fact2
private

◆ q_psi

real, dimension(:), allocatable, save equil_mod::q_psi
private

◆ qs

real, dimension(:), allocatable, save equil_mod::qs
private

◆ r0_midn

real, save equil_mod::r0_midn
private

◆ rgeom

real, dimension(:), allocatable, save equil_mod::rgeom
private

◆ rhfs

real, save, public equil_mod::rhfs

◆ rho_g

integer, parameter equil_mod::rho_g =2
private

◆ rho_tor_norm

real, dimension(:), allocatable, save equil_mod::rho_tor_norm
private

◆ rhotab

real, dimension(:,:), allocatable, save equil_mod::rhotab
private

◆ rhovnorm_chease

real, dimension(:), allocatable, save equil_mod::rhovnorm_chease
private

◆ rmajor

real, save equil_mod::rmajor
private

◆ s_chease

real, dimension(:), allocatable, save equil_mod::s_chease
private

◆ sgrid_eq

real, dimension(:), allocatable, save, public equil_mod::sgrid_eq

◆ sigma_g

integer, parameter equil_mod::sigma_g =1
private

◆ sigmas

real, dimension(:,:), allocatable, save, public equil_mod::sigmas

◆ t_norm

real, save equil_mod::t_norm
private

◆ t_pic

real, dimension(:,:), allocatable, save equil_mod::t_pic
private

◆ t_pic_mks

real, dimension(:,:), allocatable, save equil_mod::t_pic_mks
private

◆ tbar

real, dimension(:), allocatable, save equil_mod::tbar
private

◆ thgrid_eq

real, dimension(:), allocatable, save, public equil_mod::thgrid_eq

◆ torpsitab

real, dimension(:), allocatable, save equil_mod::torpsitab
private

◆ ubulk_prime_s

real, dimension(:,:), allocatable, save equil_mod::ubulk_prime_s
private

◆ ubulk_s

real, dimension(:,:), allocatable, save equil_mod::ubulk_s
private

◆ volanu

real, dimension(:), allocatable, save, public equil_mod::volanu

◆ voldiag

real, dimension(:), allocatable, save, public equil_mod::voldiag

◆ volps

real, dimension(:), allocatable, save, public equil_mod::volps

◆ volps_tr

real, dimension(:), allocatable, save, public equil_mod::volps_tr

◆ voltor

real, dimension(:), allocatable, save, public equil_mod::voltor

◆ voltor_inv

real, dimension(:), allocatable, save, public equil_mod::voltor_inv

◆ volume

real, dimension(:), allocatable, save equil_mod::volume
private

◆ vp_pic

real, dimension(:,:), allocatable, save equil_mod::vp_pic
private

◆ width_is

real, save, public equil_mod::width_is

◆ xmag

real, save, public equil_mod::xmag

◆ ymag

real, save, public equil_mod::ymag

◆ zdpsi_0

real, public equil_mod::zdpsi_0

◆ zeff_pic

real, dimension(:), allocatable, save equil_mod::zeff_pic
private

◆ zefftmp_pic

real, dimension(:), allocatable, save equil_mod::zefftmp_pic
private

◆ zmajor

real, save equil_mod::zmajor
private

◆ znin

integer, save, public equil_mod::znin

◆ znisl

integer, save, public equil_mod::znisl

◆ znout

integer, save, public equil_mod::znout

◆ zpsi_grd

real, dimension(:), allocatable, save, public equil_mod::zpsi_grd