NoahMP CCPP-compliancy#305
Conversation
…or handling dates)
|
Associated PRs: |
|
Status: Compiles successfully using Theia/Intel, but no attempt to run RTs yet. |
| @@ -0,0 +1,72 @@ | |||
| !> \file noahmp_pre.F90 | |||
There was a problem hiding this comment.
@climbfuji This code for calculating julian day and the year length was in GFS_physics_driver.F90, so I initially put this code in a NoahMP-specific interstitial scheme, but thinking a bit more, this code does not depend on location (only time), so why couldn't it be put in GFS_time_vary_pre_run where other time-related quantities are calculated to save some CPU cycles?
There was a problem hiding this comment.
This sounds like a reasonable idea to me!
There was a problem hiding this comment.
OK, thanks, I'll do that.
…y_pre_run; update GFS_time_vary_pre_run.fv3.F90 to new metadata and remove DDT dependency
… because it was originally done after the call to ccpp_physics_init in FV3GFS_io.F90/sfc_prop_restart_read
…use it was originally done after the call to ccpp_physics_init in FV3GFS_io.F90/sfc_prop_restart_read); this needs to happen before radition is called
…specific interstitial to test for b4b
|
|
||
| if(lsm == lsm_noahmp) then | ||
| !GJF* These calculations were originally in GFS_physics_driver.F90 for | ||
| ! NoahMP. They were moved to this routine since they only depends |
There was a problem hiding this comment.
I will correct the typo "they only depends" to "they only depend" in my collect-and-test PR.
| tbot ,zbot ,zsnso ,dzsnso , & !in | ||
| tg ,stc ,snowh ,sneqv ,sneqvo ,sh2o , & !inout | ||
| smc ,snice ,snliq ,albold ,cm ,ch , & !inout | ||
| #ifdef CCPP |
There was a problem hiding this comment.
Just wondering why we need ifdef CCPP in a CCPP physics scheme? Do you want to keep this for comparing it/merging our with code from other/the authoritative repositories/repository?
There was a problem hiding this comment.
The ifdef CCPP in all of the code in ccpp-physics for NoahMP was an attempt to try to anticipate these changes going back to an authoritative repo outside of CCPP so that the code could continue to be used as-is outside of the CCPP.
| if(fveg <= 0.05) fveg = 0.05 | ||
| else | ||
| write(*,*) "-------- fatal called in sflx -----------" | ||
| #ifdef CCPP |
There was a problem hiding this comment.
Very nice, thanks for making those code changes.
climbfuji
left a comment
There was a problem hiding this comment.
A massive amount of work. I did not check every line in this PR (8439 lines of code in one file alone - nature can't be this complicated).
I left a few notes for the future.
I will pull this PR into a new PR that collects MYJ, NoahMP and other developments and tests them together.
NCAR#305) * Introduction of CA domain definition. * Read/Write and restart capability of CA * Change namelist control parameter so that CA time and space scales are adjusted for various resolutions given the same CA namelist input. * Significant cleaning of old ideas. * Improved coupling to cumulus convection.
Feature/rte rrtmgp v1.8
Description of changes in ccpp-physics only:
Interstitials: