ETS-Core  version:0.0.4-46-ge2d8
Core actors for the ETS-6
 All Classes Files Functions Variables Pages
Data Types | Public Member Functions | List of all members
ids_sanitiser Module Reference

Data Types

type  sanity_report
 

Public Member Functions

recursive subroutine free_report (report)
 
recursive subroutine add_to_report (report, ids_path, message)
 
recursive function is_report_empty (report)
 
subroutine report_to_string (report, string)
 
recursive subroutine recursively_reports_to_string (report, string)
 
subroutine write_yaml_string (fieldString, valueString, string)
 
subroutine sanitise_idss (equilibrium_in, equilibrium_out, coreprof_in, coreprof_out, output_flag, output_message)
 Create a sanitised versions of the equilibrium and core_profiles IDSs. In this routine equilibrium_in and core_profiles_in are copied to equilibrium_out and core_profiles_out, respectively. The data in equilibrium_out and core_profiles_out is then modified to correct internal consistencies and missing data is added when it can be derived from other fields in the equilibrium_out IDS. More...
 
subroutine sanitise_equilibrium (equilibrium_in, equilibrium_out, report, output_flag, output_message)
 Create a sanitised version of a equilibrium IDS. This routine copies equilibrium_in to equilibrium_out and then modifies the equilibrium_out for internal consistencies, and missing data is added when it can be derived from other fields in the equilibrium_out IDS. More...
 
subroutine sanitise_coreprof (coreprof_in, coreprof_out, equilibrium, report, output_flag, output_message)
 Create a sanitised version of a core_profiles IDS. This routine copies core_profiles_in to core_profiles_out and then modifies the core_profiles_out for internal consistencies, and missing data is added when it can be derived from other fields in the core_profiles_out or equilibrium_out IDS. More...
 
subroutine sanitise_multiple_states_flag (ion, report, path, output_flag, output_message)
 
subroutine sanitise_ids_core_radial_grid (grid, report, path, output_message, output_flag, eq_profiles_1d)
 Sanitise the gri structure, of type ids_core_radial_grid. Report if the grid is incorrectly filled and "fix" the grid when possible. More...
 
subroutine sanitise_radial_profile (profile, report, path, name, min_value, max_value, required, output_message, output_flag)
 

Detailed Description

Definition at line 1 of file ids_sanitiser.f90.

Member Function/Subroutine Documentation

recursive subroutine ids_sanitiser::add_to_report ( type (sanity_report), intent(inout)  report,
character(*), intent(in)  ids_path,
character(*), intent(in)  message 
)

Definition at line 30 of file ids_sanitiser.f90.

References is_report_empty().

Referenced by sanitise_coreprof(), sanitise_equilibrium(), sanitise_ids_core_radial_grid(), sanitise_idss(), sanitise_multiple_states_flag(), and sanitise_radial_profile().

Here is the call graph for this function:

Here is the caller graph for this function:

recursive subroutine ids_sanitiser::free_report ( type (sanity_report), intent(inout)  report)

Definition at line 15 of file ids_sanitiser.f90.

recursive function ids_sanitiser::is_report_empty ( type (sanity_report), intent(in)  report)

Definition at line 51 of file ids_sanitiser.f90.

Referenced by add_to_report(), report_to_string(), and sanitise_idss().

Here is the caller graph for this function:

recursive subroutine ids_sanitiser::recursively_reports_to_string ( type (sanity_report), intent(in)  report,
character(132), dimension(:), intent(out), pointer  string 
)

Definition at line 95 of file ids_sanitiser.f90.

References write_yaml_string().

Referenced by report_to_string().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine ids_sanitiser::report_to_string ( type (sanity_report), intent(in)  report,
character(132), dimension(:), intent(out), pointer  string 
)

Definition at line 63 of file ids_sanitiser.f90.

References is_report_empty(), recursively_reports_to_string(), and write_yaml_string().

Referenced by sanitise_idss().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine ids_sanitiser::sanitise_coreprof ( type(ids_core_profiles), intent(in)  coreprof_in,
type(ids_core_profiles), intent(out)  coreprof_out,
type(ids_equilibrium), intent(in)  equilibrium,
type (sanity_report), intent(inout)  report,
integer(ids_int), intent(out)  output_flag,
character(*), intent(out)  output_message 
)

Create a sanitised version of a core_profiles IDS. This routine copies core_profiles_in to core_profiles_out and then modifies the core_profiles_out for internal consistencies, and missing data is added when it can be derived from other fields in the core_profiles_out or equilibrium_out IDS.

