-
Notifications
You must be signed in to change notification settings - Fork 153
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
merge gsl institutional fork #911
merge gsl institutional fork #911
Conversation
…in_20211215 Update gsl/develop from main 2021/12/15
Updates to MYNN-EDMF, part I - goes with other PR for fv3atm Overview of changes: This commit should be considered step one of the "universalization" process to generalize module_bl_mynn.F90 both for all dycores. Much of this is strictly reformatting or repositioning the driver to the top of the module - a request from collaborators, but some of it involve removing ifdefs, and the handling of the model constants. More commits to complete this work will follow. Despite the huge number of lines changed from this work alone, there is no change in behavior/performance. fixed some old crash cases (improved numerical stability) conservation work - removes all negative qv printouts A bug fix for the interpolation of the mass-flux clouds from interface levels to mid-levels which cause excessive LWP in shallow-cumulus fields Removes a few unused variables/arrays Fixes for the smoke/chemical mixing (works but still not in final state - another commit will follow) Some tuning work to improve the excessive cloud bias in polar regions. Some tuning of the mass-flux component to improve the tropics. General clean up of code and updates to many comments.
… into snow and ice This modification adds: 1. A new cloud fraction (Chaboureau and Bechtold 2005) for the GF convection scheme 2. The capability to separate frozen subgrid clouds into both snow and ice (no longer just ice).
Merge NCAR main into gsl/develop
…no shallow scheme
Remove GF Consistency Check & Add SDFs - V2
Remove Dom, add new code manager Christina and various developers.
Updates to the MYNN-EDMF
…into gsl/develop_physics_mods_from_RRFS_dev
…rom_RRFS_dev GWD, LSM and MYNN physics updates from RRFS_dev branch
…o namelist options
! XNO=10.0E06 median volume diameter raindrop (K table 4) | ||
! VC = 38.3/(XNO**.125) mean volume fallspeed eqn. (K) | ||
! | ||
parameter (vc = 5.107387) |
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.
Many of these should be coming from the host for consistency.
!use module_zero_plumegen_coms | ||
implicit none | ||
type(plumegen_coms), pointer :: coms | ||
real(kind=kind_phys), parameter :: g = 9.80796, r = 287.04, cp = 1004.6, eps = 0.622,tmelt = 273.3 |
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.
More locally-defined constants that should come from the host.
!use module_zero_plumegen_coms | ||
implicit none | ||
type(plumegen_coms), pointer :: coms | ||
real(kind=kind_phys), parameter :: g = 9.81, cp=1004. |
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.
more locally-defined physical constants
REAL(kind=kind_phys) , INTENT(INOUT) :: rad_T(nkp) | ||
REAL(kind=kind_phys) , INTENT(IN) :: rad_p(nkp) | ||
|
||
real(kind=kind_phys), parameter :: g = 9.81, cp=1004., pi=3.1416 |
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.
more locally-defined physical constants
! for ice, see (OT18), use F0=0.75 per argument there. coms%rho*q | ||
! values are in g/m**3, velocities in m/s | ||
|
||
real(kind=kind_phys), PARAMETER :: VCONST = 5.107387, EPS = 0.622, F0 = 0.75 |
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.
more locally-defined physical constants
! XNO=10.0E06 | ||
! HERC = 1.93*1.E-6*XN035 !evaporation constant | ||
! | ||
real(kind=kind_phys), PARAMETER :: HERC = 5.44E-4, CP = 1.004, HEATCOND = 2.5E3 |
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.
more locally-defined physical constants
! ********************* VAPOR TO ICE (USE EQUATION OT22)*************** | ||
!use module_zero_plumegen_coms | ||
! | ||
real(kind=kind_phys), PARAMETER :: EPS = 0.622, HEATFUS = 334., HEATSUBL = 2834., CP = 1.004 |
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.
more locally-defined physical constants
! | ||
implicit none | ||
type(plumegen_coms), pointer :: coms | ||
real(kind=kind_phys), PARAMETER :: HEATFUS = 334., CP = 1.004, EPS = 0.622, HEATSUBL = 2834. |
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.
more locally-defined physical constants
implicit none | ||
type(plumegen_coms), pointer :: coms | ||
|
||
real(kind=kind_phys), PARAMETER :: FRC = 332.27, TMELT = 273., F0 = 0.75 !ice velocity factor |
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.
more locally-defined physical constants
@SamuelTrahanNOAA @haiqinli @joeolson42 I'm finished reviewing the physics changes. Now, my eyeballs hurt. Regardless, this is a phenomenal amount of work and it is to be commended! I'll leave it up to you guys what you want to address now vs what can be done in a followup since 1) there is a commit date and 2) your fork/branch is on hold until this gets in. Pretty much all comments are suggestions only and are not meant to be "change this or else". The CCPP has its rules, and I'm trying to point out where they are violated, but as has been pointed out by many people many times, these rules are violated all over the repo in various places. Nevertheless, we should try our best to fix the "big" ones that could affect interoperability. I'll stop by and review again (and approve) when you're done with any edits from my comments, just let me know. I'll need to look at the fv3atm PR now for standard name suggestions... |
I'm fixing all of the stops and gotos, and Haiqin is working on the constants. |
I've removed all stops and gotos from the smoke code. The stops are replaced with errmsg and errflag assignments, so the error will propagate up the model framework and abort the model cleanly. |
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.
Approved; awaiting final update to ccpp-physics main. #922 will need to be addressed in a followup PR.
We are ready for commit. |
This includes surface layer, PBL, gravity wave drag, smoke, and other improvements from GSL RRFS and global model development.
start, snow on land or on ice is initialized in io/FV3GFS_io.F90. In case of
a warm start, these variables are carried along.