-
Notifications
You must be signed in to change notification settings - Fork 105
[WIP] JSON based parameters #1493
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
base: main
Are you sure you want to change the base?
Conversation
|
Notes from the FATES model meeting: Poll results on JSON vs XML preference Feature requests:
Provide additional support to migrate external workflows that interface with the parameter file, such as
Most people seemed to favor JSON, but we played the devils advocate and discussed arguments for going with XML. Familiarity XML and that it is used in various other workflows like CIME and GCAM seemed to be a point for it. People also expressed hope that the new method would help mitigate complications with keeping personal parameter files up-to-date with format changes (like adding modifying or deleting parameters). |
…he first json files.
|
I went through each parameter and jotted down their datatypes in this temporary text file: 1 : float I will use this to generate the the "datatype" attribute in the first json file. |
…g from a cdl file.
…rtran json parser
…ypes are read first in that order
…rom the name variables to parameters
Description:
This set of changes migrates FATES away from using a netcdf based parameter file. The file format is changed to JSON (or XML depending on discussion). A fortran JSON parsing utility is provided (not external module), which utilizes a character-by-character file scan and indexing functions. Python utilities are planned to be converted from netcdf to json based as well.
A new utility is available, that converts pre-existing netcdf parameter datasets to the json (or xml) format.
Synchronized with: CTSM 3570
Collaborators:
@glemieux
To Do:
Expectation of Answer Changes:
This should not have any meaningful changes, but reading in the parameters differently could have very small, inconsequential changes to answers (barely outside of roundoff diffs).
Checklist
If this is your first time contributing, please read the CONTRIBUTING document.
All checklist items must be checked to enable merging this pull request:
Contributor
Integrator
If satellite phenology regressions are not b4b, please hold merge and notify the FATES development team.
Documentation
Test Results:
CTSM (or) E3SM (specify which) test hash-tag:
CTSM (or) E3SM (specify which) baseline hash-tag:
FATES baseline hash-tag:
Test Output: