coupling esmf atm.yaml: Difference between revisions
| Line 111: | Line 111: | ||
|style="width: 350px;" align="center" | <span class="violet">standard_name</span> | |style="width: 350px;" align="center" | <span class="violet">standard_name</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">dLWrad</span> | ||
| <span class="twilightBlue">surface_net_downward_longwave_flux</span> | | <span class="twilightBlue">surface_net_downward_longwave_flux</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">dSWrad</span> | ||
| <span class="twilightBlue">net_downward_shortwave_flux_at_sea_water_surface</span> | | <span class="twilightBlue">net_downward_shortwave_flux_at_sea_water_surface</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">dSST</span> | ||
| <span class="twilightBlue">sea_surface_temperature_data</span> | | <span class="twilightBlue">sea_surface_temperature_data</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">Hair</span> | ||
| <span class="twilightBlue">surface_specific_humidity</span> | | <span class="twilightBlue">surface_specific_humidity</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">LHfx</span> | ||
| <span class="twilightBlue">surface_latent_heat_flux</span> | | <span class="twilightBlue">surface_latent_heat_flux</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">LWrad</span> | ||
| <span class="twilightBlue">surface_net_downward_longwave_flux</span> | | <span class="twilightBlue">surface_net_downward_longwave_flux</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">Pair</span> | ||
| <span class="twilightBlue">surface_air_pressure</span> | | <span class="twilightBlue">surface_air_pressure</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">Pmsl</span> | ||
| <span class="twilightBlue">mean_sea_level_pressure</span> | | <span class="twilightBlue">mean_sea_level_pressure</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">Qair</span> | ||
| <span class="twilightBlue">surface_relative_humidity</span> | | <span class="twilightBlue">surface_relative_humidity</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">rain</span> | ||
| <span class="twilightBlue">precipitation_flux</span> | | <span class="twilightBlue">precipitation_flux</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">shflux</span> | ||
| <span class="twilightBlue">surface_downward_heat_flux_in_sea_water</span> | | <span class="twilightBlue">surface_downward_heat_flux_in_sea_water</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">SHfx</span> | ||
| <span class="twilightBlue">surface_sensible_heat_flux</span> | | <span class="twilightBlue">surface_sensible_heat_flux</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">SST</span> | ||
| <span class="twilightBlue">sea_surface_temperature</span> | | <span class="twilightBlue">sea_surface_temperature</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">sustr</span> | ||
| <span class="twilightBlue">surface_downward_x_stress</span> | | <span class="twilightBlue">surface_downward_x_stress</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">svstr</span> | ||
| <span class="twilightBlue">surface_downward_y_stress</span> | | <span class="twilightBlue">surface_downward_y_stress</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">swflux</span> | ||
| <span class="twilightBlue">surface_upward_water_flux</span> | | <span class="twilightBlue">surface_upward_water_flux</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">SWrad</span> | ||
| <span class="twilightBlue">net_shortwave_flux_at_sea_water_surface</span> | | <span class="twilightBlue">net_shortwave_flux_at_sea_water_surface</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">Tair</span> | ||
| <span class="twilightBlue">surface_air_temperature</span> | | <span class="twilightBlue">surface_air_temperature</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">Uwind</span> | ||
| <span class="twilightBlue">surface_eastward_wind</span> | | <span class="twilightBlue">surface_eastward_wind</span> | ||
|- | |- | ||
| <span class=" | | <span class="twilightBlue">Vwind</span> | ||
| <span class="twilightBlue">surface_northward_wind</span> | | <span class="twilightBlue">surface_northward_wind</span> | ||
|- | |- | ||
|} | |} | ||
Revision as of 22:01, 27 April 2022
The coupling_esmf_<atm>.yaml (where <atm> is the model name) file specifies the ROMS Coupling ESMF/NUOPC System Import/Export Metadata Dictionary. Starting svn revision -r 1902 released on March 1, 2022, the ROMS coupling metadata is managed with a YAML file, and the regular text file coupling_esmf_<atm>.dat is deprecated. The YAML files are simple, easy to follow, elegant, portable, and expandable. ROMS can now process YAML files with its parser module, yaml_parser.F. Therefore, there is no need to use third-party YAML parsers. Basically, coupling_esmf_<atm>.yaml has the following structure:
DATA_component: data.nc
ROMS_component: &OCN ROMS
metadata:
- standard_name: sea_surface_temperature
long_name: sea surface temperature
short_name: SST
data_variables: [temperature, time]
source_units: C
destination_units: K
source_grid: cell_center
destination_grid: cell_center
add_offset: 273.15d0
scale: 1.0d0
debug_write: false
connected_to: *OCN
regrid_method: bilinear
extrapolate_method: nearest
- standard_name: sea_surface_temperature_data
long_name: sea surface temperature data
short_name: dSST
data_variables: [temperature, time]
source_units: C
destination_units: K
source_grid: cell_center
destination_grid: cell_center
add_offset: 273.15d0
scale: 1.0d0
debug_write: false
connected_to: *ATM
regrid_method: bilinear
extrapolate_method: nearest
...
The field key and value pair in the YAML blocking list is as follows:
| Key | Description | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| standard_name | CF conventions standard name for variable. A list of applicable standard_name attributes are shown below. | ||||||||||||
| long_name | The field's long descriptive name. | ||||||||||||
| short_name | The field's short name private to the NUOPC cap module | ||||||||||||
| data_variables | The DATA component NetCDF field and time variable names. | ||||||||||||
| source_units | The field's source units. | ||||||||||||
| destination_units | The field's destination units. | ||||||||||||
| source_grid | The field's source grid-cell location. | ||||||||||||
| destination_grid | The field's destination grid-cell location. | ||||||||||||
| add_offset | The value to add to the exchanged field. | ||||||||||||
| scale | The scale to use to convert data from source to destination. | ||||||||||||
| debug_write | A switch indicating whether or not to write out exchanged field, if DebugLevel>2. | ||||||||||||
| connected_to | The source component to which the field is connected. | ||||||||||||
| regrid_method | The field regridding method from source to destination:
| ||||||||||||
| extrapolate_method | The field extrapolation method for unmapped points:
|
The ESM imported fields are processed as:
- field (destination_units) = field (source_units) * scale + add_offset
YAML allows alias and anchor to avoid repetition. In YAML, single or multiple line comments start with a hash #. Also, comment after a key/value pair is allowed. All comments are skipped during processing.
Metadata: standard_name
The following table shows the coupling metadata short_name and standard_name ESMF/NUOPC export and Import states. They follow CF conventions. However, we needed to create lots of them because are not available in the CF tables but followed their established syntax.
| short_name | standard_name |
| dLWrad | surface_net_downward_longwave_flux |
| dSWrad | net_downward_shortwave_flux_at_sea_water_surface |
| dSST | sea_surface_temperature_data |
| Hair | surface_specific_humidity |
| LHfx | surface_latent_heat_flux |
| LWrad | surface_net_downward_longwave_flux |
| Pair | surface_air_pressure |
| Pmsl | mean_sea_level_pressure |
| Qair | surface_relative_humidity |
| rain | precipitation_flux |
| shflux | surface_downward_heat_flux_in_sea_water |
| SHfx | surface_sensible_heat_flux |
| SST | sea_surface_temperature |
| sustr | surface_downward_x_stress |
| svstr | surface_downward_y_stress |
| swflux | surface_upward_water_flux |
| SWrad | net_shortwave_flux_at_sea_water_surface |
| Tair | surface_air_temperature |
| Uwind | surface_eastward_wind |
| Vwind | surface_northward_wind |