-
Notifications
You must be signed in to change notification settings - Fork 318
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 ctsm_sci test list that would be used for releases and making sure important resolutions run well #1142
Comments
I've started this in #1150. I just included the list of compsets that have "science_supported" clicked. So only f09 and f19. There are some issues that I think are just due to known problems. So I'm bringing it in with the following fails... SMS_Ld5.f09_g17.IHistClm45BgcCruGs.cheyenne_intel.clm-default Since there are scientists that run on izumi it would be good to have f09 and f19 tests there. We wouldn't add the CAM grids to izumi though. |
@ekluzek I know this is a work in progress, but it sounds like the immediate needs have been met. Should we close this issue? |
I suppose we could close it as the test list now exists. |
CNFire: btran2 fixes and general cleanup (1) Call routine to calculate fire's btran2 from CNFireArea; this has a few advantages: - It makes the logic of CNFireArea more clear (rather than depending on a btran2 variable that is calculated from some other part of the code) - This avoids having the biogeophysics depend on the biogeochemistry - This lets us avoid doing this btran calc if using no-fire – or other, future, fire methods that don't need it Note regarding testing: In the initial step, I kept this calculation dependent on a saved version of h2osoi_vol to avoid changing answers; I changed this in the answer changes in step (2), as noted below. (2) Answer-changing fixes to CNFire's btran2 calculation and use: (a) Calculate fire btran2 using updated h2osoi_vol (this is an answer-changing cleanup step from (1)) (b) TEMPORARY CHANGE (reverted in the cleanup in (3)): Reinitialize fire btran2 to spval for all patches in each time step, so that the fire code isn't trying to use btran2 from earlier time steps for patches that were in the exposed veg filter at one point but no longer are. One implication of this is that, if there is currently no exposed veg on a column, the new code leads to the block of code that forces fire_m = 0 (because wtlf will be 0). Previously, in contrast, it looks like fire_m was allowed to be non-zero even if there is currently no exposed veg, because btran2 and wtlf were accumulated if a patch ever was exposed in the past. (c) Limit fire btran2 to be <= 1, rather than letting it be slightly greater than 1. (Due to a conditional in CNFireArea, these slightly-greater-tan-1 values were being ignored when computing btran_col, rather than averaging in a 1 value.) (3) Non-answer-changing fire code cleanup: (a) Cleanup of the btran2 fixes, including reverting the TEMPORARY CHANGE noted in (2b), instead relying on a better mechanism: just doing the calculations of btran_col and wtlf over the exposedvegp filter. Also, get rid of the checks for shr_infnan_isnan(btran2(p)) and btran2(p) <= 1 (allowed by the other changes in (2) and (3)). (b) Set btran2 to 0 over non-exposed-veg points: this changes answers for the BTRAN2 diagnostic field, but nothing else. (This follows what is done for the standard BTRAN.) (c) Move calc_fire_root_wetness for CNFireLi2021 into the base type to avoid future bugs (assuming that the next fire module will extend the base class but will also want to use this new version of calc_fire_root_wetness). (d) Change fire looping structure to be more standard (4) Remove some very expensive tests from aux_clm, putting some in the new ctsm_sci test list instead (5) A bit of other minor cleanup Issues fixed: - Resolves #1139 (Decrease expense of ne0ARCTICGRISne30x8 test and C96 tests) - Resolves #1153 (Fire btran2 is only computed for exposed veg patches, but is used over all veg patches) - Resolves #1170 (CNFire code: btran2 should not be skipped when it's greater than 1) - Partially addresses #1142 (Add ctsm_sci test list that would be used for releases and making sure important resolutions run well)
…rv_term_reporting Carbon starvation termination mortality reporting
We think it would be good to have a "ctsm_sci" test list that would have the list of important resolutions/configurations used for CTSM science. I think this would be f09_g17, g19_g17, and f45. It should also have a NWP configuration. Anything that we list as "scientifically supported" should be in this test list. Probably would all be for production compiler settings, maybe just one test at debug to make sure there aren't problems with it.
This would also have the resolutions that are critical for CAM (so C96 and ARCTIC, CONUS, ARTICGRIS grids). It would just be for the standard compiler on the main production machine (cheyenne_intel right now).
This test list would be run supplementary to the regular aux_clm test that would be used for normal tags. This would be run for releases, or important tags that we want to make sure the science resolutions are running. We could move some of the tests we have in aux_clm to this test list, to save time in the normal test list. This would be thought of as a supplementary test list that's run in addition to the standard test list done for tags. As such it doesn't need to test the same things already done for aux_clm.
This relates to these issues that talk about testing...
#1139
#1141
The text was updated successfully, but these errors were encountered: