FV3 Bundle
|
diag_manifest_mod writes out a manifest file for each diagnostic output file defined in the diag_table file. More...
Data Types | |
interface | assignment(=) |
Assignment operator for TYPE(manifest_field_type) More... | |
type | manifest_field_type |
A type to hold the data required for the manifest file. More... | |
type | manifest_fields_type |
A type to hold all the fields by dimension size. More... | |
Functions/Subroutines | |
subroutine, public | write_diag_manifest (file) |
Public routine that will start the writing of the manifest file. More... | |
subroutine | destroy_manifest_fields_type (manifest_fields) |
De-allocate arrays used in the manifest_fields_type. More... | |
subroutine | manifest_field_type_assign (lhs, rhs) |
Allow ASSIGNMENT(=) operator to work on TYPE(manifest_field_type) More... | |
subroutine | write_fields (unit, fields) |
Write the JSON format of the field object. More... | |
subroutine | write_manifest (unit, fields, static) |
Write the JSON format of the static/temporal object. More... | |
type(manifest_fields_type) function | get_diagnostic_fields (file, static) |
Extract the diagnostic fields, and collect the information about the fields. More... | |
diag_manifest_mod writes out a manifest file for each diagnostic output file defined in the diag_table file.
diag_manifest_mod writes a JSON formatted manifest file for each diagnostic file defined in the diag_table file. The manifest file contains basic information about each field. Although, this manifest file is for use in the future Chaco release of the FMS Runtime Environment (FRE), others may find the information in this file useful.
Although some FMS components write diagnostic files separated by tiles (Cubed-sphere atmosphere), and some models are run with multiple ensembles the only one manifest file will be written for each. That is, although an atmos_cubed_sphere component may write atmos_month.tile[1-6].nc
, only one manifest file atmos_month.mfst
will be written. This was done as diag_manager_mod does not allow a tile or ensemble to write out a different set of diagnostics. All tiles, and ensemble members read the same diag_table file.
|
private |
De-allocate arrays used in the manifest_fields_type.
Definition at line 186 of file diag_manifest.F90.
|
private |
Extract the diagnostic fields, and collect the information about the fields.
[in] | file | diagnostic file, as defined by diag_manager_mod |
[in] | static | Indicates if looking for static or non-static fields. .TRUE. indicates looking only for static files. .FALSE. indicates looking only for non-static fields. |
Definition at line 290 of file diag_manifest.F90.
|
private |
Allow ASSIGNMENT(=) operator to work on TYPE(manifest_field_type)
Simply assign the type on the rhs to the type on the lhs of the =
.
[out] | lhs | lhs, target |
[in] | rhs | rhs, source |
Definition at line 204 of file diag_manifest.F90.
subroutine, public diag_manifest_mod::write_diag_manifest | ( | integer, intent(in) | file | ) |
Public routine that will start the writing of the manifest file.
This routine is written in such a way that only the root MPI process and the master OpenMP thread will attempt to write the file.
Definition at line 107 of file diag_manifest.F90.
|
private |
Write the JSON format of the field object.
[in] | unit | File unit number. File should already be opened. |
[in] | fields | Array of fields to write |
Definition at line 217 of file diag_manifest.F90.
|
private |
Write the JSON format of the static/temporal object.
[in] | unit | File unit number. File should already be opened. |
[in] | fields | All fields to be written to manifest file |
[in] | static | Indicate if the fields in the fields array are static or non-static fields |
Definition at line 243 of file diag_manifest.F90.