Repository navigation
Start user-configurable datamode for UFS - #450
Open
NickSzapiro-NOAA wants to merge 6 commits into
Open
NickSzapiro-NOAA wants to merge 6 commits into
NickSzapiro-NOAA wants to merge 6 commits into
Conversation
20 of 35 tasks
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description of changes
Current data component datamodes explicitly define the variables in streams and to advertise for export.
These implement maps of given input data to particular export variables using specific physics and processing details.
To complement, here user's configuration defines input and export variables.
Input and export variables are defined in (existing) ESMF configuration datm.streams and initialized
exp[nameinmodel]=strm[nameinfile].Since all export variables are advertised, nameinmodel needs to be in ESMF field dictionary.
Then coded calculations/conversions can operate on the exportState, triggered via switches in new calc_opts namelist option. These calculate on specific nameinmodel in exportState.
Specific notes
There are UFS-specific choices related to configuration via ESMF config and data atmosphere nameinmodel variables in calc_opts.
It seems variations of approach could really be shared across data components and modeling systems.
A configurable import-export datamode would also be interesting.
Contributors other than yourself, if any: Gemini AI.
Builds on #442 #396 #412
CDEPS Issues Fixed (include github issue #): #442
Are there dependencies on other component PRs (if so list):
Are changes expected to change answers (bfb, different to roundoff, more substantial): bfb
Any User Interface Changes (namelist or namelist defaults changes): Added datm_in calc_opts, off by default
Testing performed (e.g. aux_cdeps, CESM prealpha, etc): UFS regression testing
Hashes used for testing: TODO