FMS 2025.01.02-dev
Flexible Modeling System
|
type to hold the diag_file information More...
Public Member Functions | |
procedure, public | get_file_duration (this) |
Inquiry for diag_files_objfile_duration. | |
procedure, public | get_file_duration_units (this) |
Inquiry for diag_files_objfile_duration_units. | |
procedure, public | get_file_fname (this) |
Inquiry for diag_files_objfile_fname. | |
procedure, public | get_file_freq (this) |
Inquiry for diag_files_objfile_freq. | |
procedure, public | get_file_frequnit (this) |
Inquiry for diag_files_objfile_frequnit. | |
procedure, public | get_file_global_meta (this) |
Inquiry for diag_files_objfile_global_meta. | |
procedure, public | get_file_new_file_freq (this) |
Inquiry for diag_files_objfile_new_file_freq. | |
procedure, public | get_file_new_file_freq_units (this) |
Inquiry for diag_files_objfile_new_file_freq_units. | |
procedure, public | get_file_start_time (this) |
Inquiry for diag_files_objfile_start_time. | |
procedure, public | get_file_sub_region (this) |
Inquiry for diag_files_objfile_subregion. | |
procedure, public | get_file_timeunit (this) |
Inquiry for diag_files_objfile_timeunit. | |
procedure, public | get_file_unlimdim (this) |
Inquiry for diag_files_objfile_unlimdim. | |
procedure, public | get_file_varlist (this) |
Inquiry for diag_files_objfile_varlist. | |
procedure, public | get_filename_time (this) |
Get the integer equivalent of the time to use to determine the filename, if using a wildcard file name (i.e ocn%4yr%2mo%2dy%2hr) | |
procedure, public | has_file_duration (this) |
diag_file_objfile_duration is allocated on th stack, so this is always true | |
procedure, public | has_file_duration_units (this) |
diag_file_objfile_duration_units is on the stack, so this will retrun true | |
procedure, public | has_file_fname (this) |
Has functions to determine if allocatable variables are true. If a variable is not an allocatable then is will always return .true. | |
procedure, public | has_file_freq (this) |
diag_file_objfile_freq is on the stack, so the object always has it | |
procedure, public | has_file_frequnit (this) |
Checks if diag_file_objfile_frequnit is allocated. | |
procedure, public | has_file_global_meta (this) |
Checks if diag_file_objfile_global_meta is allocated. | |
procedure, public | has_file_new_file_freq (this) |
diag_file_objfile_new_file_freq is defined on the stack, so this will return true | |
procedure, public | has_file_new_file_freq_units (this) |
Checks if diag_file_objfile_new_file_freq_units is allocated. | |
procedure, public | has_file_start_time (this) |
Checks if diag_file_objfile_start_time is allocated. | |
procedure, public | has_file_sub_region (this) |
Checks if diag_file_objfile_sub_region is being used and has the sub region variables allocated. | |
procedure, public | has_file_timeunit (this) |
Checks if diag_file_objfile_timeunit is allocated. | |
procedure, public | has_file_unlimdim (this) |
Checks if diag_file_objfile_unlimdim is allocated. | |
procedure, public | has_file_varlist (this) |
Checks if diag_file_objfile_varlist is allocated. | |
procedure, public | increase_new_file_freq_index (this) |
Increate the current_new_file_freq_index by 1. | |
procedure, public | is_global_meta (this) |
Inquiry for whether file_global_meta is allocated. | |
procedure, public | size_file_varlist (this) |
All getter functions (functions named get_x(), for member field named x) return copies of the member variables unless explicitly noted. | |
Public Attributes | |
integer | current_new_file_freq_index |
The index of the new_file_freq array Need to use MAX_STR_LEN because not all filenames/global attributes are the same length. | |
character(len=:), allocatable | default_var_module |
The module for all of the variables in the file This may be overriden if the modules was defined at the variable level. | |
character(len=:), allocatable | default_var_precision |
The precision for all of the variables in the file This may be overriden if the precison was defined at the variable level. | |
character(len=:), allocatable | default_var_reduction |
The reduction for all of the variables in the file This may be overriden if the reduction was defined at the variable level. | |
integer, dimension(max_freq) | file_duration |
How long the file should receive data after start time in file_duration_units. This optional field can only be used if the start_time field is present. If this field is absent, then the file duration will be equal to the frequency for creating new files. NOTE: The file_duration_units field must also be present if this field is present. | |
integer, dimension(max_freq) | file_duration_units |
The file duration units (DIAG_SECONDS, DIAG_MINUTES, & DIAG_HOURS, DIAG_DAYS, DIAG_YEARS) | |
integer, dimension(max_freq) | file_freq |
the frequency of data | |
integer, dimension(max_freq) | file_frequnit |
the frequency unit (DIAG_SECONDS, DIAG_MINUTES, DIAG_HOURS, DIAG_DAYS, DIAG_YEARS) | |
character(len=max_str_len), dimension(:,:), allocatable | file_global_meta |
Array of key(dim=1) and values(dim=2) to be added as global meta data to the file. | |
integer, dimension(max_freq) | file_new_file_freq |
Frequency for closing the existing file. | |
integer, dimension(max_freq) | file_new_file_freq_units |
Time units for creating a new file. Required if “new_file_freq” used (DIAG_SECONDS, DIAG_MINUTES, & DIAG_HOURS, DIAG_DAYS, DIAG_YEARS) | |
character(len=max_str_len), dimension(:), allocatable | file_outlist |
An array of variable output names within a file, used to distinguish varlist names for yaml output. | |
type(time_type) | file_start_time |
Time to start the file for the first time. | |
logical | file_start_time_set |
.True. if file_start_time has been set | |
type(subregion_type) | file_sub_region |
type containing info about the subregion | |
integer | file_timeunit |
The unit of time (DIAG_SECONDS, DIAG_MINUTES, DIAG_HOURS, DIAG_DAYS, DIAG_YEARS) | |
character(len=:), allocatable | file_unlimdim |
The name of the unlimited dimension. | |
character(len=max_str_len), dimension(:), allocatable | file_varlist |
An array of variable names within a file. | |
integer | filename_time |
The time to use when setting the name of new files: begin, middle, or end of the time_bounds. | |
Private Attributes | |
character(len=:), allocatable | file_fname |
file name | |
type to hold the diag_file information
Definition at line 100 of file fms_diag_yaml.F90.
procedure, public get_file_duration | ( | class (diagyamlfiles_type), intent(in) | this | ) |
Inquiry for diag_files_objfile_duration.
[in] | this | The object being inquiried |
Definition at line 169 of file fms_diag_yaml.F90.
procedure, public get_file_duration_units | ( | class (diagyamlfiles_type), intent(in) | this | ) |
Inquiry for diag_files_objfile_duration_units.
[in] | this | The object being inquiried |
Definition at line 170 of file fms_diag_yaml.F90.
procedure, public get_file_fname | ( | class (diagyamlfiles_type), intent(in) | this | ) |
Inquiry for diag_files_objfile_fname.
[in] | this | The object being inquiried |
Definition at line 160 of file fms_diag_yaml.F90.
procedure, public get_file_freq | ( | class (diagyamlfiles_type), intent(in) | this | ) |
Inquiry for diag_files_objfile_freq.
[in] | this | The object being inquiried |
Definition at line 162 of file fms_diag_yaml.F90.
procedure, public get_file_frequnit | ( | class (diagyamlfiles_type), intent(in) | this | ) |
Inquiry for diag_files_objfile_frequnit.
[in] | this | The object being inquiried |
Definition at line 161 of file fms_diag_yaml.F90.
procedure, public get_file_global_meta | ( | class (diagyamlfiles_type), intent(in) | this | ) |
Inquiry for diag_files_objfile_global_meta.
[in] | this | The object being inquiried |
Definition at line 172 of file fms_diag_yaml.F90.
procedure, public get_file_new_file_freq | ( | class (diagyamlfiles_type), intent(in) | this | ) |
Inquiry for diag_files_objfile_new_file_freq.
[in] | this | The object being inquiried |
Definition at line 166 of file fms_diag_yaml.F90.
procedure, public get_file_new_file_freq_units | ( | class (diagyamlfiles_type), intent(in) | this | ) |
Inquiry for diag_files_objfile_new_file_freq_units.
[in] | this | The object being inquiried |
Definition at line 167 of file fms_diag_yaml.F90.
procedure, public get_file_start_time | ( | class (diagyamlfiles_type), intent(in) | this | ) |
Inquiry for diag_files_objfile_start_time.
[in] | this | The object being inquiried |
Definition at line 168 of file fms_diag_yaml.F90.
procedure, public get_file_sub_region | ( | class (diagyamlfiles_type), intent(in), target | this | ) |
Inquiry for diag_files_objfile_subregion.
[in] | this | The object being inquiried |
Definition at line 165 of file fms_diag_yaml.F90.
procedure, public get_file_timeunit | ( | class (diagyamlfiles_type), intent(in) | this | ) |
Inquiry for diag_files_objfile_timeunit.
[in] | this | The object being inquiried |
Definition at line 163 of file fms_diag_yaml.F90.
procedure, public get_file_unlimdim | ( | class (diagyamlfiles_type), intent(in) | this | ) |
Inquiry for diag_files_objfile_unlimdim.
[in] | this | The object being inquiried |
Definition at line 164 of file fms_diag_yaml.F90.
procedure, public get_file_varlist | ( | class (diagyamlfiles_type), intent(in) | this | ) |
Inquiry for diag_files_objfile_varlist.
[in] | this | The object being inquiried |
Definition at line 171 of file fms_diag_yaml.F90.
procedure, public get_filename_time | ( | class (diagyamlfiles_type), intent(in) | this | ) |
Get the integer equivalent of the time to use to determine the filename, if using a wildcard file name (i.e ocn%4yr%2mo%2dy%2hr)
[in] | this | The object being inquiried |
Definition at line 173 of file fms_diag_yaml.F90.
procedure, public has_file_duration | ( | class(diagyamlfiles_type), intent(in) | this | ) |
diag_file_objfile_duration is allocated on th stack, so this is always true
[in] | this | diagYamlFiles_type object to initialize |
Definition at line 186 of file fms_diag_yaml.F90.
procedure, public has_file_duration_units | ( | class(diagyamlfiles_type), intent(in) | this | ) |
diag_file_objfile_duration_units is on the stack, so this will retrun true
[in] | this | diagYamlFiles_type object to initialize |
Definition at line 187 of file fms_diag_yaml.F90.
procedure, public has_file_fname | ( | class(diagyamlfiles_type), intent(in) | this | ) |
Has functions to determine if allocatable variables are true. If a variable is not an allocatable then is will always return .true.
[in] | this | diagYamlFiles_type object to initialize |
Definition at line 177 of file fms_diag_yaml.F90.
procedure, public has_file_freq | ( | class(diagyamlfiles_type), intent(in) | this | ) |
diag_file_objfile_freq is on the stack, so the object always has it
[in] | this | diagYamlFiles_type object to initialize |
Definition at line 179 of file fms_diag_yaml.F90.
procedure, public has_file_frequnit | ( | class(diagyamlfiles_type), intent(in) | this | ) |
Checks if diag_file_objfile_frequnit is allocated.
[in] | this | diagYamlFiles_type object to initialize |
Definition at line 178 of file fms_diag_yaml.F90.
procedure, public has_file_global_meta | ( | class(diagyamlfiles_type), intent(in) | this | ) |
Checks if diag_file_objfile_global_meta is allocated.
[in] | this | diagYamlFiles_type object to initialize |
Definition at line 189 of file fms_diag_yaml.F90.
procedure, public has_file_new_file_freq | ( | class(diagyamlfiles_type), intent(in) | this | ) |
diag_file_objfile_new_file_freq is defined on the stack, so this will return true
[in] | this | diagYamlFiles_type object to initialize |
Definition at line 183 of file fms_diag_yaml.F90.
procedure, public has_file_new_file_freq_units | ( | class(diagyamlfiles_type), intent(in) | this | ) |
Checks if diag_file_objfile_new_file_freq_units is allocated.
[in] | this | diagYamlFiles_type object to initialize |
Definition at line 184 of file fms_diag_yaml.F90.
procedure, public has_file_start_time | ( | class(diagyamlfiles_type), intent(in) | this | ) |
Checks if diag_file_objfile_start_time is allocated.
[in] | this | diagYamlFiles_type object to initialize |
Definition at line 185 of file fms_diag_yaml.F90.
procedure, public has_file_sub_region | ( | class(diagyamlfiles_type), intent(in) | this | ) |
Checks if diag_file_objfile_sub_region is being used and has the sub region variables allocated.
[in] | this | diagYamlFiles_type object to initialize |
Definition at line 182 of file fms_diag_yaml.F90.
procedure, public has_file_timeunit | ( | class(diagyamlfiles_type), intent(in) | this | ) |
Checks if diag_file_objfile_timeunit is allocated.
[in] | this | diagYamlFiles_type object to initialize |
Definition at line 180 of file fms_diag_yaml.F90.
procedure, public has_file_unlimdim | ( | class(diagyamlfiles_type), intent(in) | this | ) |
Checks if diag_file_objfile_unlimdim is allocated.
[in] | this | diagYamlFiles_type object to initialize |
Definition at line 181 of file fms_diag_yaml.F90.
procedure, public has_file_varlist | ( | class(diagyamlfiles_type), intent(in) | this | ) |
Checks if diag_file_objfile_varlist is allocated.
[in] | this | diagYamlFiles_type object to initialize |
Definition at line 188 of file fms_diag_yaml.F90.
procedure, public increase_new_file_freq_index | ( | class(diagyamlfiles_type), intent(inout) | this | ) |
Increate the current_new_file_freq_index by 1.
[in,out] | this | The file object |
Definition at line 190 of file fms_diag_yaml.F90.
procedure, public is_global_meta | ( | class (diagyamlfiles_type), intent(in) | this | ) |
Inquiry for whether file_global_meta is allocated.
[in] | this | The object being inquiried |
Definition at line 174 of file fms_diag_yaml.F90.
procedure, public size_file_varlist | ( | class (diagyamlfiles_type), intent(in) | this | ) |
All getter functions (functions named get_x(), for member field named x) return copies of the member variables unless explicitly noted.
[in] | this | The object being inquiried |
Definition at line 159 of file fms_diag_yaml.F90.
integer current_new_file_freq_index |
The index of the new_file_freq array Need to use MAX_STR_LEN
because not all filenames/global attributes are the same length.
Definition at line 135 of file fms_diag_yaml.F90.
character (len=:), allocatable default_var_module |
The module for all of the variables in the file This may be overriden if the modules was defined at the variable level.
Definition at line 152 of file fms_diag_yaml.F90.
character (len=:), allocatable default_var_precision |
The precision for all of the variables in the file This may be overriden if the precison was defined at the variable level.
Definition at line 146 of file fms_diag_yaml.F90.
character (len=:), allocatable default_var_reduction |
The reduction for all of the variables in the file This may be overriden if the reduction was defined at the variable level.
Definition at line 149 of file fms_diag_yaml.F90.
integer, dimension(max_freq) file_duration |
How long the file should receive data after start time in file_duration_units. This optional field can only be used if the start_time field is present. If this field is absent, then the file duration will be equal to the frequency for creating new files. NOTE: The file_duration_units field must also be present if this field is present.
Definition at line 123 of file fms_diag_yaml.F90.
integer, dimension(max_freq) file_duration_units |
The file duration units (DIAG_SECONDS, DIAG_MINUTES, & DIAG_HOURS, DIAG_DAYS, DIAG_YEARS)
Definition at line 132 of file fms_diag_yaml.F90.
|
private |
file name
Definition at line 102 of file fms_diag_yaml.F90.
integer, dimension(max_freq) file_freq |
the frequency of data
Definition at line 106 of file fms_diag_yaml.F90.
integer, dimension(max_freq) file_frequnit |
the frequency unit (DIAG_SECONDS, DIAG_MINUTES, DIAG_HOURS, DIAG_DAYS, DIAG_YEARS)
Definition at line 103 of file fms_diag_yaml.F90.
character (len=max_str_len), dimension(:,:), allocatable file_global_meta |
Array of key(dim=1) and values(dim=2) to be added as global meta data to the file.
Definition at line 142 of file fms_diag_yaml.F90.
integer, dimension(max_freq) file_new_file_freq |
Frequency for closing the existing file.
Definition at line 112 of file fms_diag_yaml.F90.
integer, dimension(max_freq) file_new_file_freq_units |
Time units for creating a new file. Required if “new_file_freq” used (DIAG_SECONDS, DIAG_MINUTES, & DIAG_HOURS, DIAG_DAYS, DIAG_YEARS)
Definition at line 113 of file fms_diag_yaml.F90.
character (len=max_str_len), dimension(:), allocatable file_outlist |
An array of variable output names within a file, used to distinguish varlist names for yaml output.
Definition at line 139 of file fms_diag_yaml.F90.
type(time_type) file_start_time |
Time to start the file for the first time.
Definition at line 117 of file fms_diag_yaml.F90.
logical file_start_time_set |
.True. if file_start_time has been set
Definition at line 119 of file fms_diag_yaml.F90.
type(subregion_type) file_sub_region |
type containing info about the subregion
Definition at line 111 of file fms_diag_yaml.F90.
integer file_timeunit |
The unit of time (DIAG_SECONDS, DIAG_MINUTES, DIAG_HOURS, DIAG_DAYS, DIAG_YEARS)
Definition at line 107 of file fms_diag_yaml.F90.
character (len=:), allocatable file_unlimdim |
The name of the unlimited dimension.
Definition at line 110 of file fms_diag_yaml.F90.
character (len=max_str_len), dimension(:), allocatable file_varlist |
An array of variable names within a file.
Definition at line 137 of file fms_diag_yaml.F90.
integer filename_time |
The time to use when setting the name of new files: begin, middle, or end of the time_bounds.
Definition at line 120 of file fms_diag_yaml.F90.