output_manager Module


Uses

  • module~~output_manager~~UsesGraph module~output_manager output_manager yaml_settings yaml_settings module~output_manager->yaml_settings module~text_output text_output module~output_manager->module~text_output module~netcdf_output netcdf_output module~output_manager->module~netcdf_output module~output_operators_slice output_operators_slice module~output_manager->module~output_operators_slice module~field_manager field_manager module~output_manager->module~field_manager module~output_operators_time_average output_operators_time_average module~output_manager->module~output_operators_time_average module~output_operators_library output_operators_library module~output_manager->module~output_operators_library module~output_manager_core output_manager_core module~output_manager->module~output_manager_core module~text_output->module~field_manager module~text_output->module~output_manager_core module~netcdf_output->yaml_settings module~netcdf_output->module~field_manager module~netcdf_output->module~output_manager_core netcdf netcdf module~netcdf_output->netcdf module~output_operators_slice->module~field_manager module~output_operators_slice->module~output_manager_core module~output_operators_base output_operators_base module~output_operators_slice->module~output_operators_base iso_fortran_env iso_fortran_env module~field_manager->iso_fortran_env module~output_operators_time_average->module~field_manager module~output_operators_time_average->module~output_manager_core module~output_operators_time_average->module~output_operators_base module~output_operators_library->yaml_settings module~output_operators_library->module~output_operators_slice module~output_operators_library->module~field_manager module~output_operators_library->module~output_operators_time_average module~output_operators_library->module~output_manager_core module~output_operators_library->module~output_operators_base module~output_operators_interp output_operators_interp module~output_operators_library->module~output_operators_interp module~output_manager_core->yaml_settings module~output_manager_core->module~field_manager module~output_manager_core->iso_fortran_env module~output_operators_base->module~field_manager module~output_operators_base->module~output_manager_core yaml_types yaml_types module~output_operators_base->yaml_types module~output_operators_interp->yaml_settings module~output_operators_interp->module~field_manager module~output_operators_interp->module~output_manager_core module~output_operators_interp->module~output_operators_base

Contents


Variables

TypeVisibility AttributesNameInitial
class(type_file), private, pointer:: first_file
logical, private :: files_initialized
logical, public, save:: allow_missing_fields =.false.

Interfaces

public interface output_manager_save

  • private subroutine output_manager_save1(julianday, secondsofday, n)

    Arguments

    Type IntentOptional AttributesName
    integer, intent(in) :: julianday
    integer, intent(in) :: secondsofday
    integer, intent(in) :: n
  • private subroutine output_manager_save2(julianday, secondsofday, microseconds, n)

    Arguments

    Type IntentOptional AttributesName
    integer, intent(in) :: julianday
    integer, intent(in) :: secondsofday
    integer, intent(in) :: microseconds
    integer, intent(in) :: n

Derived Types

type, private, extends(type_dictionary_populator) :: type_file_populator

Components

TypeVisibility AttributesNameInitial
type(type_field_manager), public, pointer:: fm=> null()
character(len=:), public, allocatable:: title
character(len=:), public, allocatable:: postfix

Type-Bound Procedures

procedure, public :: create => process_file

type, private, extends(type_list_populator) :: type_operator_populator

Components

TypeVisibility AttributesNameInitial
type(type_field_manager), public, pointer:: field_manager=> null()
class(type_output_variable_settings), public, pointer:: variable_settings=> null()

Type-Bound Procedures

procedure, public :: create => create_operator_settings

type, private, extends(type_list_populator) :: type_group_populator

Components

TypeVisibility AttributesNameInitial
class(type_file), public, pointer:: file
class(type_output_variable_settings), public, pointer:: variable_settings=> null()

Type-Bound Procedures

procedure, public :: create => create_group_settings

type, private, extends(type_list_populator) :: type_variable_populator

Components

TypeVisibility AttributesNameInitial
class(type_file), public, pointer:: file=> null()
class(type_output_variable_settings), public, pointer:: variable_settings=> null()

Type-Bound Procedures

procedure, public :: create => create_variable_settings

Functions

private function in_window(self, julianday, secondsofday, microseconds, n)

Arguments

Type IntentOptional AttributesName
class(type_file), intent(in) :: self
integer, intent(in) :: julianday
integer, intent(in) :: secondsofday
integer, intent(in) :: microseconds
integer, intent(in) :: n

Return Value logical


Subroutines

public subroutine output_manager_init(field_manager, title, postfix, settings)

Arguments

Type IntentOptional AttributesName
type(type_field_manager), target:: field_manager
character(len=*), intent(in) :: title
character(len=*), intent(in), optional :: postfix
class(type_settings), optional pointer:: settings

public subroutine output_manager_clean()

Arguments

None

private subroutine populate(file)

Arguments

Type IntentOptional AttributesName
class(type_file), intent(inout) :: file

public subroutine output_manager_start(julianday, secondsofday, microseconds, n)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: julianday
integer, intent(in) :: secondsofday
integer, intent(in) :: microseconds
integer, intent(in) :: n

private subroutine set_next_output(self, julianday, secondsofday, microseconds, n)

Arguments

Type IntentOptional AttributesName
class(type_file), intent(inout) :: self
integer, intent(in) :: julianday
integer, intent(in) :: secondsofday
integer, intent(in) :: microseconds
integer, intent(in) :: n

private subroutine output_manager_save1(julianday, secondsofday, n)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: julianday
integer, intent(in) :: secondsofday
integer, intent(in) :: n

public subroutine output_manager_prepare_save(julianday, secondsofday, microseconds, n)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: julianday
integer, intent(in) :: secondsofday
integer, intent(in) :: microseconds
integer, intent(in) :: n

private subroutine output_manager_save2(julianday, secondsofday, microseconds, n)

Arguments

Type IntentOptional AttributesName
integer, intent(in) :: julianday
integer, intent(in) :: secondsofday
integer, intent(in) :: microseconds
integer, intent(in) :: n

private subroutine configure_from_yaml(field_manager, title, postfix, settings)

Arguments

Type IntentOptional AttributesName
type(type_field_manager), target:: field_manager
character(len=*), intent(in) :: title
character(len=*), intent(in), optional :: postfix
class(type_settings), optional pointer:: settings

public subroutine output_manager_add_file(field_manager, file)

Arguments

Type IntentOptional AttributesName
type(type_field_manager), target:: field_manager
class(type_file), target:: file

private subroutine process_file(self, pair)

Arguments

Type IntentOptional AttributesName
class(type_file_populator), intent(inout) :: self
type(type_key_value_pair), intent(inout) :: pair

private recursive subroutine configure_group(file, settings, default_variable_settings)

Arguments

Type IntentOptional AttributesName
class(type_file), intent(inout), target:: file
class(type_settings), intent(inout) :: settings
class(type_output_variable_settings), intent(in), optional :: default_variable_settings

private recursive subroutine create_group_settings(self, index, item)

Arguments

Type IntentOptional AttributesName
class(type_group_populator), intent(inout) :: self
integer, intent(in) :: index
type(type_list_item), intent(inout) :: item

private recursive subroutine create_operator_settings(self, index, item)

Arguments

Type IntentOptional AttributesName
class(type_operator_populator), intent(inout) :: self
integer, intent(in) :: index
type(type_list_item), intent(inout) :: item

private recursive subroutine create_variable_settings(self, index, item)

Arguments

Type IntentOptional AttributesName
class(type_variable_populator), intent(inout) :: self
integer, intent(in) :: index
type(type_list_item), intent(inout) :: item