-
Notifications
You must be signed in to change notification settings - Fork 336
ctsm5.3.077: Removing non doalb call of wrap_canopy_radiation for fates #3051
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
base: master
Are you sure you want to change the base?
Conversation
I am testing this in coupled cases. |
Also, there is a need to not allow |
@mvdebolskiy , non-downscaled shortwave could just be a a legacy issue, ie we've been using it before a downscale version became available, but I'm just guessing. It has been that way since fates was clm-ed. I suppose there is no reason to not use the most downscaled version possible, but would need to look into how the downscaling is done and what is the actual change of scales (or what subgrid variability is this covering) before I could weigh-in . |
The downscaling is just for hillslope hydrology, in general case it equals to greedcell one, so if there is a need to have fates compatible with it, than the column level, downscaled sw should be used, same way as column level coszen. |
Yes, @mvdebolskiy is right, you should use downscaled...
In columns where that don't have downscaling, they'll be identical, but you'll want it for those cases that do use it. So you should just always use the downscaled version. Downscaling is also done for glaciers -- which doesn't apply to FATES. But, the point is -- you'll want it for any cases where it has been done. |
I'd actually like to get this new testcase installed in this PR. Partially, so that we can show that the new test breaks without the change, and it passes with it. This should be easy enough to do. I don't think adding this test will slow this effort down enough that it can't be done now. |
@ekluzek and @mvdebolskiy can you take a look at the new tests and give feedback corrections? this is not my wheelhouse |
@rgknox they look fine, one thing that might be useful is to make one to have two-tream. You can make it full fates, actually, not just no-comp fixed-biogeo, since the late flags should not matter for the purpose of this tests. |
…ing direct radiation to fates (which is scaled).
Removing the call for update and normalized radiation breaks hybrid/startup with finidat runs. |
Ok, thanks for noting that @mvdebolskiy |
@mvdebolskiy could you post the error for the break? I'm wondering if other fixes that have been implemented, such as the cross-referenced PR above may address the problem |
@mvdebolskiy your a legend, I'm getting passes in the following test: ERI_D_Ld9.f45_f45_mg37.I2000Clm60Fates.derecho_gnu.clm-FatesColdCamLndTuningMode Should we get this into the integration pipeline soon? |
I guess so, can you try the same test but with SP? |
I think this PR is close to ready. Recent changes:
|
Below is the test fail list as of f427877. Note that most of these are either expected, or simply missing bases since the tests are new. The only test fail that I see is the restart compare on the new ERI test (ERI_D_Ld9.f45_f45_mg37.I2000Clm60FatesSpCruRsGs.derecho_gnu.clm-FatesColdSatPhenCamLndTuningMode.C.0921-123413de_gnu), and it is just relegated to diffs on the fates radiation error diagnostics:
Although, there is a good chance this will be fixed in FATES 1397 Either way, we need to move forward, I added an expected fail for the test. I will note this in an issue and we can work on it if 1397 does not fix the problem. The good part is that judging by the numbers, this does not seem to be impacting scientifically meaningful results in the restart.
|
<test name="ERI_D_Ld9" grid="f45_f45_mg37" compset="I2000Clm60Fates" testmods="clm/FatesColdCamLndTuningMode"> | ||
<machines> | ||
<machine name="derecho" compiler="intel" category="aux_clm"/> | ||
<machine name="derecho" compiler="gnu" cateogory="fates"/> |
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.
May be swap compilers between test-suites here? Since the test above already checks _D and Intel.
! The first clause is to maintain b4b with base, but is not necessary. | ||
|
||
if (use_fates .and. .not.doalb ) then | ||
if ( (is_cold_start .and. get_nstep() == 1) .or. & |
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.
Oh, now I see why you had baseline diffs and I did not. I was comparing ERI fix with the version where I've already removed (use_fates .and. .not. doalb)
since you update coszen twice on coldstart and that update was not necessary. Not sure how big of a difference that makes actually. The only thing I notice now is that (get_nstep()==1)
is on the both sides of the .or.
so it can probably go into (use_fates .and. .not. doalb)
=> (use_fates .and. .not. doalb .and. get_nstep()==1)
Description of changes
This reverts a previous change that enabled a call to fates' wrap_canopy_radiation and zenith angle updates when the doalb flag was false. The original implementation was (apparently) needed for elm-fates to enable branch type restart runs, but appears to be unnecessary for clm-fates. The previous code was causing problems for cam-fates coupled runs.
Specific notes
Contributors other than yourself, if any: @mvdebolskiy performed tests, @ekluzek and @mvertens provided consultation
CTSM Issues Fixed (include github issue #):
Fixes: #3043
Are answers expected to change (and if so in what way)? no expected changes
Any User Interface Changes (namelist or namelist defaults changes)?
Does this create a need to change or add documentation? Did you do so?
Testing performed, if any:
(List what testing you did to show your changes worked as expected)
(This can be manual testing or running of the different test suites)
(Documentation on system testing is here: https://github.com/ESCOMP/ctsm/wiki/System-Testing-Guide)
(aux_clm on derecho for intel/gnu and izumi for intel/gnu/nag/nvhpc is the standard for tags on master)
so far: ERI_Ld10.f45_f45_mg37.I2000Clm50FatesCru.derecho_gnu.clm-FatesColdTwoStream and ERS_Ld3.f19_g17.I2000Clm50FatesCru.derecho_gnu.clm-FatesColdTwoStream
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).