[WIP] Allow prescribed gddmaturity to vary based on recent climate #2557
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.
Work in progress! Do not review!
Subject to force pushes!
Description of changes
In the existing code, when using the default CLM crop calendars,
gddmaturity
(maturity requirement; the number of growing degree-days it takes for a crop to mature and be harvested) can vary within some bounds based on climate over the past 20 years. Specifically, CLM looks at some annual "warm period" which differs between the northern and southern hemispheres. This variation allows "farmers" to adapt the "cultivars" (varieties) they grow based on recent climate.When prescribing maturity requirement, though—with input file
stream_fldFileName_cultivar_gdds
—it's currently not allowed to vary over time. Instead, it's locked in to what's provided in the input file: the mean GDD accumulation in the GGCMI growing period over the 1980-2009 growing seasons.We want this variation to allow "farmers" to adapt the "varieties" they grow based on whether the recent climate has been warmer or cooler than that baseline 1980-2009 period.
This PR represents the first step toward adding that ability. I'm breaking this work up into separate PRs to keep them manageable:
gddmaturity
values to a realistic range.Specific notes
Contributors other than yourself, if any: None
CTSM Issues Fixed (include github issue #):
Are answers expected to change (and if so in what way)? Not unless enabling this new, experimental feature.
Any User Interface Changes (namelist or namelist defaults changes)?
stream_fldFileName_gdd20_baseline
(default''
). Pointing this at a file automatically enables adaptation of prescribed maturity requirements; there's no separate boolean namelist variable to worry about. Providing this file but not prescribed maturity requirements will cause an error in the build namelist step.Does this create a need to change or add documentation? Did you do so? Documentation will need to be updated when all the PRs in my plan are merged and this feature is considered ready for use. For now, since it's not ready, I want it to be undocumented!
Testing performed, if any: None yet.
stream_fldFileName_gdd20_baseline
provided works as we expect (gddmaturity
changes over time)