Stellarator-Tools
model::model_class Interface Reference

Base class representing a model. More...

Public Member Functions

PROCEDURE set_param => model_set_param
 
PROCEDURE set_grid_params => model_set_grid_params
 
PROCEDURE set_grid_profiles => model_set_grid_profiles
 
PROCEDURE get_param_id => model_get_param_id
 
PROCEDURE get_param_value => model_get_param_value
 
PROCEDURE get_param_name => model_get_param_name
 
PROCEDURE get_ne_type => model_get_ne_type
 
PROCEDURE get_gp_ne_num_hyper_param => model_get_gp_ne_num_hyper_param
 
PROCEDURE get_ne_af => model_get_ne_af
 
PROCEDURE get_ne_cart => model_get_ne_cart
 
PROCEDURE get_ne_radial => model_get_ne_radial
 
GENERIC get_ne => get_ne_cart, get_ne_radial
 
PROCEDURE get_gp_ne_ij => model_get_gp_ne_ij
 
PROCEDURE get_gp_ne_pi => model_get_gp_ne_pi
 
PROCEDURE get_gp_ne_pp => model_get_gp_ne_pp
 
GENERIC get_gp_ne => get_gp_ne_ij, get_gp_ne_pi, get_gp_ne_pp
 
PROCEDURE get_te_type => model_get_te_type
 
PROCEDURE get_gp_te_num_hyper_param => model_get_gp_te_num_hyper_param
 
PROCEDURE get_te_af => model_get_te_af
 
PROCEDURE get_te_cart => model_get_te_cart
 
PROCEDURE get_te_radial => model_get_te_radial
 
GENERIC get_te => get_te_cart, get_te_radial
 
PROCEDURE get_gp_te_ij => model_get_gp_te_ij
 
PROCEDURE get_gp_te_pi => model_get_gp_te_pi
 
PROCEDURE get_gp_te_pp => model_get_gp_te_pp
 
GENERIC get_gp_te => get_gp_te_ij, get_gp_te_pi, get_gp_te_pp
 
PROCEDURE get_ti_type => model_get_ti_type
 
PROCEDURE get_gp_ti_num_hyper_param => model_get_gp_ti_num_hyper_param
 
PROCEDURE get_ti_af => model_get_ti_af
 
PROCEDURE get_ti_cart => model_get_te_cart
 
PROCEDURE get_ti_radial => model_get_ti_radial
 
GENERIC get_ti => get_ti_cart, get_ti_radial
 
PROCEDURE get_gp_ti_ij => model_get_gp_ti_ij
 
PROCEDURE get_gp_ti_pi => model_get_gp_ti_pi
 
PROCEDURE get_gp_ti_pp => model_get_gp_ti_pp
 
GENERIC get_gp_ti => get_gp_ti_ij, get_gp_ti_pi, get_gp_ti_pp
 
PROCEDURE get_sxrem_type => model_get_sxrem_type
 
PROCEDURE get_gp_sxrem_num_hyper_param => model_get_gp_sxrem_num_hyper_param
 
PROCEDURE get_sxrem_af => model_get_sxrem_af
 
PROCEDURE get_sxrem_cart => model_get_sxrem_cart
 
PROCEDURE get_sxrem_radial => model_get_sxrem_radial
 
GENERIC get_sxrem => get_sxrem_cart, get_sxrem_radial
 
PROCEDURE get_gp_sxrem_ij => model_get_gp_sxrem_ij
 
PROCEDURE get_gp_sxrem_pi => model_get_gp_sxrem_pi
 
PROCEDURE get_gp_sxrem_pp => model_get_gp_sxrem_pp
 
GENERIC get_gp_sxrem => get_gp_sxrem_ij, get_gp_sxrem_pi, get_gp_sxrem_pp
 
PROCEDURE get_sxrem_ratio => model_get_sxrem_ratio
 
PROCEDURE get_signal_factor => model_get_signal_factor
 
PROCEDURE get_signal_offset => model_get_signal_offset
 
PROCEDURE is_recon_param => model_is_recon_param
 
PROCEDURE has_vacuum_field => model_has_vacuum_field
 
PROCEDURE is_in_plasma => model_is_in_plasma
 
PROCEDURE limit_path_to_boundary => model_limit_path_to_boundary
 
PROCEDURE reset_state => model_reset_state
 
PROCEDURE save_state => model_save_state
 
PROCEDURE converge => model_converge
 
PROCEDURE write => model_write
 
PROCEDURE def_result => model_def_result
 
PROCEDURE write_init_data => model_write_init_data
 
PROCEDURE write_step_data => model_write_step_data
 
PROCEDURE restart => model_restart
 
PROCEDURE sync_state => model_sync_state
 
PROCEDURE sync_child => model_sync_child
 
FINAL model_destruct
 
class(model_class) function, pointer model_construct (ne_type, sxrem_type, te_type, ti_type, ne_unit, ne_min, te_min, ti_min, sxrem_min, pressure_fraction, emission, equilibrium, sxrem_te, sxrem_ratio, resonace_range, coosig_wgts, state_flags, signal_factor, signal_offset, int_params)
 Construct a model_class containing an equilibrium object. More...
 

Public Attributes

