Skip to content
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

Add tillage and residue removal #2311

Merged
merged 137 commits into from
Jan 10, 2024
Merged

Conversation

samsrabin
Copy link
Collaborator

Description of changes

This PR combines #2040 and #2297.

Tillage: This PR brings in the tillage code written by Sam Levis and Michael Graham and used in Graham et al. (2021, ERL, doi:10.1088/1748-9326/abe6c6). Low- and high-intensity tillage here work by increasing the decomposition rate of different soil carbon pools. These "decomposition multipliers" vary based on soil pool and how long it's been since the crop was planted; they are set with new paramfile variables till_decompk_multipliers and mimics_till_decompk_multipliers. Note that tillage is off by default.

Residue removal: Adds parameter crop_residue_removal_frac (default 0) that represents what fraction of post-harvest crop residues (stems and leaves) should be removed to the crop product pool rather than being transferred to litter.

Specific notes

Contributors other than yourself, if any: @mwgraham, @slevis-lmwg, @danicalombardozzi

CTSM Issues Fixed:

Are answers expected to change (and if so in what way)? No

Any User Interface Changes (namelist or namelist defaults changes)?

  • Adds parameter tillage_mode with options off (default), low, and high.
  • Adds parameter use_original_tillage_phases (false by default; see Add soil tillage for crops #2040).
  • Adds parameter max_tillage_depth.
  • Adds parameter crop_residue_removal_frac (default 0)

Testing performed, if any:

  • aux_clm passes
  • Python tests pass

samsrabin added 30 commits May 20, 2023 14:58
Each crop column should only have one patch, so by only calling these for crop columns, we can simplify things considerably.
"Throw error during namelist build if tillage is called with FATES"
Update FATES tests to double precision

This pull request updates the fates tests to set the output
precision to double precision.  The usermod fates_sp is similarly
updated.
Improvements to processing of crop calendar files

In python/ctsm/crop_calendars/, process_ggcmi_shdates.py and regrid_ggcmi_shdates.py are used to convert the raw GGCMI crop calendar files into CTSM-compatible versions. This update fixes some bugs, removes dependencies on the nco utilities, enables the use of surface datasets as template files (in addition to the existing ability to use CTSM output files), and standardizes things for consistency with other CTSM Python tools.
(cherry picked from commit 142c2c1)
Makes no changes, but I realized the cherry-pick I did before won't let Github recognize that this is up-to-date with the tillage branch.
@samsrabin samsrabin self-assigned this Jan 10, 2024
@samsrabin samsrabin added enhancement new capability or improved behavior of existing capability testing additions or changes to tests tag: enh - new science labels Jan 10, 2024
@samsrabin samsrabin merged commit 438bcc6 into ESCOMP:master Jan 10, 2024
2 checks passed
@wwieder
Copy link
Contributor

wwieder commented Jan 17, 2024

Seems like this will have to be integrated into MatrixCN before @slevis-lmwg can merge #640

@slevis-lmwg slevis-lmwg mentioned this pull request Mar 7, 2024
@samsrabin samsrabin added the science Enhancement to or bug impacting science label Aug 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement new capability or improved behavior of existing capability science Enhancement to or bug impacting science testing additions or changes to tests
Projects
Status: Done (non release/external)
Development

Successfully merging this pull request may close these issues.

Add "tillage" to bgc-crop model
2 participants