-
Notifications
You must be signed in to change notification settings - Fork 344
ctsm5.4.014: Fix for xm2 and revise logic for excess ice melt #3718
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
Conversation
|
As part of this fix, would it be possible to remove some of the commented-out lines, and also to change the name from 'phasechange_beta' to just 'phasechange'? The '_beta' was added during testing many years ago, and could be removed. |
|
@swensosc I can clean-up this tomorrow. Here are some figures for long experiments I've done with This is for year 29 month 2 where maximum difference in soil temperature at 3 m is observed. The point plot is the gridcell with the largest absolute error for 3 m temperature. Same as above, but adding +50 degrees to the forcing. Maximum absolute difference is now on year 14. Following figures show difference for the end of simulation. The point ploted is the the one with maximum difference for excess ice volume fraction by the end of 40 year run with 0 degrees added to forcing. Last figure is the maximum differences for: Subsidence, Excess ice volume, total soil ice specific mass and mean column soil temperature.
|
|
All in all, the fix does not create huge differences in the soil state in the long run, however, there are some odd gridcells, I can look at other variables, probably latent heat flux/NBP/runoff? But I doubt that after the spinup from coldstart f.e. there will be drastically different states. Aux_clm gives baseline diffs, but all the tests are quite short (longest, I think is 3y?) so the differences are tiny, but in a lot of variables (which is expected) |
|
Thanks for making these plots, @mvdebolskiy. How does permafrost depth (ALTMAX) change with the bug fix? |
|
@mvdebolskiy the tag that comes before this is about done. So I'm going to start working on bringing this in. So I'll push updates to master and the like. Let me know if anything comes up in your testing that shows I shouldn't proceed forward with it. |
|
@wwieder Here are spatial averages of mean abs error and max abs error: |
|
@ekluzek I've updated up to |
ekluzek
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good to me. @swensosc approved the science changes. There several things that make the code easier to read as well:
- Drop the _beta suffix from the subroutine name which didn't seem to have a meaning
- Remove commented out code that made it confusing
- Change a setting of a value to a "if else if" structure that makes it easier to compare the difference in the if (better way to code and better for performance)
- A few key comments that help
|
@mvdebolskiy awesome this is great. I'll do the testing and bring this in shortly. Two questions for you: First -- do you want to create the ChangeLog or -- should I based on the comments here? |
|
one small addition: could we add a longer explanation here? |
swensosc
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I approve
Yes. Add an issue there, and fill out everything that makes sense in the template. You probably ran on a machine in Norway, and likely didn't run the LDF or ILAMB. But, document what you have, and maybe display whatever plots you have -- or maybe point to the plots here? For the LDF/ILAMB results they have a website where they put data that they can just point to. If you do have something like that it would be good to have -- but don't worry about it if you don't. Also since the case data is in Norway, you just report about where it is and the casenames and such. We don't need to copy it anywhere, just report it like it is. Since, we've only used LMWG_dev for cases on Derecho, you might need to adjust some of the templates. But, it will be a good test case to document a case ran in Norway, so that we can do this for other cases in the future. It helps highlight that CTSM is run around the world and highlights the NorESM/CTSM partnership. |
|
I've ran those cases on derecho and looked at the output with matlab on my local machine. I will post an issue tomorrow. |
|
Testing is as expected on Derecho and Izumi so far. Testing is complete on Derecho and there's only one test left on Izumi. Only the following 22 tests showed differences to answers. They are all clm6_0 physics which would be expected, and mostly longer tests. Most of the shorter tests, must not have shown differences (and the Izumi tests are all short, so it wasn't shown there either). |
…tions not in LMWG_dev
…nto pr-fix-xm2-excess-ice











Description of changes
As described in #3677,when there is more than enough heat to melt
h2osoi_iceextra heat (xm2) was calcuated incorrectly based on the updatedh2osoi_icevalue.Specific notes
Will post plots in the next comments
Contributors other than yourself, if any: @changemode @swensosc
CTSM Issues Fixed (include github issue #):
Fixes #3677
Are answers expected to change (and if so in what way)?
Yes, this will change soil temperature/moisture state (and everything else that depends on it) within ~10 years, starting from current intial conditions. Soil would be warmed less (correctly) in the layer where all soil ice and some excess ice have melted.
Any User Interface Changes (namelist or namelist defaults changes)?
No
Does this create a need to change or add documentation? Did you do so?
No
Testing performed, if any:
Manual tests with I2000ClmBgcCrop + aux_clm on derecho.
NOTE: Be sure to check your coding style against the standard
(https://github.com/ESCOMP/ctsm/wiki/CTSM-coding-guidelines) and review
the list of common problems to watch out for
(https://github.com/ESCOMP/CTSM/wiki/List-of-common-problems).