From eff5b800e245ff12b7155aa71e4c08d64f42ceab Mon Sep 17 00:00:00 2001 From: Jili Dong Date: Wed, 13 Mar 2024 15:22:39 +0000 Subject: [PATCH 1/2] change conv_cf_opt to input namelist parameter --- .gitmodules | 6 ++++-- ccpp/data/GFS_typedefs.F90 | 12 ++++++++++-- ccpp/data/GFS_typedefs.meta | 6 ++++++ ccpp/physics | 2 +- 4 files changed, 21 insertions(+), 5 deletions(-) diff --git a/.gitmodules b/.gitmodules index 75876f6fa..f8df51e84 100644 --- a/.gitmodules +++ b/.gitmodules @@ -8,8 +8,10 @@ branch = production/RRFS.v1 [submodule "ccpp/physics"] path = ccpp/physics - url = https://github.com/ufs-community/ccpp-physics - branch = production/RRFS.v1 + url = https://github.com/JiliDong-NOAA/ccpp-physics + branch = cldfra_fix_refs_sgscld +# url = https://github.com/ufs-community/ccpp-physics +# branch = production/RRFS.v1 [submodule "upp"] path = upp url = https://github.com/NOAA-EMC/UPP diff --git a/ccpp/data/GFS_typedefs.F90 b/ccpp/data/GFS_typedefs.F90 index 168d36953..c58760623 100644 --- a/ccpp/data/GFS_typedefs.F90 +++ b/ccpp/data/GFS_typedefs.F90 @@ -1197,7 +1197,9 @@ module GFS_typedefs integer :: ichoice = 0 !< flag for closure of C3/GF deep convection integer :: ichoicem = 13!< flag for closure of C3/GF mid convection integer :: ichoice_s = 3 !< flag for closure of C3/GF shallow convection - + integer :: conv_cf_opt !< option for convection scheme cloud fraction computation + !< 0: Chaboureau-Bechtold + !< 1: Xu-Randall integer :: nmtvr !< number of topographic variables such as variance etc !< used in the GWD parameterization - 10 more added if !< GSL orographic drag scheme is used @@ -3984,6 +3986,7 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, master, & !< 2: scale- & aerosol-aware mass-flux deep conv scheme (2017) !< 3: scale- & aerosol-aware Grell-Freitas scheme (GSD) !< 4: New Tiedtke scheme (CAPS) + integer :: isatmedmf = 0 !< flag for scale-aware TKE-based moist edmf scheme !< 0: initial version of satmedmf (Nov. 2018) !< 1: updated version of satmedmf (as of May 2019) @@ -3992,6 +3995,9 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, master, & logical :: hwrf_samfdeep = .false. !< flag for HWRF SAMF deepcnv scheme logical :: hwrf_samfshal = .false. !< flag for HWRF SAMF shalcnv scheme logical :: progsigma = .false. !< flag for prognostic updraft area fraction closure in saSAS or Unified conv. + integer :: conv_cf_opt = 0 !< option for convection scheme cloud fraction computation + !< 0: Chaboureau-Bechtold + !< 1: Xu-Randall logical :: do_mynnedmf = .false. !< flag for MYNN-EDMF logical :: do_mynnsfclay = .false. !< flag for MYNN Surface Layer Scheme ! DH* TODO - move to MYNN namelist section @@ -4349,7 +4355,7 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, master, & betadcu,h2o_phys, pdfcld, shcnvcw, redrag, hybedmf, satmedmf,& shinhong, do_ysu, dspheat, lheatstrg, lseaspray, cnvcld, & random_clds, shal_cnv, imfshalcnv, imfdeepcnv, isatmedmf, & - do_deep, jcap, & + conv_cf_opt,do_deep, jcap, & cs_parm, flgmin, cgwf, ccwf, cdmbgwd, sup, ctei_rm, crtrh, & dlqf, rbcr, shoc_parm, psauras, prauras, wminras, & do_sppt, do_shum, do_skeb, & @@ -5190,6 +5196,7 @@ subroutine control_initialize (Model, nlunit, fn_nml, me, master, & Model%imfdeepcnv = imfdeepcnv Model%isatmedmf = isatmedmf Model%do_deep = do_deep + Model%conv_cf_opt = conv_cf_opt Model%nmtvr = nmtvr Model%jcap = jcap Model%flgmin = flgmin @@ -7066,6 +7073,7 @@ subroutine control_print(Model) print *, ' imfshalcnv : ', Model%imfshalcnv print *, ' imfdeepcnv : ', Model%imfdeepcnv print *, ' do_deep : ', Model%do_deep + print *, ' conv_cf_opt : ', Model%conv_cf_opt print *, ' nmtvr : ', Model%nmtvr print *, ' jcap : ', Model%jcap print *, ' cs_parm : ', Model%cs_parm diff --git a/ccpp/data/GFS_typedefs.meta b/ccpp/data/GFS_typedefs.meta index 9e7bdd260..ad27fda64 100644 --- a/ccpp/data/GFS_typedefs.meta +++ b/ccpp/data/GFS_typedefs.meta @@ -5550,6 +5550,12 @@ units = none dimensions = () type = integer +[conv_cf_opt] + standard_name = option_for_convection_scheme_cloud_fraction_computation + long_name = option for convection scheme cloud fraction computation + units = flag + dimensions = () + type = integer [nmtvr] standard_name = number_of_statistical_measures_of_subgrid_orography long_name = number of topographic variables in GWD diff --git a/ccpp/physics b/ccpp/physics index 09d7f2f99..05e1affea 160000 --- a/ccpp/physics +++ b/ccpp/physics @@ -1 +1 @@ -Subproject commit 09d7f2f99fc9cdae91ef92875e2f09cb857bcdf4 +Subproject commit 05e1affea5ebf58c4f359b555e98efd8667ac6ca From 131e304857248833eb4a3abfa8b37d3b6d48f145 Mon Sep 17 00:00:00 2001 From: Jili Dong Date: Wed, 13 Mar 2024 15:30:20 +0000 Subject: [PATCH 2/2] add sgs cloud to RRFS ens members using GFS PBL+G-F convection --- ccpp/suites/suite_RRFSens_phy1.xml | 2 ++ ccpp/suites/suite_RRFSens_phy4.xml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/ccpp/suites/suite_RRFSens_phy1.xml b/ccpp/suites/suite_RRFSens_phy1.xml index f0de1ebf4..2d84ccadc 100644 --- a/ccpp/suites/suite_RRFSens_phy1.xml +++ b/ccpp/suites/suite_RRFSens_phy1.xml @@ -13,12 +13,14 @@ GFS_suite_interstitial_rad_reset + sgscloud_radpre GFS_rrtmg_pre GFS_radiation_surface rad_sw_pre rrtmg_sw rrtmg_sw_post rrtmg_lw + sgscloud_radpost rrtmg_lw_post GFS_rrtmg_post diff --git a/ccpp/suites/suite_RRFSens_phy4.xml b/ccpp/suites/suite_RRFSens_phy4.xml index 74a1e8972..80796836c 100644 --- a/ccpp/suites/suite_RRFSens_phy4.xml +++ b/ccpp/suites/suite_RRFSens_phy4.xml @@ -13,12 +13,14 @@ GFS_suite_interstitial_rad_reset + sgscloud_radpre GFS_rrtmg_pre GFS_radiation_surface rad_sw_pre rrtmg_sw rrtmg_sw_post rrtmg_lw + sgscloud_radpost rrtmg_lw_post GFS_rrtmg_post