Have compsets determine CCSM_BGC setting for CO2 in ending _BGC% setting
- Dominant language
- Fortran
- Stars
- 35
- Forks
- 106
- Avg merge
- 6d 5h
- Merged PRs (30d)
- 4
Description
Right now there are several xml variables that have to be coordinated across CESM in different components.
Things that have to coordinate:
- CCSM_BGC – here in CMEPS
- DATM_CO2_TSERIES – in DATM
- CLM_CO2_TYPE – in CLM
- OCN_CO2_TYPE – in MOM
- CO2 settings: CAM_BLDNML_OPTS (-co2_cycle) and co2_cycle_rad_passive namelist -- in CAM
Right now they are treated independently and defaults are set by patterns from the compsets. But, the patterns watch different things, and are mostly tied to the compset period. The patterns checked for are also inconsistent, since they can evolve independently. But, this leads to problems in getting it setup correctly.
See for example this case in CDEPS:
https://github.com/ESCOMP/CDEPS/issues/225
And I'm also realizing it's a problem for CLM as well, and CLM, DATM, and CMEPS currently aren't set consistently.
But, I think the problem goes away if we rearrange how these are set to do the following principles:
- [ ] Have CMEPS set the CCSM_BGC setting based on the components involved and the _BGC% setting
- [ ] Have components set their defaults based on what CCSM_BGC is set to (and the compset when necessary)
- [ ] Have components die if their CO2 setting is inconsistent with CCSM_BGC in CMEPS
- [ ] Have the CCSM_BGC setting, set by the _BGC% setting in the compset
Some potential steps to get there
- [ ] Update CTSM defaults to use CCSM_BGC and _BGC%B in the compset
- [ ] Update CTSM buildnml to check for consistency with CCSM_BGC and DATM_CO2_TSERIES
- [ ] Do similar steps for MOM
- [ ] Add _BGC%CONST type setting to CMEPS
- [ ] Update CTSM compsets to require _BGC% in them (and have a checker for this)
- [ ] Update MOM compsets
- [ ] Update CAM defaults and CAM compsets
- [ ] Could potentially remove some of the extraneous logic for setting CCSM_BGC in CMEPS
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by tracing the listed CCSM_BGC, DATM_CO2_TSERIES, CLM_CO2_TYPE, OCN_CO2_TYPE, and CAM CO2 settings across CMEPS, DATM, CLM, MOM, and CAM, and read CDEPS issue 225. Review the proposed checklist and compset patterns before changing behavior. Done means the components derive consistent defaults from CCSM_BGC and _BGC%, reject inconsistent CO2 settings, and the relevant compsets are updated and checked.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- fortran
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 28/100