Skip to content

Commit

Permalink
Merge pull request #1218 from cacraigucar/cam_zm_cleanup4
Browse files Browse the repository at this point in the history
cam6_4_065: ZM CCPP'ization round 4 (completes CCPP conversion of ZM)
  • Loading branch information
cacraigucar authored Feb 11, 2025
2 parents 6eb3046 + 79aee2f commit 3eb2112
Show file tree
Hide file tree
Showing 21 changed files with 346 additions and 2,671 deletions.
2 changes: 1 addition & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
[submodule "atmos_phys"]
path = src/atmos_phys
url = https://github.com/ESCOMP/atmospheric_physics
fxtag = atmos_phys0_07_001
fxtag = atmos_phys0_08_000
fxrequired = AlwaysRequired
fxDONOTUSEurl = https://github.com/ESCOMP/atmospheric_physics

Expand Down
1 change: 0 additions & 1 deletion bld/build-namelist
Original file line number Diff line number Diff line change
Expand Up @@ -3658,7 +3658,6 @@ if (!$simple_phys) {
add_default($nl, 'zmconv_c0_ocn');
add_default($nl, 'zmconv_ke');
add_default($nl, 'zmconv_ke_lnd');
add_default($nl, 'zmconv_org');
add_default($nl, 'zmconv_num_cin');
add_default($nl, 'zmconv_dmpdz');
add_default($nl, 'zmconv_tiedke_add');
Expand Down
4 changes: 0 additions & 4 deletions bld/config_files/definition.xml
Original file line number Diff line number Diff line change
Expand Up @@ -83,10 +83,6 @@ Switch to turn on UNICON package: 0 => off, 1 => on
<entry id="clubb_do_adv" valid_values="0,1" value="0">
Switch to turn on/off advecting CLUBB moments: 0 => no, 1 => yes
</entry>
<entry id="zmconv_org" valid_values="0,1" value="0">
Switch to turn on/off parameterization for sub-grid scale convective organization for the ZM deep convective scheme based
on Mapes and Neale (2011): 0 => no, 1 => yes
</entry>
<entry id="pbl" valid_values="uw,hb,hbr,clubb_sgs,spcam_sam1mom,spcam_m2005,none" value="">
PBL package: uw (University of Washington), hb (Holtslag and Boville), hbr
(Holtslag, Boville, and Rasch), clubb_sgs, spcam_sam1om, spcam_m2005, none.
Expand Down
20 changes: 2 additions & 18 deletions bld/configure
Original file line number Diff line number Diff line change
Expand Up @@ -116,8 +116,6 @@ OPTIONS
The user does not need to set this if one of the waccm chemistry options
is chosen.
-waccmx Build CAM/WACCM with WACCM upper Thermosphere/Ionosphere extended package
-zmconv_org Include parameterization for sub-grid scale convective organization for the ZM deep convective scheme based
on Mapes and Neale (2011)
Options relevent to SCAM mode:
Expand Down Expand Up @@ -317,7 +315,6 @@ GetOptions(
"version" => \$opts{'version'},
"waccm_phys" => \$opts{'waccm_phys'},
"waccmx" => \$opts{'waccmx'},
"zmconv_org" => \$opts{'zmconv_org'},
) or usage();

# Give usage message.
Expand Down Expand Up @@ -939,16 +936,6 @@ if (defined $opts{'clubb_opts'}) {
my $clubb_do_adv = $cfg_ref->get('clubb_do_adv');
if ($print>=2) { print "clubb_do_adv: $clubb_do_adv$eol"; }

#-----------------------------------------------------------------------------------------------
# ZM convective organization

if (defined $opts{'zmconv_org'}) {
$cfg_ref->set('zmconv_org', $opts{'zmconv_org'});
}

my $zmconv_org = $cfg_ref->get('zmconv_org');
if ($print>=2) { print "zmconv_org: $zmconv_org$eol"; }

#-----------------------------------------------------------------------------------------------
# Macro-physics package

Expand Down Expand Up @@ -1569,11 +1556,6 @@ else {
if ($print>=2) { print "Advected constituents added by $microphys_pkg microphysics: 10$eol"; }
}

if ($zmconv_org == 1 ) {
$nadv += 1;
if ($print>=2) { print "Advected constituents added by $microphys_pkg microphysics: 8$eol"; }
}

if ($clubb_do_adv) {
$nadv += 9;
if ($print>=2) { print "Advected constituents added by $microphys_pkg microphysics: 8$eol"; }
Expand Down Expand Up @@ -2344,6 +2326,8 @@ sub write_filepath
print $fh "$camsrcdir/src/atmos_phys/schemes/check_energy\n";
print $fh "$camsrcdir/src/atmos_phys/schemes/utilities\n";

print $fh "$camsrcdir/src/atmos_phys/schemes/cloud_fraction\n";

# Dynamics package and test utilities
print $fh "$camsrcdir/src/dynamics/$dyn\n";
if($dyn eq 'se') {
Expand Down
3 changes: 0 additions & 3 deletions bld/namelist_files/namelist_defaults_cam.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2936,9 +2936,6 @@
<zmconv_ke hgrid="256x512" > 5.0E-6 </zmconv_ke>
<zmconv_ke hgrid="512x1024" > 5.0E-6 </zmconv_ke>

<zmconv_org > .false. </zmconv_org>
<zmconv_org zmconv_org="1" > .true. </zmconv_org>

<zmconv_num_cin > 5 </zmconv_num_cin>
<zmconv_num_cin phys="cam6" > 1 </zmconv_num_cin>
<zmconv_num_cin phys="cam7" > 1 </zmconv_num_cin>
Expand Down
7 changes: 0 additions & 7 deletions bld/namelist_files/namelist_definition.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3294,13 +3294,6 @@ Tunable evaporation efficiency in ZM deep convection scheme.
Default: set by build-namelist
</entry>

<entry id="zmconv_org" type="logical" category="conv"
group="zmconv_nl" valid_values="" >
Include organization parameterization in ZM. This value is set to true automatically
if -zmconv_org is set in configure.
Default: .false., unless -zmconv_org set in configure
</entry>

<entry id="zmconv_num_cin" type="integer" category="conv"
group="zmconv_nl" valid_values="" >
The number of negative buoyancy regions that are allowed before the convection top and CAPE calculations are completed.
Expand Down
88 changes: 88 additions & 0 deletions doc/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,91 @@

===============================================================

Tag name: cam6_4_065
Originator(s): cacraig
Date: Feb 11, 2025
One-line Summary: ZM CCPP'ization round 4 (completes CCPP conversion of ZM)

Github PR URL: https://github.com/ESCOMP/CAM/pull/1218

Purpose of changes (include the issue number and title text for each relevant GitHub issue):
- Convert ZM to CCPP and move into atmospheric_physics github repo: https://github.com/ESCOMP/CAM/issues/873

Describe any changes made to build system: N/A

Describe any changes made to the namelist:
- Removed zmconv_org namelist as that partially implemented capability has been removed

List any changes to the defaults for the boundary datasets: N/A

Describe any substantial timing or memory changes: N/A

Code reviewed by: nusbaume, jimmielin

List all files eliminated: N/A
D src/physics/cam/wv_sat_methods.F90
D src/physics/cam/wv_saturation.F90
D src/utils/error_messages.F90
D src/utils/namelist_utils.F90
- Moved to atmospheric_physics (and currently reside in the to_be_ccppized directory)

List all files added and what they do: N/A

List all existing files that have been modified, and describe the changes:
M .gitmodules
- update atmospheric_physics to bring in ZM changes

M bld/build-namelist
M bld/config_files/definition.xml
M bld/configure
M bld/namelist_files/namelist_defaults_cam.xml
M bld/namelist_files/namelist_definition.xml
- remove zmconv_org namelist

M src/physics/cam/cloud_fraction.F90
- moved cldfrc_fice to atmospheric_physics and ccppized

M src/physics/cam/clubb_intr.F90
- removed difzm declarations as no longer needed

M src/physics/cam/convect_shallow.F90
M src/physics/cam/macrop_driver.F90
M src/physics/cam/physpkg.F90
M src/physics/cam/rk_stratiform.F90
M src/physics/cam/zm_conv_intr.F90
M src/physics/cam7/physpkg.F90
M src/physics/simple/physpkg.F90
- various mods to get this to work with the routines that are ccppized

M src/utils/cam_ccpp/ccpp_constituent_prop_mod.F90
- Add routine:
ccp_set_standard_name to set constituent's standard name
ccp_is_dry to return whether species is dry
ccp_set_dry to set constituent's dry property based on what is passed in

If there were any failures reported from running test_driver.sh on any test
platform, and checkin with these failures has been OK'd by the gatekeeper,
then copy the lines from the td.*.status files for the failed tests to the
appropriate machine below. All failed tests must be justified.

derecho/intel/aux_cam: all BFB, except:
ERP_Ln9.f09_f09_mg17.FCSD_HCO.derecho_intel.cam-outfrq9s (Overall: FAIL)
SMS_Ld1.f09_f09_mg17.FCHIST_GC.derecho_intel.cam-outfrq1d (Overall: DIFF)
- pre-existing failure due to HEMCO not having reproducible results (issues #1018 and #856)

SMS_D_Ln9.f19_f19_mg17.FXHIST.derecho_intel.cam-outfrq9s_amie (Overall: FAIL)
SMS_D_Ln9_P1280x1.ne0CONUSne30x8_ne0CONUSne30x8_mt12.FCHIST.derecho_intel.cam-outfrq9s (Overall: FAIL)
- pre-existing failures due to build-namelist error requiring CLM/CTSM external update

derecho/nvhpc/aux_cam: BFB

izumi/nag/aux_cam: BFB

izumi/gnu/aux_cam:
ERC_D_Ln9.f10_f10_mg37.QPSPCAMM.izumi_gnu.cam-outfrq3s (Overall: FAIL) details:
- New failure, but since SPCAM is being removed(PR 1217) will create this new pre-existing failure

===============================================================
===============================================================

Tag name: cam6_4_064
Expand Down
Loading

0 comments on commit 3eb2112

Please sign in to comment.