Move sfc emis alb calculation to its own scheme and z0 composite consistent#627
Conversation
…ter_20210331 Update gsl/develop from master 2021/03/31
GFS_phys_time_vary_init.
…into frac_emiss_albedo
frac_grid=.false.
…emes into GFS_radiation_surface, consolidate, fix bugs
lsm_ruc_init. This is needed for MYNN surface layer scheme at the first time step.
…composites_post, add necessary new interstitial variables, clean up old/unused interstitial variables
…ve_sfc_emis_alb_calculation_to_its_own_scheme_and_z0_composite_consistent
| ! BWG, 2021/02/25: cmm=cd*wind, chh=cdq*wind, so use composite cd, cdq | ||
| q0 = max( q1(i), qmin ) | ||
| rho = prsl1(i) / (rd*t1(i)*(one + rvrdm1*q0)) | ||
| cmm(i) = cd(i)*wind(i) !txl*cmm_lnd(i) + txi*cmm_ice(i) + txo*cmm_wat(i) |
There was a problem hiding this comment.
The cmm and chh here were supposed to be based off the composite values of cd and cdq from the "fourth call" to the stability subroutine -- so shouldn't Lines 444-445 go further down?
| ! BWG, 2021/02/25: Need to change composite skin temperature base on ULW (Fanglin) | ||
| !tsfc(i) = txl*tsfc_lnd(i) + txi*tice(i) + txo*tsfc_wat(i) | ||
| tsfc(i) = ( txl * cdq_lnd(i) * tsfc_lnd(i) & | ||
| + txi * cdq_ice(i) * tice(i) & ! DH* Ben had tsurf_ice(i), but GFS_surface_composites_post_run uses tice instead |
There was a problem hiding this comment.
We may need to double-check with Moorthi. I'm not tagging him yet though.
There was a problem hiding this comment.
These different ice temperatures are a real mess. II will try to read through the code to see what the difference is.
| ! layer parameterization being used - to be extended in the future ! | ||
| !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | ||
|
|
||
| ! BWG, 2021/02/25: Need to change composite skin temperature base on ULW (Fanglin) |
There was a problem hiding this comment.
Upon further thought, this comment may now be misleading. Fanglin had multiple ideas on how to composite surface temperature (besides simple arithmetic mean). For the instance of "stability", we are going with Mike Barlage's method. We should double-check with him to see if he wants this composite method to be used everywhere, or just for sfc_diff.
There was a problem hiding this comment.
Let me know if I should remove the comment, please.
| + txo * cdq_wat(i) * tsurf_wat(i)) & | ||
| / (txl * cdq_lnd(i) + txi * cdq_ice(i) + txo * cdq_wat(i) ) | ||
|
|
||
| virtfac = one + rvrdm1 * max(q1(i),qmin) |
There was a problem hiding this comment.
Could this line be moved up to go right around Line 442? That would consolidate code (we can use "q0 = max(q1(i),qmin)" ).
…fter call to stability
| stress(i), uustar(i)) | ||
|
|
||
| ! BWG, 2021/02/25: cmm=cd*wind, chh=cdq*wind, so use composite cd, cdq | ||
| q0 = max( q1(i), qmin ) |
There was a problem hiding this comment.
With this new change (moving down these lines) I think you can move the q0 line to go right before Line 478 which allows 478 to be virtfac = one + rvrdm1 * q0
Then, Line 498 can be rho = prsl1(i) / (rd * t1 * virtfac) ... right?
There was a problem hiding this comment.
That is what I did
There was a problem hiding this comment.
Sorry, for some reason it was showing up incorrectly. Once I refreshed again I see that you consolidated as suggested.
@HelinWei-NOAA please post you suite definition file or share a link to the file on hera (or any other RDHPC platform), please. Thanks! |
|
I ran my cases on wcoss. But I just copied suite_FV3_GFS_v16_noahmp.xml I
used for this run to Hera:/scratch1/NCEPDEV/stmp2/Helin.Wei
…On Thu, May 20, 2021 at 3:41 PM Dom Heinzeller ***@***.***> wrote:
I echoed what fanglin said. Maybe there are some issues for the solar
zenith angel dependence calculation over ocean.
For my tests, I use the main CCPP-physics branch (HEAD detached at 1fd62ea
<1fd62ea>)
as a control, and
move_sfc_emis_alb_calculation_to_its_own_scheme_and_z0_composite_consistent
(HEAD detached at 38f28a2
<38f28a2>)
for the test case. I didn't use fractional grid for both runs.
@climbfuji <https://github.com/climbfuji> Dom, could you please confirm
that the suite definitions in the code used by Helin is correct?
@HelinWei-NOAA <https://github.com/HelinWei-NOAA> please post you suite
definition file or share a link to the file on hera (or any other RDHPC
platform), please. Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#627 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ALPHKYEUJTYUV6HBUSSQOGDTOVQV5ANCNFSM43ALMRSQ>
.
|
|
@HelinWei-NOAA @climbfuji The suite definition looks good to me. Thank you! |
…on_to_its_own_scheme_and_z0_composite_consistent_tgs Removed SNET.
…d GFS_interstitialtoscreen
…_sfc_emis_alb_calculation_to_its_own_scheme_and_z0_composite_consistent
…t, _timestep_init, _timestep_final, _final routines; use horizontal_loop_extent in _run routines
|
@grantfirl @tanyasmirnova @benwgreen @SMoorthi-emc @HelinWei-NOAA @JulieSchramm @llpcarson @barlage @yangfanglin @shansun6 @dustinswales Finally this PR is ready to commit. Please have a(nother) look if you can/want, since the changes are substantial. Thanks a lot. |
tanyasmirnova
left a comment
There was a problem hiding this comment.
@climbfuji Thank you very much for your tremendous work on this very complicated PR.
For some reason I'm not a formal reviewer, but I am okay with the code. I owe you (@climbfuji) a beer or 5 for all of the hard work you did -- much appreciated! |
Actually, you are listed as a reviewer, just need to go to the 'files changed' tab and then you should see the review button. I'd love to have a beer or five with everyone involved in this PR! |
ShanSunNOAA
left a comment
There was a problem hiding this comment.
Thanks for the hard work!
|
@climbfuji for this commit "Removed SNET. Net sloar radiation is computed from the incoming SW and albedo", only sfc_drv_ruc.F90 was modified for RUC LSM. sfc_drv.f should also be modified for Noah LSM. |
|
Ok, thanks. This should be a follow-up PR then.
… On May 26, 2021, at 8:27 PM, HelinWei-NOAA ***@***.***> wrote:
@climbfuji <https://github.com/climbfuji> for this commit "Removed SNET. Net sloar radiation is computed from the incoming SW and albedo", only sfc_drv_ruc.F90 was modified for RUC LSM. sfc_drv.f should also be modified for Noah LSM.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub <#627 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AB5C2RNWXCWFEAATIJBX2A3TPWU2LANCNFSM43ALMRSQ>.
|
dustinswales
left a comment
There was a problem hiding this comment.
All of the changes to the GP code look fine to me.
Great work!
…nout' (NCAR#627) * Changed UGWP diagnostic variable declaration intents from 'out' to 'inout' * Updated UGWP diagnostic variable declaration intents in drag_suite.meta
Description
GFS_phys_time_vary_initfor both NoahMP and RUC LSM (previously only for NoahMP)GFS_surface_composites. For now, thestabilityroutine from GFS'ssfc_diffcode is used inGFS_surface_composites_post, independent of which surface layer scheme gets used. From @benwgreen with modifications from @climbfuji.Note. During development and testing, we added an option
ORIG_ALB_EMS_OPTION_ONEtoradiation_surface.f. This CPP directive can be enabled and should allow us to get identical answers for most of the regression tests compared tto the existing baseline. This provides us with a more controlled way to understand the differences in the regression tests.The old code block and
ORIG_ALB_EMS_OPTION_ONElogic will be removed prior to the final regression testing and merging of the code. More information will be given in ufs-community/ufs-weather-model#529. UPDATE This code has been removed.Testing
See ufs-community/ufs-weather-model#529
Dependencies
#627
NCAR/ccpp-framework#366
NOAA-EMC/ufsatm#285
ufs-community/ufs-weather-model#529