Holds static data that is time independent.
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| logical, | protected | :: | static_data_is_initialized |
True if full static_data set is initialized |
|||
| class(equilibrium_t), | public, | allocatable | :: | equi |
Equilibrium |
||
| logical, | protected | :: | equi_is_initialized | = | .false. |
True if equi is initialized |
|
| type(mesh_cart_t), | public | :: | mesh_cano |
Mesh (canonical) within poloidal plane |
|||
| type(mesh_cart_t), | public | :: | mesh_stag |
Mesh (staggered) within poloidal plane |
|||
| type(multigrid_t), | public | :: | multigrid_cano |
Multigrid (canonical) |
|||
| type(multigrid_t), | public | :: | multigrid_stag |
Multigrid (staggered) |
|||
| logical, | protected | :: | multigrid_is_initialized | = | .false. |
True if multigrids and meshes are initialized |
|
| type(equilibrium_storage_t), | public, | target | :: | equi_on_cano |
Equilibrim quantities on canonical mesh |
||
| type(equilibrium_storage_t), | public, | pointer | :: | equi_on_stag | => | null() |
Equilibrim quantities on staggered mesh. Points to equi_on_cano for axisymmetric case and to equi_on_stag_mem for non-axisymmetric case |
| logical, | protected | :: | equi_on_mesh_is_initialized | = | .false. |
True, if equi_on_cano/stag are initialized |
|
| class(helmholtz_solver_t), | public, | allocatable, target | :: | field_solver_cano |
Elliptic 2D field solver on canonical mesh |
||
| class(helmholtz_solver_t), | public, | pointer | :: | field_solver_stag | => | null() |
Elliptic 2D field solver on staggered mesh Points to field_solver_cano for axisymmetric case and to field_solver_stag_mem for non-axisymmetric case |
| logical, | protected | :: | field_solver_is_initialized | = | .false. |
True, if field_solver is initialized |
|
| type(parallel_map_t), | public | :: | map |
Parallel map |
|||
| logical, | protected | :: | map_is_initialized | = | .false. |
True, if map is initialized |
|
| type(penalisation_t), | public, | target | :: | parbnd_immersed_cano |
Immersed boundaries on canonical mesh |
||
| type(penalisation_t), | public, | pointer | :: | parbnd_immersed_stag | => | null() |
Immersed boundaries on staggered mesh. Points to parbnd_immersed_cano for axisymmetric case and to parbnd_immersed_stag_mem for non-axisymmetric case |
| logical, | protected | :: | parbnd_immersed_is_initialized | = | .false. |
True, if parbnd_immersed is initialized |
|
| type(parbnd_taylor_t), | public, | target | :: | parbnd_taylor_cano |
Parallel boundary information based on taylor method for canonical mesh |
||
| type(parbnd_taylor_t), | public, | pointer | :: | parbnd_taylor_stag | => | null() |
parbnd_taylor on staggered mesh. Points to parbnd_taylor_cano for axisymmetric case and to parbnd_taylor_stag_mem for non-axisymmetric case |
| logical, | protected | :: | parbnd_taylor_is_initialized | = | .false. |
True, if parbnd_taylor is initialized |
|
| type(polars_t), | public, | target | :: | polars_cano |
Polar grid, map and |
||
| type(polars_t), | public, | pointer | :: | polars_stag | => | null() |
Polar grid, map and |
| logical, | protected | :: | polars_is_initialized | = | .false. |
True, if polars is initialized |
|
| type(parallel_target_flux_t), | public, | target | :: | parflux_utils_cano |
Parallel target flux markers and operators for canonical mesh |
||
| type(parallel_target_flux_t), | public, | pointer | :: | parflux_utils_stag | => | null() |
Parallel target flux markers and operators for staggered mesh Points to parflux_utils_cano for axisymmetric case and to parflux_utils_stag_mem for non-axisymmetric case |
| type(perp_bnd_flux_t), | public, | target | :: | perp_bnd_flux_cano |
Perpendicular flux utilities for canonical mesh |
||
| type(perp_bnd_flux_t), | public, | pointer | :: | perp_bnd_flux_stag | => | null() |
Perpendicular flux utilities for staggered mesh Points to perp_bnd_flux_cano for axisymmetric case and to perp_bnd_flux_stag_mem for non-axisymmetric case |
| logical, | protected | :: | bnd_flux_is_initialized | = | .false. |
True, if bnd_flux utilities are initialized |
|
| type(mask_data_t), | public, | target | :: | masks_cano |
Mask arrays for canonical mesh |
||
| type(mask_data_t), | public, | pointer | :: | masks_stag | => | null() |
Mask arrays for staggered mesh Points to masks_cano for axisymmetric case and to masks_stag_mem for non-axisymmetric case |
| logical, | protected | :: | masks_is_initialized | = | .false. |
True, if masks are initialized |
|
| integer, | protected | :: | cntrl_build_multigrid | = | BUILD_AND_WRITE |
Controls build and NetCDF I/O for multigrid/mesh |
|
| integer, | protected | :: | cntrl_build_equi_on_mesh | = | BUILD_AND_WRITE |
Controls build and NetCDF I/O for equilibrium storage on mesh |
|
| integer, | protected | :: | cntrl_build_map | = | BUILD_AND_WRITE |
Controls build and NetCDF I/O for map |
|
| integer, | protected | :: | cntrl_build_parbnd_immersed | = | BUILD_AND_WRITE |
Controls build and NetCDF I/O for parbnd_immersed |
|
| integer, | protected | :: | cntrl_build_parbnd_taylor | = | NONE |
Controls build and NetCDF I/O for parbnd_taylor |
|
| integer, | protected | :: | cntrl_build_polars | = | BUILD_AND_WRITE |
Controls build and NetCDF I/O for polars |
|
| integer, | protected | :: | cntrl_build_bnd_flux | = | NONE |
Controls build and NetCDF I/O for bnd_flux utilities |
|
| integer, | protected | :: | cntrl_build_masks | = | BUILD_AND_WRITE |
Controls build and NetCDF I/O for masks |
|
| integer, | protected | :: | cntrl_build_vtkmesh | = | NONE |
Controls build for vtk (3D visualisation) mesh Only available, if compiled with -DPARALLAX_ENABLE_VTK=ON |
|
| character(len=PATHLEN_MAX), | protected | :: | static_data_dirpath | = | 'trunk' |
Directory path where to read and/or write NetCDF files from |
|
| character(len=PATHLEN_MAX), | protected | :: | static_data_parpath | = | 'params_static_data.nml' |
Filepath where to read parameters for initialisation of static data |
|
| logical, | protected | :: | enable_debug_output | = | .true. |
Set to true, to activate more verbose output |
| enumerator | :: | NONE | = | 0 | Does not build component |
| enumerator | :: | BUILD_AND_WRITE | = | 1 | Builds component and writes it to NetCDF file |
| enumerator | :: | READ | = | 2 | Reads component from netdcf file |
| enumerator | :: | BUILD_NOWRITE | = | 3 | Builds component without NetCDF output |
Available values to control build and NetCDF I/O of individual components
Initializes equi as part of static data
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in), | optional | :: | par_filepath |
Filename, where to read equilibrium parameters from |
Initializes multigrid and mesh (canonical and staggered) as part of static data
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(comm_handler_t), | intent(in) | :: | comm_handler |
Communication handler |
||
| character(len=*), | intent(in), | optional | :: | par_filepath |
Filename, where to read multigrid parameters from |
|
| character(len=*), | intent(in), | optional | :: | nf90_filepath |
Filename, where to read/write multigrid NetCDF file, If not present NetCDF I/O happens to static_data_dirpath directory |
Initializes equi_on_mesh (canonical and staggered) as part of static data
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(comm_handler_t), | intent(in) | :: | comm_handler |
Communication handler |
||
| character(len=*), | intent(in), | optional | :: | nf90_filepath |
Filename, where to read/write equi_on_mesh NetCDF file, If not present NetCDF I/O happens to static_data_dirpath directory |
Initializes field_solver (canonical and staggered) as part of static data
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in), | optional | :: | par_filepath |
Filename, where to read field_solver parameters from |
Initializes parallel map as part of static data
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(comm_handler_t), | intent(in) | :: | comm_handler |
Communication handler |
||
| character(len=*), | intent(in), | optional | :: | par_filepath |
Filename, where to read map parameters from |
|
| character(len=*), | intent(in), | optional | :: | nf90_filepath |
Filename, where to read/write map NetCDF file, If not present NetCDF I/O happens to static_data_dirpath directory |
Initializes parbnd_immersed as part of static data
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(comm_handler_t), | intent(in) | :: | comm_handler |
Communication handler |
||
| character(len=*), | intent(in), | optional | :: | par_filepath |
Filename, where to read parbnd_immersed parameters from |
|
| character(len=*), | intent(in), | optional | :: | nf90_filepath |
Filename, where to read/write parbnd_immersed NetCDF file, If not present NetCDF I/O happens to static_data_dirpath directory |
Initializes parbnd_taylor as part of static data
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(comm_handler_t), | intent(in) | :: | comm_handler |
Communication handler |
||
| character(len=*), | intent(in), | optional | :: | par_filepath |
Filename, where to read parbnd_taylor parameters from |
|
| character(len=*), | intent(in), | optional | :: | nf90_filepath |
Filename, where to read/write parbnd_taylor NetCDF file, If not present NetCDF I/O happens to static_data_dirpath directory |
Initializes polars as part of static data
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(comm_handler_t), | intent(in) | :: | comm_handler |
Communication handler |
||
| character(len=*), | intent(in), | optional | :: | par_filepath |
Filename, where to read polars parameters from |
|
| character(len=*), | intent(in), | optional | :: | nf90_filepath |
Filename, where to read/write polars NetCDF file, If not present NetCDF I/O happens to static_data_dirpath directory |
Initializes bnd_flux as part of static data
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(comm_handler_t), | intent(in) | :: | comm_handler |
Communication handler |
||
| character(len=*), | intent(in), | optional | :: | par_filepath |
Filename, where to read bnd_flux parameters from |
|
| character(len=*), | intent(in), | optional | :: | nf90_filepath |
Filename, where to read/write bnd_flux NetCDF file, If not present NetCDF I/O happens to static_data_dirpath directory |
Initializes masks as part of static data
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(comm_handler_t), | intent(in) | :: | comm_handler |
Communication handler |
||
| character(len=*), | intent(in), | optional | :: | nf90_filepath |
Filename, where to read/write masks NetCDF file, If not present NetCDF I/O happens to static_data_dirpath directory |
Builds VTK mesh for 3D visualisation Functionality only available if compiled with -DENABLE_VTK=ON
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(comm_handler_t), | intent(in) | :: | comm_handler |
Communication handler |
||
| character(len=*), | intent(in), | optional | :: | par_filepath |
Filename, where to read VTK parameters from |
|
| character(len=*), | intent(in), | optional | :: | dirpath |
Directory, where to write VTK meshes to |
Initializes a complete static data set with all components
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(comm_handler_t), | intent(in) | :: | comm_handler |
Communication handler |
||
| character(len=*), | intent(in), | optional | :: | par_filepath |
Filename, where to read parameters for all components from |
Cleans up temporary data, that was used during initialization stage, and sets static_data_is_initialized to true
Reads parameters that control build of static data
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in), | optional | :: | par_filepath |
Filename, where to read control build parameters from |
Writes control build parameters of static data parameters to screen