integer state_flags = model_state_all_off
 State flags indicating with parts of the model have changes.
 
integer ne_type = model_none_type
 Type decritption of the electron denisty. Possible values are model_none_type, model_ne_type and model_ne_te_p_type.
 
integer, dimension(:), pointer sxrem_type => null()
 Type decritption of the soft x-ray emissivity. Possible values are model_none_type and model_sxrem_type.
 
integer te_type = model_none_type
 Type decritption of the electron temperature. Possible values are model_none_type, model_te_type and model_te_ne_p_type.
 
integer ti_type = model_none_type
 Type decritption of the ion temperature. Possible values are model_none_type and model_ti_type.
 
real(rprec) ne_unit = 1.0
 Unit scaling of the electron density.
 
real(rprec) ne_min = 0.0
 Minimum electron density.
 
real(rprec) te_min = 0.0
 Minimum electron temperature.
 
real(rprec) ti_min = 0.0
 Minimum ion temperature.
 
real(rprec), dimension(:), pointer sxrem_min => null()
 Minimum soft x-ray emission.
 
real(rprec) pressure_fraction = 0.0
 Electron pressure fraction.
 
real(rprec), dimension(:), pointer coosig_wgts => null()
 Array of weights for combination signals.
 
type(emission_class), pointer emission => null()
 Soft X-Ray emission function.
 
real(rprec), dimension(:,:), pointer transmission => null()
 Filter transmission functions.
 
class(equilibrium_class), pointer equilibrium => null()
 The equilibrium.
 
real(rprec) grid_start
 Grid start.
 
real(rprec) grid_step
 Grid stop.
 
real(rprec), dimension(:), pointer ne_grid => null()
 Girded electron density profile.
 
real(rprec), dimension(:,:), pointer sxrem_grid => null()
 Grided electron soft x-ray profile.
 
real(rprec), dimension(:), pointer te_grid => null()
 Grided electron temperature profile.
 
real(rprec), dimension(:), pointer ti_grid => null()
 Grided ion temperature profile.
 
real(rprec), dimension(:), pointer sxrem_te => null()
 Soft X-ray emissivity tempurature.
 
real(rprec), dimension(:), pointer sxrem_ratio => null()
 Soft X-ray emissivity ratio.
 
real(rprec) resonace_range
 ECE resonance range.
 
real(rprec), dimension(:), pointer signal_factor => null()
 Model Signal factor.
 
real(rprec), dimension(:), pointer signal_offset => null()
 Model Signal offset.
 
class(integration_path_class), pointer int_params => null()
 Integration parameters.
 

Detailed Description

Base class representing a model.

Interface for the construction of mse_class types using mse_construct_vec or mse_construct_rad.

Member Function/Subroutine Documentation

◆ model_construct()

class (model_class) function, pointer model::model_class::model_construct ( character (len=data_name_length), intent(in)  ne_type,
character (len=data_name_length), dimension(:), intent(in)  sxrem_type,
character (len=data_name_length), intent(in)  te_type,
character (len=data_name_length), intent(in)  ti_type,
real (rprec), intent(in)  ne_unit,
real (rprec), intent(in)  ne_min,
real (rprec), intent(in)  te_min,
real (rprec), intent(in)  ti_min,
real (rprec), dimension(:), intent(in)  sxrem_min,
real (rprec), intent(in)  pressure_fraction,
type (emission_class), pointer  emission,
class (equilibrium_class), pointer  equilibrium,
real (rprec), dimension(:), intent(in)  sxrem_te,
real (rprec), dimension(:), intent(in)  sxrem_ratio,
real (rprec), intent(in)  resonace_range,
real (rprec), dimension(:), intent(in)  coosig_wgts,
integer, intent(in)  state_flags,
real (rprec), dimension(:), intent(in)  signal_factor,
real (rprec), dimension(:), intent(in)  signal_offset,
class (integration_path_class), pointer  int_params 
)

Construct a model_class containing an equilibrium object.

Allocates memory and initializes a model_class object.

Parameters
[in]ne_typeModel type for the electron density.
[in]sxrem_typeModel type for the soft x-ray emissivity.
[in]te_typeModel type for the electron temperature.
[in]ti_typeModel type for the ion temperature.
[in]ne_unitScaleing of the electron denisty.
[in]ne_minMinimum electron density.
[in]te_minMinimum electron temperature.
[in]ti_minMinimum ion temperature.
[in]sxrem_minMinimum soft x-ray emission.
[in]pressure_fractionFraction of the pressure provided by electrons.
[in]equilibriumAn instance of an equilibrium.
[in]sxrem_teSoft x-ray ratio function te.
[in]sxrem_ratioSoft x-ray ratio function ratio.
[in]resonace_rangeECE resonance interval.
[in]coosig_wgtsCombination Signal Weights
[in]not_convergedIf true the equilibrium was constructed in an unconverged state.
[in]state_flagsBitwise flags to indicate which parts of the model changed.
[in]signal_factorArray of signal factors to scale model signals by.
[in]signal_offsetArray of signal factors to offset model signals by.
[in]int_paramsParameters for the integration method.
Returns
A pointer to a constructed model_class object.

The documentation for this interface was generated from the following file: