External sources
Initialises an individual source
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(source_individual_t), | intent(inout) | :: | self |
Instance of type |
||
| character(len=*), | intent(in) | :: | filename |
Filename to read parameters from |
Displays parameters of an individual source
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(source_individual_t), | intent(in) | :: | self |
Instance of type |
Parameters for none source
| procedure , public , :: init => init_source_none Subroutine | |
| procedure , public , :: display => display_source_none Subroutine |
Zonal adaptive source Damps zonal averaged quantities to prescribed profile
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| real(kind=GP), | public | :: | width | = | 1.0_GP |
Width of source (rho space) |
| procedure , public , :: eval_source_zonal Subroutine | |
| procedure , public , :: init => init_source_zonal Subroutine | |
| procedure , public , :: display => display_source_zonal Subroutine |
Source with constant rate (non adaptive)
| procedure , public , :: eval_source_constantrate Subroutine | |
| procedure , public , :: init => init_source_constantrate Subroutine | |
| procedure , public , :: display => display_source_constantrate Subroutine |
External sources
| procedure , public :: init => init_sources_external Subroutine | |
| procedure , public :: eval => eval_sources_external Subroutine |
Class for gaussian sources, contains set of individual source points
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| logical, | public | :: | source_gaussian_on |
Switch whether or not to use gaussian source module |
|||
| real(kind=GP), | public, | dimension(:), allocatable | :: | src_coeffs |
Precomputed coefficients used for computing localised sources during timestepping |
| final :: destructor |
| procedure , public , :: init => init_source_gaussian Subroutine | |
| procedure , public , :: set_coeffs Subroutine | |
| procedure , public , :: display => display_source_gaussian Subroutine | |
| procedure , public , :: eval_source_gaussian Subroutine |
Initialize gaussian source from input file
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(source_gaussian_t), | intent(inout) | :: | self |
Instance of class |
||
| character(len=*), | intent(in) | :: | filename |
Path to input file |
Compute the coefficient that matches the total input rate
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(source_gaussian_t), | intent(inout) | :: | self |
Instance of class |
||
| type(comm_handler_t), | intent(in) | :: | comm_handler |
Communicators |
||
| type(mesh_cart_t), | intent(inout) | :: | mesh_cano |
Mesh (canonical) within poloidal plane |
||
| type(parallel_map_t), | intent(in) | :: | map |
Parallel map |
||
| type(penalisation_t), | intent(in) | :: | penalisation_cano |
Penalisation (canonical) |
Compute neutrals density source from contributions of gaussian centers
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(source_gaussian_t), | intent(inout) | :: | self |
Instance of class |
||
| type(mesh_cart_t), | intent(inout) | :: | mesh |
Mesh (canonical or staggered) within poloidal plane |
||
| type(parallel_map_t), | intent(in) | :: | map |
Parallel map |
||
| real(kind=GP), | intent(inout), | dimension(mesh%get_n_points()) | :: | source_on_mesh |
Results of the source on the each mesh point |
|
| integer, | optional | :: | i_source |
Index of gaussian source to evaluate. If not provided, evaluates sum of all gaussian sources |
Display parameters related to the gas puff module
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(source_gaussian_t), | intent(in) | :: | self |
Instance of class |
Destructor
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(source_gaussian_t), | intent(inout) | :: | self |
Instance of the type |
Initialises (reads parameters) sources_external
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(sources_external_t), | intent(inout) | :: | self |
Instance of class |
Evaluates external sources
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(sources_external_t), | intent(inout) | :: | self |
Instance of class |
||
| type(comm_handler_t), | intent(in) | :: | comm_handler |
Communicators |
||
| class(equilibrium_storage_t), | intent(in) | :: | equi_storage |
Equilibrium storage |
||
| type(mesh_cart_t), | intent(in) | :: | mesh |
Mesh within poloidal plane |
||
| type(polars_t), | intent(in) | :: | polars |
Polar grid and operators |
||
| real(kind=GP), | intent(in) | :: | tau |
Time, at output tau + dtau |
||
| type(variable_t), | intent(in) | :: | ne |
Electron density |
||
| type(variable_t), | intent(in) | :: | pot |
Electrostatic potential |
||
| type(variable_t), | intent(in) | :: | vort |
Generalised vorticity |
||
| type(variable_t), | intent(in) | :: | upar |
Parallel ion velocity |
||
| type(variable_t), | intent(in) | :: | jpar |
Parallel current |
||
| type(variable_t), | intent(in) | :: | apar |
Parallel electromagnetic potential |
||
| type(variable_t), | intent(in) | :: | te |
Electron temperature |
||
| type(variable_t), | intent(in) | :: | ti |
Ion temperature |
||
| real(kind=GP), | intent(inout), | dimension(mesh%get_n_points_inner()) | :: | src_ne |
Particel source on inner grid points |
|
| real(kind=GP), | intent(inout), | dimension(mesh%get_n_points_inner()) | :: | src_te |
Electron temperature source on inner grid points |
|
| real(kind=GP), | intent(inout), | dimension(mesh%get_n_points_inner()) | :: | src_ti |
Ion temperature source on inner grid points |
Initialises source=none
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(source_none_t), | intent(inout) | :: | self |
Instance of type |
||
| character(len=*), | intent(in) | :: | filename |
Filename to read parameters from |
Displays source_none parameters
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(source_none_t), | intent(in) | :: | self |
Instance of type |
Initialises zonal source
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(source_zonal_t), | intent(inout) | :: | self |
Instance of type |
||
| character(len=*), | intent(in) | :: | filename |
Filename to read parameters from |
Displays zonal source parameters
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(source_zonal_t), | intent(in) | :: | self |
Instance of type |
Evaluates zonal source
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(source_zonal_t), | intent(in) | :: | self |
Instance of type |
||
| class(equilibrium_storage_t), | intent(in) | :: | equi_storage |
Equilibrium storage |
||
| type(mesh_cart_t), | intent(in) | :: | mesh |
Mesh |
||
| type(polars_t), | intent(in) | :: | polars |
Polars |
||
| real(kind=GP), | intent(in), | dimension(polars%grid%get_nrho()) | :: | uzon |
Zonal values of quantity u that is sourced |
|
| real(kind=GP), | intent(inout), | dimension(mesh%get_n_points_inner()) | :: | src_u |
Source values on inner mesh points |
Initialises constantrate source
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(source_constantrate_t), | intent(inout) | :: | self |
Instance of type |
||
| character(len=*), | intent(in) | :: | filename |
Filename to read parameters from |
Displays constantrate source parameters
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(source_constantrate_t), | intent(in) | :: | self |
Instance of type |
Evaluates constantrate source
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(source_constantrate_t), | intent(in) | :: | self |
Instance of type |
||
| class(equilibrium_storage_t), | intent(in) | :: | equi_storage |
Equilibrium storage |
||
| type(mesh_cart_t), | intent(in) | :: | mesh |
Mesh |
||
| real(kind=GP), | intent(inout), | dimension(mesh%get_n_points_inner()) | :: | src_u |
Source values on inner mesh points |