|
FMS
2025.01.02-dev
Flexible Modeling System
|
Reads entries from a field table yaml into a nested object for use in the field manager. More...
Data Types | |
| type | fmattr_t |
| This type represents a subparameter block for a given variable parameter. This type contains the name of the associated parameter and the subparameter key/value pairs. More... | |
| type | fmmodel_t |
| This type represents the entries for a given model, e.g. land, ocean, atmosphere. This type contains the name of the model, the block id, and the variables within this model. More... | |
| type | fmtable_t |
| This type contains the field types within a field table. More... | |
| type | fmtype_t |
| This type represents the entries for a specific field type, e.g. a tracer. This type contains the name of the field type, the block id, and the models within this field type. More... | |
| type | fmvar_t |
| This type represents the entries for a given variable, e.g. dust. This type contains the name of the variable, the block id, the key/value pairs for the variable's parameters, and any applicable subparameters. More... | |
Functions/Subroutines | |
| subroutine | build_fmmodel (fmModel, yfid) |
Populates an fmModel, which is assumed to already have its id parameter set. More... | |
| subroutine, public | build_fmtable (fmTable, filename) |
| Subroutine to populate an fmTable by reading a yaml file, given an optional filename. More... | |
| subroutine | build_fmtype (fmType, yfid) |
Populates an fmType, which is assumed to already have its id parameter set. More... | |
| subroutine | build_fmvar (fmVar, yfid) |
| Populates an fmVar and creates any associated fmAttrs. More... | |
| subroutine | fmvar_read_attrs (fmVar, yfid, method_keys, method_values) |
| Reads the attribute blocks attached to a variable and populates the associated fmAttr structures. Returns two arrays containing key/value pairs of all methods defined via attribute blocks. More... | |
Reads entries from a field table yaml into a nested object for use in the field manager.
| type fm_yaml_mod::fmattr_t |
This type represents a subparameter block for a given variable parameter. This type contains the name of the associated parameter and the subparameter key/value pairs.
Definition at line 48 of file fm_yaml.F90.
Public Attributes | |
| integer | id |
| block id of this var | |
| character(len=:), dimension(:), allocatable | keys |
| name of the attribute | |
| character(len=:), allocatable | paramname |
| name of associated parameter | |
| character(len=:), dimension(:), allocatable | values |
| value of the attribute | |
| type fm_yaml_mod::fmmodel_t |
This type represents the entries for a given model, e.g. land, ocean, atmosphere. This type contains the name of the model, the block id, and the variables within this model.
Definition at line 70 of file fm_yaml.F90.
Public Attributes | |
| integer | id |
| block id of this model | |
| character(len=:), allocatable | name |
| name of the model | |
| type(fmvar_t), dimension(:), allocatable | variables |
| variables in this model | |
| type fm_yaml_mod::fmtable_t |
This type contains the field types within a field table.
Definition at line 87 of file fm_yaml.F90.
Public Attributes | |
| type(fmtype_t), dimension(:), allocatable | types |
| field types in this table | |
| type fm_yaml_mod::fmtype_t |
This type represents the entries for a specific field type, e.g. a tracer. This type contains the name of the field type, the block id, and the models within this field type.
Definition at line 79 of file fm_yaml.F90.
Public Attributes | |
| integer | id |
| block id of this type | |
| type(fmmodel_t), dimension(:), allocatable | models |
| models in this type | |
| character(len=:), allocatable | name |
| name of the type | |
| type fm_yaml_mod::fmvar_t |
This type represents the entries for a given variable, e.g. dust. This type contains the name of the variable, the block id, the key/value pairs for the variable's parameters, and any applicable subparameters.
Definition at line 59 of file fm_yaml.F90.
Public Attributes | |
| type(fmattr_t), dimension(:), allocatable | attributes |
| attributes in this var | |
| integer | id |
| block id of this var | |
| character(len=:), dimension(:), allocatable | keys |
| names of params | |
| character(len=:), allocatable | name |
| name of the variable | |
| character(len=:), dimension(:), allocatable | values |
| values of params | |
|
private |
Populates an fmModel, which is assumed to already have its id parameter set.
| [in,out] | fmmodel | model object |
| [in] | yfid | file id of the yaml file |
Definition at line 157 of file fm_yaml.F90.
| subroutine, public fm_yaml_mod::build_fmtable | ( | type(fmtable_t), intent(out) | fmTable, |
| character(len=*), intent(in), optional | filename | ||
| ) |
Subroutine to populate an fmTable by reading a yaml file, given an optional filename.
| [out] | fmtable | the field table |
| [in] | filename | the name of the yaml file |
Definition at line 97 of file fm_yaml.F90.
|
private |
Populates an fmType, which is assumed to already have its id parameter set.
| [in,out] | fmtype | type object |
| [in] | yfid | file id of the yaml file |
Definition at line 122 of file fm_yaml.F90.
|
private |
Populates an fmVar and creates any associated fmAttrs.
| [in,out] | fmvar | variable object |
| [in] | yfid | file id of the yaml file |
Definition at line 192 of file fm_yaml.F90.
|
private |
Reads the attribute blocks attached to a variable and populates the associated fmAttr structures. Returns two arrays containing key/value pairs of all methods defined via attribute blocks.
| [in,out] | fmvar | variable object |
| [in] | yfid | file id of the yaml file |
| [out] | method_keys | Method keys (names of attribute blocks) |
| [out] | method_values | Method values from attribute blocks |
Definition at line 266 of file fm_yaml.F90.