equilibrium_factory_m Module

Module capable of creating equilibrium objects


Uses

  • module~~equilibrium_factory_m~~UsesGraph module~equilibrium_factory_m equilibrium_factory_m module~carthy_equilibrium_m carthy_equilibrium_m module~equilibrium_factory_m->module~carthy_equilibrium_m module~cerfons_equilibrium_m cerfons_equilibrium_m module~equilibrium_factory_m->module~cerfons_equilibrium_m module~circular_equilibrium_m circular_equilibrium_m module~equilibrium_factory_m->module~circular_equilibrium_m module~circular_toroidal_equilibrium_m circular_toroidal_equilibrium_m module~equilibrium_factory_m->module~circular_toroidal_equilibrium_m module~comm_handling_m comm_handling_m module~equilibrium_factory_m->module~comm_handling_m module~dommaschk_equilibrium_m dommaschk_equilibrium_m module~equilibrium_factory_m->module~dommaschk_equilibrium_m module~equilibrium_m equilibrium_m module~equilibrium_factory_m->module~equilibrium_m module~error_handling_m error_handling_m module~equilibrium_factory_m->module~error_handling_m module~flare_equilibrium_m flare_equilibrium_m module~equilibrium_factory_m->module~flare_equilibrium_m module~numerical_equilibrium_m numerical_equilibrium_m module~equilibrium_factory_m->module~numerical_equilibrium_m module~salpha_equilibrium_m salpha_equilibrium_m module~equilibrium_factory_m->module~salpha_equilibrium_m module~slab_equilibrium_m slab_equilibrium_m module~equilibrium_factory_m->module~slab_equilibrium_m module~status_codes_m status_codes_m module~equilibrium_factory_m->module~status_codes_m module~carthy_equilibrium_m->module~comm_handling_m ifport ifport module~carthy_equilibrium_m->ifport module~analytic_divertor_equilibrium_m analytic_divertor_equilibrium_m module~carthy_equilibrium_m->module~analytic_divertor_equilibrium_m module~constants_m constants_m module~carthy_equilibrium_m->module~constants_m module~descriptors_m descriptors_m module~carthy_equilibrium_m->module~descriptors_m module~elementary_functions_m elementary_functions_m module~carthy_equilibrium_m->module~elementary_functions_m module~precision_m precision_m module~carthy_equilibrium_m->module~precision_m module~screen_io_m screen_io_m module~carthy_equilibrium_m->module~screen_io_m module~cerfons_equilibrium_m->module~comm_handling_m module~cerfons_equilibrium_m->module~analytic_divertor_equilibrium_m module~cerfons_equilibrium_m->module~constants_m module~cerfons_equilibrium_m->module~descriptors_m module~cerfons_equilibrium_m->module~elementary_functions_m module~cerfons_equilibrium_m->module~precision_m module~cerfons_equilibrium_m->module~screen_io_m module~circular_equilibrium_m->module~equilibrium_m module~circular_equilibrium_m->module~error_handling_m module~circular_equilibrium_m->module~status_codes_m module~circular_equilibrium_m->module~constants_m module~circular_equilibrium_m->module~descriptors_m module~circular_equilibrium_m->module~elementary_functions_m module~params_equi_circular_m params_equi_circular_m module~circular_equilibrium_m->module~params_equi_circular_m module~circular_equilibrium_m->module~precision_m module~circular_equilibrium_m->module~screen_io_m module~circular_toroidal_equilibrium_m->module~equilibrium_m module~circular_toroidal_equilibrium_m->module~error_handling_m module~circular_toroidal_equilibrium_m->module~status_codes_m module~circular_toroidal_equilibrium_m->module~constants_m module~circular_toroidal_equilibrium_m->module~descriptors_m module~euclidean_geo_m euclidean_geo_m module~circular_toroidal_equilibrium_m->module~euclidean_geo_m module~kisslinger_m kisslinger_m module~circular_toroidal_equilibrium_m->module~kisslinger_m module~params_equi_circular_toroidal_m params_equi_circular_toroidal_m module~circular_toroidal_equilibrium_m->module~params_equi_circular_toroidal_m module~circular_toroidal_equilibrium_m->module~precision_m module~circular_toroidal_equilibrium_m->module~screen_io_m mpi mpi module~comm_handling_m->mpi module~dommaschk_equilibrium_m->module~equilibrium_m module~dommaschk_equilibrium_m->module~error_handling_m module~dommaschk_equilibrium_m->module~status_codes_m module~dommaschk_equilibrium_m->module~constants_m module~dommaschk_equilibrium_m->module~descriptors_m module~dommaschk_equilibrium_m->module~elementary_functions_m module~dommaschk_equilibrium_m->module~euclidean_geo_m module~fieldline_tracer_m fieldline_tracer_m module~dommaschk_equilibrium_m->module~fieldline_tracer_m module~interpolation_m interpolation_m module~dommaschk_equilibrium_m->module~interpolation_m module~dommaschk_equilibrium_m->module~kisslinger_m module~params_equi_dommaschk_m params_equi_dommaschk_m module~dommaschk_equilibrium_m->module~params_equi_dommaschk_m module~polygon_m polygon_m module~dommaschk_equilibrium_m->module~polygon_m module~dommaschk_equilibrium_m->module~precision_m module~dommaschk_equilibrium_m->module~screen_io_m module~equilibrium_m->module~precision_m module~error_handling_m->module~comm_handling_m module~error_handling_m->module~status_codes_m module~error_handling_m->module~precision_m module~error_handling_m->module~screen_io_m module~error_handling_m->mpi netcdf netcdf module~error_handling_m->netcdf module~flare_equilibrium_m->module~comm_handling_m module~flare_equilibrium_m->module~equilibrium_m module~flare_equilibrium_m->module~error_handling_m module~flare_equilibrium_m->module~status_codes_m FLARE_control FLARE_control module~flare_equilibrium_m->FLARE_control FLARE_model FLARE_model module~flare_equilibrium_m->FLARE_model iso_fortran_env iso_fortran_env module~flare_equilibrium_m->iso_fortran_env module~flare_equilibrium_m->module~descriptors_m module~flare_equilibrium_m->module~euclidean_geo_m module~flare_equilibrium_m->module~kisslinger_m module~params_equi_flare_m params_equi_flare_m module~flare_equilibrium_m->module~params_equi_flare_m module~flare_equilibrium_m->module~polygon_m module~flare_equilibrium_m->module~precision_m module~flare_equilibrium_m->module~screen_io_m moose_configparser moose_configparser module~flare_equilibrium_m->moose_configparser moose_error moose_error module~flare_equilibrium_m->moose_error moose_utils moose_utils module~flare_equilibrium_m->moose_utils module~numerical_equilibrium_m->module~comm_handling_m bspline_module bspline_module module~numerical_equilibrium_m->bspline_module module~numerical_equilibrium_m->iso_fortran_env module~numerical_equilibrium_m->module~constants_m module~numerical_equilibrium_m->module~descriptors_m module~divertor_equilibrium_m divertor_equilibrium_m module~numerical_equilibrium_m->module~divertor_equilibrium_m module~numerical_equilibrium_m->module~elementary_functions_m module~numerical_equilibrium_m->module~polygon_m module~numerical_equilibrium_m->module~precision_m module~numerical_equilibrium_m->module~screen_io_m module~numerical_equilibrium_m->netcdf module~salpha_equilibrium_m->module~comm_handling_m module~salpha_equilibrium_m->module~equilibrium_m module~salpha_equilibrium_m->module~error_handling_m module~salpha_equilibrium_m->module~status_codes_m module~salpha_equilibrium_m->module~constants_m module~salpha_equilibrium_m->module~descriptors_m module~params_equi_salpha_m params_equi_salpha_m module~salpha_equilibrium_m->module~params_equi_salpha_m module~salpha_equilibrium_m->module~precision_m module~salpha_equilibrium_m->module~screen_io_m module~slab_equilibrium_m->module~equilibrium_m module~slab_equilibrium_m->module~descriptors_m module~params_equi_slab_m params_equi_slab_m module~slab_equilibrium_m->module~params_equi_slab_m module~slab_equilibrium_m->module~precision_m module~slab_equilibrium_m->module~screen_io_m module~analytic_divertor_equilibrium_m->module~divertor_equilibrium_m module~analytic_divertor_equilibrium_m->module~precision_m module~constants_m->module~precision_m module~descriptors_m->module~screen_io_m module~divertor_equilibrium_m->module~equilibrium_m module~divertor_equilibrium_m->module~error_handling_m module~divertor_equilibrium_m->module~status_codes_m module~divertor_equilibrium_m->module~descriptors_m module~divertor_equilibrium_m->module~polygon_m module~divertor_equilibrium_m->module~precision_m module~divertor_equilibrium_m->module~screen_io_m module~elementary_functions_m->module~precision_m module~euclidean_geo_m->module~precision_m module~fieldline_tracer_m->module~comm_handling_m module~fieldline_tracer_m->module~equilibrium_m module~fieldline_tracer_m->module~error_handling_m module~fieldline_tracer_m->module~status_codes_m module~fieldline_tracer_m->module~precision_m module~fieldline_tracer_m->module~screen_io_m dop853_constants dop853_constants module~fieldline_tracer_m->dop853_constants dop853_module dop853_module module~fieldline_tracer_m->dop853_module module~interpolation_m->module~error_handling_m module~interpolation_m->module~status_codes_m module~interpolation_m->module~descriptors_m module~interpolation_m->module~precision_m module~interpolation_m->module~screen_io_m module~kisslinger_m->module~error_handling_m module~kisslinger_m->module~status_codes_m module~kisslinger_m->module~constants_m module~kisslinger_m->module~precision_m module~kisslinger_m->module~screen_io_m module~list_operations_m list_operations_m module~kisslinger_m->module~list_operations_m module~params_equi_circular_m->module~error_handling_m module~params_equi_circular_m->module~status_codes_m module~params_equi_circular_m->iso_fortran_env module~params_equi_circular_m->module~precision_m module~params_equi_circular_m->module~screen_io_m module~params_equi_circular_toroidal_m->module~error_handling_m module~params_equi_circular_toroidal_m->module~status_codes_m module~params_equi_circular_toroidal_m->iso_fortran_env module~params_equi_circular_toroidal_m->module~precision_m module~params_equi_circular_toroidal_m->module~screen_io_m module~params_equi_dommaschk_m->module~error_handling_m module~params_equi_dommaschk_m->module~status_codes_m module~params_equi_dommaschk_m->iso_fortran_env module~params_equi_dommaschk_m->module~precision_m module~params_equi_dommaschk_m->module~screen_io_m parallax_build_info_m parallax_build_info_m module~params_equi_dommaschk_m->parallax_build_info_m module~params_equi_flare_m->module~error_handling_m module~params_equi_flare_m->module~status_codes_m module~params_equi_flare_m->FLARE_model module~params_equi_flare_m->iso_fortran_env module~params_equi_flare_m->module~precision_m module~params_equi_flare_m->module~screen_io_m FLARE_bspline3d FLARE_bspline3d module~params_equi_flare_m->FLARE_bspline3d module~params_equi_salpha_m->module~error_handling_m module~params_equi_salpha_m->module~status_codes_m module~params_equi_salpha_m->iso_fortran_env module~params_equi_salpha_m->module~precision_m module~params_equi_salpha_m->module~screen_io_m module~params_equi_slab_m->module~error_handling_m module~params_equi_slab_m->module~status_codes_m module~params_equi_slab_m->iso_fortran_env module~params_equi_slab_m->module~precision_m module~params_equi_slab_m->module~screen_io_m module~polygon_m->module~comm_handling_m module~polygon_m->iso_fortran_env module~polygon_m->module~descriptors_m module~polygon_m->module~precision_m module~polygon_m->module~screen_io_m module~polygon_m->mpi module~polygon_m->netcdf ieee_arithmetic ieee_arithmetic module~polygon_m->ieee_arithmetic module~precision_m->iso_fortran_env module~precision_m->mpi module~precision_m->netcdf iso_c_binding iso_c_binding module~precision_m->iso_c_binding module~screen_io_m->iso_fortran_env module~screen_io_m->module~precision_m module~screen_io_m->netcdf module~list_operations_m->module~precision_m module~list_operations_m->module~screen_io_m