In this routine the following assumptions are made:

  • coreprof_inprofiles_1d is associated.
  • equilibriumtime_slice is associated.
  • size(equilibriumtime_slice) == size(coreprof_inprofiles_1d)
  • equilibriumtime_slice(*)rho_tor_norm is associated.
Author
Thomas Jonsson

Definition at line 278 of file ids_sanitiser.f90.

References add_to_report(), electron_density_equation::electron_density(), sanitise_ids_core_radial_grid(), sanitise_multiple_states_flag(), and sanitise_radial_profile().

Referenced by sanitise_idss().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine ids_sanitiser::sanitise_equilibrium ( type(ids_equilibrium), intent(in)  equilibrium_in,
type(ids_equilibrium), intent(out)  equilibrium_out,
type (sanity_report), intent(inout)  report,
integer(ids_int), intent(out)  output_flag,
character(*), intent(out)  output_message 
)

Create a sanitised version of a equilibrium IDS. This routine copies equilibrium_in to equilibrium_out and then modifies the equilibrium_out for internal consistencies, and missing data is added when it can be derived from other fields in the equilibrium_out IDS.

In this routine the following assumptions are made:

  • equilibriumtime_slice is associated.
Author
Thomas Jonsson

Definition at line 220 of file ids_sanitiser.f90.

References add_to_report().

Referenced by sanitise_idss().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine ids_sanitiser::sanitise_ids_core_radial_grid ( type(ids_core_radial_grid), intent(inout)  grid,
type(sanity_report), intent(inout)  report,
character(*), intent(in)  path,
character(*), intent(out)  output_message,
integer(ids_int), intent(out)  output_flag,
type(ids_equilibrium_profiles_1d), intent(in)  eq_profiles_1d 
)

Sanitise the gri structure, of type ids_core_radial_grid. Report if the grid is incorrectly filled and "fix" the grid when possible.

Definition at line 636 of file ids_sanitiser.f90.

References add_to_report(), and grid.

Referenced by sanitise_coreprof().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine ids_sanitiser::sanitise_idss ( type(ids_equilibrium), intent(in)  equilibrium_in,
type(ids_equilibrium), intent(out)  equilibrium_out,
type(ids_core_profiles), intent(in)  coreprof_in,
type(ids_core_profiles), intent(out)  coreprof_out,
integer(ids_int), intent(out)  output_flag,
character(*), intent(out)  output_message 
)

Create a sanitised versions of the equilibrium and core_profiles IDSs. In this routine equilibrium_in and core_profiles_in are copied to equilibrium_out and core_profiles_out, respectively. The data in equilibrium_out and core_profiles_out is then modified to correct internal consistencies and missing data is added when it can be derived from other fields in the equilibrium_out IDS.

Author
Thomas Jonsson

Definition at line 145 of file ids_sanitiser.f90.

References add_to_report(), stringtools::char132pointer_to_string(), is_report_empty(), report_to_string(), sanitise_coreprof(), and sanitise_equilibrium().

Referenced by ets_init().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine ids_sanitiser::sanitise_multiple_states_flag ( type(ids_core_profile_ions), intent(inout)  ion,
type (sanity_report), intent(inout)  report,
character(*), intent(in)  path,
integer(ids_int), intent(out)  output_flag,
character(*), intent(out)  output_message 
)

Definition at line 572 of file ids_sanitiser.f90.

References add_to_report().

Referenced by sanitise_coreprof().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine ids_sanitiser::sanitise_radial_profile ( real(ids_real), dimension(:), intent(inout), pointer  profile,
type(sanity_report), intent(inout)  report,
character(*), intent(in)  path,
character(*), intent(in)  name,
real(ids_real), intent(in)  min_value,
real(ids_real), intent(in)  max_value,
logical, intent(in)  required,
character(*), intent(out)  output_message,
integer(ids_int), intent(out)  output_flag 
)

Definition at line 772 of file ids_sanitiser.f90.

References add_to_report().

Referenced by sanitise_coreprof().

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine ids_sanitiser::write_yaml_string ( character(*), intent(in)  fieldString,
character(*), intent(in)  valueString,
character(132), dimension(:), intent(out), pointer  string 
)

Definition at line 108 of file ids_sanitiser.f90.

Referenced by recursively_reports_to_string(), and report_to_string().

Here is the caller graph for this function:


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