params_equi_flare_m Module

Module for parameters of the flare equilibrium type


Uses

  • module~~params_equi_flare_m~~UsesGraph module~params_equi_flare_m params_equi_flare_m FLARE_bspline3d FLARE_bspline3d module~params_equi_flare_m->FLARE_bspline3d FLARE_model FLARE_model module~params_equi_flare_m->FLARE_model iso_fortran_env iso_fortran_env module~params_equi_flare_m->iso_fortran_env module~error_handling_m error_handling_m module~params_equi_flare_m->module~error_handling_m module~precision_m precision_m module~params_equi_flare_m->module~precision_m module~screen_io_m screen_io_m module~params_equi_flare_m->module~screen_io_m module~status_codes_m status_codes_m module~params_equi_flare_m->module~status_codes_m module~error_handling_m->module~precision_m module~error_handling_m->module~screen_io_m module~error_handling_m->module~status_codes_m module~comm_handling_m comm_handling_m module~error_handling_m->module~comm_handling_m mpi mpi module~error_handling_m->mpi netcdf netcdf module~error_handling_m->netcdf module~precision_m->iso_fortran_env iso_c_binding iso_c_binding module~precision_m->iso_c_binding module~precision_m->mpi module~precision_m->netcdf module~screen_io_m->iso_fortran_env module~screen_io_m->module~precision_m module~screen_io_m->netcdf module~comm_handling_m->mpi

Used by

  • module~~params_equi_flare_m~~UsedByGraph module~params_equi_flare_m params_equi_flare_m module~flare_equilibrium_m flare_equilibrium_m module~flare_equilibrium_m->module~params_equi_flare_m module~equilibrium_factory_m equilibrium_factory_m module~equilibrium_factory_m->module~flare_equilibrium_m program~benchmark_helmholtz_solvers benchmark_helmholtz_solvers program~benchmark_helmholtz_solvers->module~equilibrium_factory_m program~diagnose_poincare diagnose_poincare program~diagnose_poincare->module~equilibrium_factory_m program~test_diffusion test_diffusion program~test_diffusion->module~equilibrium_factory_m

Variables

Type Visibility Attributes Name Initial
character(len=lmax_char), protected :: equi_flare_type = FLARE_TYPE_EQUI3D_MGRID

Flare equilibrium type, available: - FLARE_TYPE_EQUI3D_MGRID = 'equi3d_mgrid' (default) - FLARE_TYPE_EQUI3D_COILSET = 'equi3d_coilset' - FLARE_TYPE_EQUI3D_HINT = 'equi3d_hint' - FLARE_TYPE_EQUI2D_GEQDSK = 'geqdsk'

character(len=lmax_char), protected :: boundary_flare_type = 'none'

Type for boundary description, available: - 'none' (default) - 'kisslinger'

character(len=lmax_char), protected :: rho_flare_type = 'none'

Type for flux surface (rho) description, available: - 'none' (default) - 'kisslinger'

integer, protected :: spline_order = 4

Order for spline interpolation

character(len=lmax_char), protected :: bspline_data = FLARE_BSPLINE3D_MAGNETIC_FIELD

Data type to be interpolated, available: - FLARE_BSPLINE3D_MAGNETIC_FIELD = 'magnetic_field' (default) - FLARE_BSPLINE3D_VECTOR_POTENTIAL = 'vector_potential'

real(kind=FP), protected :: scale_bt = 1.0_FP

Scaling factor for toroidal field

real(kind=FP), protected :: scale_ip = 1.0_FP

Scaling factor for current

real(kind=FP), protected, dimension(nmax_amplitudes) :: amplitudes = 0.0_FP

Amplitudes for flare_equi3d

character(len=3), protected :: flare_units_system = 'SI'

Units used internally in flare equilibria, available - 'SI' (default) - 'CGS'

real(kind=FP), protected :: Rmin = 0.0_FP

Coilset min R value.

real(kind=FP), protected :: Rmax = 1.0_FP

Coilset max R value

real(kind=FP), protected :: Zmin = -1.0_FP

Coilset min Z value

real(kind=FP), protected :: Zmax = 1.0_FP

Coilset max Z value

real(kind=FP), protected :: rhomin = 0.0_FP

rho value of inner limiting flux surface

real(kind=FP), protected :: rhomax = 1.0_FP

rho value of outer limiting flux surface

character(len=lmax_char), protected :: flare_equi3d_path_mgrid

Path to mgrid file for equi3d

character(len=lmax_char), protected :: flare_equi3d_path_axis

Path to magnetic axis file for equi3d

character(len=lmax_char), protected :: flare_equi3d_path_bfield

Path to .bfield coilset data for equi3d coilset

character(len=lmax_char), protected :: flare_geqdsk_path

Path to eqdsk file for GEQDSK

character(len=lmax_char), protected :: flare_equi3d_path_hint

Path to .bfield hint file for equi3d hint

integer, protected :: group = -1

Chooses hint vacuum (0) or plasma (-1) equilibrium

real(kind=FP), protected :: bmax = 5.0_FP

Maximum magnetic field for bfield hint equilibrium

integer, protected :: nbnd_seg

Number of boundary segments

character(len=lmax_char), protected, dimension(nmax_bnds) :: bnd_paths = ''

Paths to files containing boundary segments

integer, protected, dimension(nmax_bnds) :: bnd_symms = 0

Symmetry of boundary segments - 0: no symmetry (default) - 1: tilt symmetry

character(len=lmax_char), protected :: flare_rho_dirpath = ''

Path to directory containing flux surface files

character(len=lmax_char), protected :: flare_rho_prefix = ''

File prefix of flux surface files

integer, protected :: rho_symms = 0

Symmetry of flux surfaces - 0: no symmetry (default) - 1: tilt symmetry


Subroutines

public subroutine read_equi_params_flare_type(filename)

Reads the equi_params_flare_type namelist from the given file

Arguments

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

Filepath to parameterfile

public subroutine write_equi_params_flare_type(filename)

Writes the equi_params_flare_type namelist

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in), optional :: filename

If present, filename, where to write, otherwise writes parameters to stdout

public subroutine read_flare_equi_params(filename)

Reads parameters for a specific equilibrium type of flare

Arguments

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

Filepath to parameterfile

public subroutine write_flare_equi_params(filename)

Writes parameters for a specific equilibrium type of flare

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in), optional :: filename

If present, filename, where to write, otherwise writes parameters to stdout

public subroutine read_flare_bnd_params(filename)

Reads parameters for describing boundary segments

Arguments

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

Filepath to parameterfile

public subroutine write_flare_bnd_params(filename)

Writes parameters for describing boundary segments

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in), optional :: filename

If present, filename, where to write, otherwise writes parameters to stdout

public subroutine read_flare_rho_params(filename)

Reads parameters for describing flux surfaces *rho)

Arguments

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

Filepath to parameterfile

public subroutine write_flare_rho_params(filename)

Writes parameters for describing rho segments

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in), optional :: filename

If present, filename, where to write, otherwise writes parameters to stdout