Used by

  • module~~equilibrium_factory_m~~UsedByGraph module~equilibrium_factory_m equilibrium_factory_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

Enumerations

enum, bind(c)

Enumerators

enumerator:: CARTHY = 0
enumerator:: CERFONS = 1
enumerator:: CIRCULAR = 2
enumerator:: NUMERICAL = 3
enumerator:: SLAB = 4
enumerator:: SALPHA = 5
enumerator:: DOMMASCHK = 6
enumerator:: CIRCULAR_TOROIDAL = 7
enumerator:: FLARE = 8

Description

Enum defining the different types of equilibria that can be created by the factory


Functions

public function get_equilibrium_identifier(eq_as_string) result(res)

Returns equilibrium identifier (see header) if prescribed as string

Arguments

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

Equilibrium type specified as string

Return Value integer


Subroutines

public subroutine create_equilibrium(res, identifier, filename, dbgout)

Creates the selected equilibrium specified by identifier

Arguments

Type IntentOptional Attributes Name
class(equilibrium_t), intent(out), allocatable :: res

Created equilibrium type

integer, intent(in) :: identifier

Integer specifying the equilibrium to create (see header)

character(len=*), intent(in), optional :: filename

Parameter file to read properties of the equilibrium from, if no parameter file is provided the equilibrium is initialized to default values. Default initialization is only allowed for CARTHY, CERFONS and CIRCULAR equilibria. The default initialization is suitable for unit testing.

integer, intent(in), optional :: dbgout

Integer specifying what equilibrium information to write to stdout