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

MIMICS into vertically resolved CTSM #1318

Merged
merged 80 commits into from
Feb 2, 2022

Conversation

slevis-lmwg
Copy link
Contributor

@slevis-lmwg slevis-lmwg commented Mar 31, 2021

Description of changes

Adding new model of below-ground biogeochemistry to the CTSM.

Specific notes

Getting MIMICS from Wieder et al. 2015 and from testbed into the vertically resolved CTSM.

Related issue: #1260

Contributors other than yourself, if any:
@wwieder @ekluzek

CTSM Issues Fixed (include github issue #):
Fixes #1473

Are answers expected to change (and if so in what way)?
No when comparing to answers from CTSM's existing below-ground bgc model(s).

Any User Interface Changes (namelist or namelist defaults changes)?
soilbgc_decomp can now also be MIMICSWieder2015

Testing performed, if any: regular testing

Added is_microbe to SoilBiogeochemDecompCascadeConType.F90 and copied
SoilBiogeochemDecompCascadeBGCMod.F90 to
SoilBiogeochemDecompCascadeMIMICSMod.F90 as a template for the work to
be done. No modifications to this file in this commit.
Transforming SoilBiogeochemDecompCascadeBGCMod.F90 into
SoilBiogeochemDecompCascadeMIMICSMod.F90. Setting up the framework
that MIMICS will fit into by using hooks already present in the CTSM.
I will post explanations and requests for clarification in the PR.
This is NOT working code.
@@ -0,0 +1,1302 @@
module SoilBiogeochemDecompCascadeMIMICSMod

This comment was marked as outdated.

@slevis-lmwg slevis-lmwg self-assigned this Apr 1, 2021
@slevis-lmwg slevis-lmwg added PR status: work in progress size: large Large project that will take a few weeks or more labels Apr 1, 2021
@wwieder

This comment has been minimized.

@slevis-lmwg

This comment has been minimized.

Copy link
Contributor

@wwieder wwieder left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lots of good stuff here, Sam.
looking forward to talking tomorrow.
Also, I accidentally resolved a comments re. t_scalar. Not sure what it was, but we won't use t_scalar in mimics

src/main/clm_varpar.F90 Outdated Show resolved Hide resolved
src/main/clm_varpar.F90 Outdated Show resolved Hide resolved
@slevis-lmwg

This comment has been minimized.

Largely updating the comments. Partly also updating code.
Remove unnecessary settings of nextsw_cday

Remove setting of nextsw_cday in initialization: this hasn't been needed
ever since we stopped calculating albedos in initialization.

Also remove nextsw_cday from clm_time_manager: this was being set but
was never referenced from here: instead, nextsw_cday was being passed as
an argument to clm_drv.

Also, updates cime to a branch tag where I have fixed the --retry option
to create_test.
src/main/clm_varpar.F90 Outdated Show resolved Hide resolved
@slevis-lmwg
Copy link
Contributor Author

@wwieder thanks! I will start the test-suites and will report when they complete.

Resolved conflicts:
doc/ChangeLog
doc/ChangeSum
@slevis-lmwg
Copy link
Contributor Author

@ekluzek the code uses four new param files in /glade/p/cesmdata/cseg/inputdata/lnd/clm2/paramdata and in /fs/cgd/csm/inputdata/lnd/clm2/paramdata. I assume I need to rimport them to the repository, but I wanted to confirm with you first.

@slevis-lmwg
Copy link
Contributor Author

@wwieder thanks! I will start the test-suites and will report when they complete.

izumi OK except one test fails
SMS_Vmct.f10_f10_mg37.I2000Clm50BgcCrop.izumi_pgi.clm-crop
and this is due to diffs from baseline (dev073).
cprnc.out shows diffs only in one variable:
RMS TOTECOSYSC 1.9853E-12 NORMALIZED 6.5087E-17
@ekluzek are you comfortable with this result, or do you propose I try to explain this difference?

cheyenne PASS
Two tests failed the first time around and passed on second attempt.

I will update the ChangeLog with these test results and push. Then, I think this PR is ready unless the izumi_pgi test needs investigation. Also, pending my question above about rimporting the new param files.

Remembered and added another issue that this PR resolves
@ekluzek
Copy link
Collaborator

ekluzek commented Feb 1, 2022

The PGI test seems to only be roundoff. And as it's only difference in answers for one test (and it's PGI which seems to be more sensitive) I think it's reasonable to take this as being fine.

SMS_Vmct.f10_f10_mg37.I2000Clm50BgcCrop.izumi_pgi.clm-crop

@ekluzek
Copy link
Collaborator

ekluzek commented Feb 1, 2022

Yes go ahead and rimport the files. I usually do this first, before running on izumi, so that the files will automatically appear their when you test.

Copy link
Collaborator

@ekluzek ekluzek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, so there are two changes I'm asking for. But, I am very excited to see this in the code! To have another decomposition option to run MIMICS!

You won't need to redo testing that's done. Just do the one new test that you add.

cime_config/testdefs/testlist_clm.xml Show resolved Hide resolved
<option name="wallclock">00:20:00</option>
<option name="comment" >Test soil_decomp_method = 'MIMICSWieder2015'</option>
</options>
</test>
Copy link
Collaborator

@ekluzek ekluzek Feb 1, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • Add a test for 1x1_brazil for the newton_krylov_spinup to run say 1 year.

SMS_Ly5_Mmpi-serial.1x1_brazil.IHistClm50BgcQianRs.cheyenne_intel.clm-newton_krylov_spinup
@slevis-lmwg
Copy link
Contributor Author

New test completed successfully and new baseline created:
./create_test SMS_Ly5_Mmpi-serial.1x1_brazil.IHistClm50BgcQianRs.cheyenne_intel.clm-newton_krylov_spinup -g /glade/p/cgd/tss/ctsm_baselines/ctsm5.1.dev074

@ekluzek I updated the ChangeLog to mention this.

@ekluzek ekluzek marked this pull request as ready for review February 2, 2022 02:50
@ekluzek ekluzek added PR status: ready PR: this is ready to merge in, with all tests satisfactory and reviews complete and removed PR status: work in progress labels Feb 2, 2022
@ekluzek ekluzek self-assigned this Feb 2, 2022
@ekluzek ekluzek merged commit 8d9f988 into ESCOMP:master Feb 2, 2022
@ekluzek ekluzek deleted the vert_res_in_mimics branch February 2, 2022 07:48
@ekluzek ekluzek restored the vert_res_in_mimics branch February 2, 2022 07:49
@ekluzek ekluzek deleted the vert_res_in_mimics branch February 2, 2022 07:53
@wwieder
Copy link
Contributor

wwieder commented Feb 2, 2022

Thanks Sam and Erik!

@samsrabin samsrabin added enhancement new capability or improved behavior of existing capability science Enhancement to or bug impacting science labels 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 PR status: ready PR: this is ready to merge in, with all tests satisfactory and reviews complete science Enhancement to or bug impacting science size: large Large project that will take a few weeks or more
Projects
Status: Ready to eat (Done!)
Status: Done (non release/external)
6 participants