E3SM-Project / E3SM-Project/scream
I/O: Add standard name metadata to all output variables - Re: CF-Compliance
- Dominant language
- No language data
- Stars
- 79
- Forks
- 54
- PR merge metrics
- No merged PRs in 30d
Description
We have been talking about making our output CF-Compliant for awhile. I'm adding this Issue so we can track that effort.
My understanding is that we simply need to add the `standard_name` metadata to a variable to make it CF-Compliant. The trick is that we would want to ensure that every variable has the correct "standard name" according to the CF guidlines, see https://cfconventions.org/Data/cf-standard-names/current/build/cf-standard-name-table.html
Ideas we have considered:
- Add a "standard_name" internal variable to the `field` class that can be set by `add_field`
- Have a lookup dictionary available to I/O that will check an EAMxx field name for a predefined standard name.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the field class, add_field, and the I/O path that writes output variables. Compare the EAMxx field names with the CF standard-name table and determine whether field metadata or an I/O lookup dictionary fits. Done means every output variable has the correct standard_name metadata and the mapping is validated.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- data
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100