-
Notifications
You must be signed in to change notification settings - Fork 369
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
EAMxx: Allow to save a dictionary of fields in the FieldManager #6842
base: master
Are you sure you want to change the base?
Conversation
|
@bartgol This issue lists a number of "wishlist" items for run logging: E3SM-Project/scream#1372 . There might be a few things there that we can add to this PR. We can also move this Issue over to E3SM too. |
Of all those items, I think the only one that can make sense here is to list the providers/customers of each field. It's not going to tell the user the order in which things happen, but at least it's going to tell the user why the field is in the FM... |
0c6eb2b
to
c2a8078
Compare
@AaronDonahue @mahf708 I changed a bit the formatting:
Snippet: %YAML 1.1
---
description: |
content of the EAMxx FieldManager corresponding to the 'Physics' grid.
The dict keys are the field names as used in EAMxx.
For each field, we add the following entries:
- standard_name: the name commonly used to refer to this field in atm sciences (if applicable)
- units: the units for this field used in EAMxx
- layout: the names of the dimensions for this field (time excluded)
- providers: the atm processes that update/compute this field
- customers: the atm processes that require this field as an input
fields:
LW_clnclrsky_flux_dn:
customers: []
layout: [ncol, ilev]
providers: [rrtmgp]
standard_name: LW_clnclrsky_flux_dn
units: W/m2
...
SW_flux_up:
customers: []
layout: [ncol, ilev]
providers: [rrtmgp]
standard_name: SW_flux_up
units: W/m2
T_mid:
customers: [homme, shoc, p3, rrtmgp]
layout: [ncol, lev]
providers: [homme, shoc, p3, rrtmgp]
standard_name: air_temperature
units: K
... I would like to merge an EKAT pr first, update ekat, then merge this, since it would help simplifying the format of the output file (e.g., output inline |
Looks good! |
The option (off by default) allows to save a yaml file containing a dictionary of the fields on the "Physics" grid, with some of their details.
As an example, this is a snippet of the file content I get in one of our units tests:
I may want to add something else, so if you have suggestions, fire away. E.g., I want to save the list of atm processes in the EAMxx configuration that generated the yaml file.