At least one CAM chemistry package (TUV-X) requires constituent values above the top of the model. We will need a mechanism for optionally allocating and keeping track of these values for the constituents that need this information.
Solution
Implement new logical metadata property above_model_top that, when true, will trigger relevant allocation/setting of below
Implement a new constituent property above_model_top_index that will return -1 if the constituent doesn't need this information and otherwise the index of the array in (3) below
Implement a new field in the ccpp_model_constituents_t object above_model_top_array that will be an allocatable array of 2 dimensions (dimension 1 will be allocated to the number of columns, dimension 2 will be allocated to the number of constituents that require this field). This field will also be added to ccpp_constituent_prop_mod.meta with standard name ccpp_constiutent_above_model_top_values
Description
At least one CAM chemistry package (TUV-X) requires constituent values above the top of the model. We will need a mechanism for optionally allocating and keeping track of these values for the constituents that need this information.
Solution
above_model_top
that, when true, will trigger relevant allocation/setting of belowabove_model_top_index
that will return -1 if the constituent doesn't need this information and otherwise the index of the array in (3) belowabove_model_top_array
that will be an allocatable array of 2 dimensions (dimension 1 will be allocated to the number of columns, dimension 2 will be allocated to the number of constituents that require this field). This field will also be added to ccpp_constituent_prop_mod.meta with standard nameccpp_constiutent_above_model_top_values