Skip to content

Commit

Permalink
Merge branch 'ufs/dev-gf' into ufs/dev-gf_gjf
Browse files Browse the repository at this point in the history
  • Loading branch information
grantfirl committed Apr 17, 2023
2 parents 9e4e2cb + 40940c6 commit b1434b4
Show file tree
Hide file tree
Showing 23 changed files with 9,499 additions and 207 deletions.
2 changes: 1 addition & 1 deletion physics/GFS_debug.F90
Original file line number Diff line number Diff line change
Expand Up @@ -615,7 +615,7 @@ subroutine GFS_diagtoscreen_run (Model, Statein, Stateout, Sfcprop, Coupling,
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Tbd%in_nm' , Tbd%in_nm)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Tbd%ccn_nm' , Tbd%ccn_nm)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Tbd%aer_nm' , Tbd%aer_nm)
if (Model%imfdeepcnv == Model%imfdeepcnv_gf) then
if (Model%imfdeepcnv == Model%imfdeepcnv_gf .or. Model%imfdeepcnv == Model%imfdeepcnv_unified) then
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Tbd%cactiv' , Tbd%cactiv)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Tbd%cactiv_m' , Tbd%cactiv_m)
call print_var(mpirank, omprank, blkno, Grid%xlat_d, Grid%xlon_d, 'Tbd%aod_gf' , Tbd%aod_gf)
Expand Down
11 changes: 7 additions & 4 deletions physics/GFS_rrtmg_pre.F90
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ module GFS_rrtmg_pre
!!
!>\section rrtmg_pre_gen General Algorithm
subroutine GFS_rrtmg_pre_run (im, levs, lm, lmk, lmp, n_var_lndp, lextop,&
ltp, imfdeepcnv, imfdeepcnv_gf, me, ncnd, ntrac, num_p3d, npdf3d, &
ltp, imfdeepcnv, imfdeepcnv_gf, imfdeepcnv_unified, me, ncnd, ntrac, &
num_p3d, npdf3d, &
ncnvcld3d,ntqv, ntcw,ntiw, ntlnc, ntinc, ntrnc, ntsnc, ntccn, top_at_1,&
ntrw, ntsw, ntgl, nthl, ntwa, ntoz, ntsmoke, ntdust, ntcoarsepm, &
ntclamt, nleffr, nieffr, nseffr, lndp_type, kdt, &
Expand Down Expand Up @@ -83,7 +84,8 @@ subroutine GFS_rrtmg_pre_run (im, levs, lm, lmk, lmp, n_var_lndp, lextop,&

integer, intent(in) :: im, levs, lm, lmk, lmp, ltp, &
n_var_lndp, imfdeepcnv, &
imfdeepcnv_gf, me, ncnd, ntrac, &
imfdeepcnv_gf, imfdeepcnv_unified, &
me, ncnd, ntrac, &
num_p3d, npdf3d, ncnvcld3d, ntqv, &
ntcw, ntiw, ntlnc, ntinc, &
ntrnc, ntsnc,ntccn, &
Expand Down Expand Up @@ -817,7 +819,7 @@ subroutine GFS_rrtmg_pre_run (im, levs, lm, lmk, lmp, n_var_lndp, lextop,&
enddo
endif
elseif (imp_physics == imp_physics_gfdl) then ! GFDL MP
if ((imfdeepcnv==imfdeepcnv_gf) .and. kdt>1) then
if ((imfdeepcnv==imfdeepcnv_gf .or. imfdeepcnv==imfdeepcnv_unified) .and. kdt>1) then
do k=1,lm
k1 = k + kd
do i=1,im
Expand Down Expand Up @@ -974,7 +976,8 @@ subroutine GFS_rrtmg_pre_run (im, levs, lm, lmk, lmp, n_var_lndp, lextop,&
& imp_physics_mg, iovr, iovr_rand, iovr_maxrand, iovr_max, &
& iovr_dcorr, iovr_exp, iovr_exprand, idcor, idcor_con, &
& idcor_hogan, idcor_oreopoulos, lcrick, lcnorm, &
& imfdeepcnv, imfdeepcnv_gf, do_mynnedmf, lgfdlmprad, &
& imfdeepcnv, imfdeepcnv_gf, imfdeepcnv_gf, do_mynnedmf, &
& lgfdlmprad, &
& uni_cld, lmfshal, lmfdeep2, cldcov, clouds1, &
& effrl, effri, effrr, effrs, effr_in, &
& effrl_inout, effri_inout, effrs_inout, &
Expand Down
7 changes: 7 additions & 0 deletions physics/GFS_rrtmg_pre.meta
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,13 @@
dimensions = ()
type = integer
intent = in
[imfdeepcnv_unified]
standard_name = identifier_for_unified_deep_convection
long_name = flag for Unified deep convection scheme
units = flag
dimensions = ()
type = integer
intent = in
[me]
standard_name = mpi_rank
long_name = current MPI-rank
Expand Down
11 changes: 7 additions & 4 deletions physics/GFS_suite_interstitial_3.F90
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@ module GFS_suite_interstitial_3
!!
subroutine GFS_suite_interstitial_3_run (otsptflag, &
im, levs, nn, cscnv,imfshalcnv, imfdeepcnv, &
imfshalcnv_samf, imfdeepcnv_samf,progsigma, &
imfshalcnv_samf, imfdeepcnv_samf, imfdeepcnv_unified, &
imfshalcnv_unified,progsigma, &
first_time_step, restart, &
satmedmf, trans_trac, do_shoc, ltaerosol, ntrac, ntcw, &
ntiw, ntclamt, ntrw, ntsw, ntrnc, ntsnc, ntgl, ntgnc, &
Expand Down Expand Up @@ -38,7 +39,8 @@ subroutine GFS_suite_interstitial_3_run (otsptflag, &
integer, intent(in ), dimension(:) :: islmsk, kpbl, kinver
logical, intent(in ) :: cscnv, satmedmf, trans_trac, do_shoc, ltaerosol, ras, progsigma
logical, intent(in ) :: first_time_step, restart
integer, intent(in ) :: imfshalcnv, imfdeepcnv, imfshalcnv_samf,imfdeepcnv_samf
integer, intent(in ) :: imfshalcnv, imfdeepcnv, imfshalcnv_samf,imfdeepcnv_samf
integer, intent(in ) :: imfshalcnv_unified,imfdeepcnv_unified
integer, intent(in) :: ntinc, ntlnc
logical, intent(in) :: ldiag3d, qdiag3d
integer, dimension(:,:), intent(in) :: dtidx
Expand Down Expand Up @@ -81,8 +83,9 @@ subroutine GFS_suite_interstitial_3_run (otsptflag, &

! In case of using prognostic updraf area fraction, initialize area fraction here
! since progsigma_calc is called from both deep and shallow schemes.
if(((imfshalcnv == imfshalcnv_samf) .or. (imfdeepcnv == imfdeepcnv_samf)) &
.and. progsigma)then
if(((imfshalcnv == imfshalcnv_samf) .or. (imfdeepcnv == imfdeepcnv_samf) &
.or. (imfshalcnv == imfshalcnv_unified) .or. (imfdeepcnv == imfdeepcnv_unified)) &
.and. progsigma)then
if(first_time_step .and. .not. restart)then
do k=1,levs
do i=1,im
Expand Down
14 changes: 14 additions & 0 deletions physics/GFS_suite_interstitial_3.meta
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,13 @@
dimensions = ()
type = integer
intent = in
[imfdeepcnv_unified]
standard_name = identifier_for_unified_deep_convection
long_name = flag for Unified deep convection scheme
units = flag
dimensions = ()
type = integer
intent = in
[imfshalcnv]
standard_name = control_for_shallow_convection_scheme
long_name = flag for mass-flux shallow convection scheme
Expand All @@ -71,6 +78,13 @@
dimensions = ()
type = integer
intent = in
[imfshalcnv_unified]
standard_name = identifier_for_unified_shallow_convection
long_name = flag for Unified shallow convection scheme
units = flag
dimensions = ()
type = integer
intent = in
[progsigma]
standard_name = do_prognostic_updraft_area_fraction
long_name = flag for prognostic sigma in cumuls scheme
Expand Down
Loading

0 comments on commit b1434b4

Please sign in to comment.