Skip to content

Commit

Permalink
Merge tag 'cam6_3_145' into cam.clubbmf
Browse files Browse the repository at this point in the history
Merge pull request ESCOMP#938 from PUMASDevelopment/katetc/rainevap_pr
  • Loading branch information
adamrher committed May 10, 2024
2 parents 74216f2 + 452cb5b commit 985e1c2
Show file tree
Hide file tree
Showing 107 changed files with 5,656 additions and 2,323 deletions.
8 changes: 4 additions & 4 deletions Externals.cfg
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[ccs_config]
tag = ccs_config_cesm0.0.80
tag = ccs_config_cesm0.0.82
protocol = git
repo_url = https://github.com/ESMCI/ccs_config_cesm
local_path = ccs_config
Expand Down Expand Up @@ -28,7 +28,7 @@ local_path = components/cmeps
required = True

[cdeps]
tag = cdeps1.0.21
tag = cdeps1.0.24
protocol = git
repo_url = https://github.com/ESCOMP/CDEPS.git
local_path = components/cdeps
Expand Down Expand Up @@ -64,7 +64,7 @@ local_path = libraries/parallelio
required = True

[cime]
tag = cime6.0.156
tag = cime6.0.175
protocol = git
repo_url = https://github.com/ESMCI/cime
local_path = cime
Expand All @@ -79,7 +79,7 @@ externals = Externals_CISM.cfg
required = True

[clm]
tag = ctsm5.1.dev139
tag = ctsm5.1.dev142
protocol = git
repo_url = https://github.com/ESCOMP/CTSM
local_path = components/clm
Expand Down
25 changes: 10 additions & 15 deletions Externals_CAM.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -14,32 +14,27 @@ required = True

[cosp2]
local_path = src/physics/cosp2/src
protocol = svn
repo_url = https://github.com/CFMIP/COSPv2.0/tags/
tag = v2.1.4cesm/src
protocol = git
repo_url = https://github.com/CFMIP/COSPv2.0
sparse = ../.cosp_sparse_checkout
tag = v2.1.4cesm
required = True

[clubb]
local_path = src/physics/clubb
protocol = svn
protocol = git
#repo_url = https://github.com/larson-group/clubb_release/tags/
#tag = clubb_4ncar_20221129_59cb19f_20230330_branchtag/src/CLUBB_core
repo_url = https://github.com/adamrher/clubb_release/branches/
sparse = ../.clubb_sparse_checkout
branch = clubb_4ncar_20221129_59cb19f_20230330.clubbmf/src/CLUBB_core
required = True

[silhs]
local_path = src/physics/silhs
protocol = svn
repo_url = https://github.com/larson-group/clubb_release/tags/
tag = clubb_4ncar_20221129_59cb19f_20230330_branchtag/src/SILHS
required = True

[pumas]
local_path = src/physics/pumas
protocol = git
repo_url = https://github.com/ESCOMP/PUMAS
tag = pumas_cam-release_v1.29
tag = pumas_cam-release_v1.35
required = True

[pumas-frozen]
Expand All @@ -57,9 +52,9 @@ tag = ALI_ARMS_v1.0.1
required = True

[atmos_phys]
tag = atmos_phys0_00_011
tag = atmos_phys0_01_000
protocol = git
repo_url = https://github.com/NCAR/atmospheric_physics
repo_url = https://github.com/ESCOMP/atmospheric_physics
required = True
local_path = src/atmos_phys

Expand All @@ -75,7 +70,7 @@ local_path = src/dynamics/mpas/dycore
protocol = git
repo_url = https://github.com/MPAS-Dev/MPAS-Model.git
sparse = ../.mpas_sparse_checkout
hash = ff76a231
hash = b8c33daa
required = True

[hemco]
Expand Down
24 changes: 22 additions & 2 deletions bld/build-namelist
Original file line number Diff line number Diff line change
Expand Up @@ -2387,6 +2387,11 @@ if (($chem =~ /_mam4/ or $chem =~ /_mam5/) and ($phys =~ /cam6/ or $phys =~ /cam
'num_a4_ar_ext_file' => 'num_a4',
'no2_ar_ext_file' => 'NO2',
'so2_ar_ext_file' => 'SO2' );
} elsif ($chem =~ /ghg_mam/) {
%species = (%species,
'bc_a4_ar_ext_file' => 'bc_a4',
'num_a4_ar_ext_file' => 'num_a4',
'so2_ar_ext_file' => 'SO2' );
}

# for transient cases include volcanic emissions
Expand Down Expand Up @@ -3088,14 +3093,28 @@ if ($cfg->get('microphys') =~ /^mg/) {
add_default($nl, 'micro_mg_iaccr_factor');
add_default($nl, 'micro_mg_max_nicons');

# For CESM2, the decision was made to set micro_do_sb_physics to false
add_default($nl, 'micro_do_sb_physics', 'val'=>'.false.');

# namelist options for pumas tag release_v1.22 or later
# (currently only in the cam_dev physics package)
if ($phys =~ /cam_dev/) {
add_default($nl, 'micro_mg_warm_rain');
add_default($nl, 'micro_mg_accre_sees_auto');
add_default($nl, 'micro_mg_vtrms_factor');
add_default($nl, 'micro_mg_implicit_fall');
add_default($nl, 'pumas_stochastic_tau_kernel_filename', 'val'=>"$cfgdir/../src/physics/pumas/KBARF_tau_kernel.dat");

#set path for stochastic_tau_kernel_filename
my $cam_dir = $cfg->get('cam_dir');
add_default($nl, 'pumas_stochastic_tau_kernel_filename');
my $rel_path = $nl->get_value('pumas_stochastic_tau_kernel_filename');
my $abs_path = quote_string(set_abs_filepath($rel_path, $cam_dir));
#overwrite the relative pathname with the absolute pathname
$nl->set_variable_value('pumas_stochastic_tau_nl', 'pumas_stochastic_tau_kernel_filename', $abs_path);

}else {
# For CESM2, the decision was made to set micro_do_sb_physics to false
# This variable is replaced with micro_mg_warm_rain in cam_dev runs
add_default($nl, 'micro_do_sb_physics', 'val'=>'.false.');
}

# tunings for micro_mg_dcs
Expand Down Expand Up @@ -4081,6 +4100,7 @@ if ($dyn =~ /mpas/) {
add_default($nl, 'mpas_zd');
add_default($nl, 'mpas_xnutr');
add_default($nl, 'mpas_cam_coef');
add_default($nl, 'mpas_cam_damping_levels');
add_default($nl, 'mpas_print_detailed_minmax_vel');
add_default($nl, 'mpas_rayleigh_damp_u');
add_default($nl, 'mpas_rayleigh_damp_u_timescale_days');
Expand Down
4 changes: 2 additions & 2 deletions bld/config_files/definition.xml
Original file line number Diff line number Diff line change
Expand Up @@ -63,10 +63,10 @@ Physics package: cam3, cam4, cam5, cam6, cam_dev, held_suarez, adiabatic, kessle
<entry id="hemco" valid_values="0,1" value="0">
Switch to turn on Harmonized Emissions Component (HEMCO) for chemistry: 0 => no, 1 => yes.
</entry>
<entry id="microphys" valid_values="rk,mg1,mg2,mg3,spcam_m2005,spcam_sam1mom,none" value="">
<entry id="microphys" valid_values="rk,mg1,mg2,mg3,pumas,spcam_m2005,spcam_sam1mom,none" value="">
Microphysics package: rk (Rasch and Kristjansson), mg1 (Morrison and
Gettelman two moment scheme CAM5.1), mg2 (Morrison and Gettelman second
version CAM6), mg3 (MG scheme 3rd version, graupel), SPCAM_m2005, SPCAM_sam1mom.
version CAM6), mg3 (MG scheme 3rd version, graupel), PUMAS, SPCAM_m2005, SPCAM_sam1mom.
</entry>
<entry id="macrophys" valid_values="rk,park,clubb_sgs,spcam_sam1mom,spcam_m2005,none" value="">
Macrophysics package: RK, Park, CLUBB_SGS, SPCAM_sam1mom, SPCAM_m2005.
Expand Down
31 changes: 18 additions & 13 deletions bld/configure
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ OPTIONS
-macrophys <name> Specify the macrophysics option [rk | park | clubb_sgs].
-max_n_rad_cnst <n> Maximum number of constituents that are either radiatively
active, or in any single diagnostic list for the radiation.
-microphys <name> Specify the microphysics option [mg1 | mg2 | mg3| rk].
-microphys <name> Specify the microphysics option [mg1 | mg2 | mg3| rk | pumas].
-model_top <name> Specify the model_top option [ lt | mt ].
-nadv <n> Set total number of advected species to <n>.
-nadv_tt <n> Set number of advected test tracers <n>.
Expand Down Expand Up @@ -839,6 +839,10 @@ if (defined $opts{'microphys'}) {
$microphys_pkg = lc($opts{'microphys'});
}

if($microphys_pkg eq 'pumas') {
$microphys_pkg = 'mg3';
}

$cfg_ref->set('microphys', $microphys_pkg);

if ($print>=2) { print "Microphysics package: $microphys_pkg$eol"; }
Expand All @@ -857,7 +861,7 @@ if ($carma_pkg =~ m/cirrus/i) {
unless ($microphys_pkg =~ /^mg/) {
die <<"EOF";
** ERROR: microphysics package set to: $microphys_pkg
** The CARMA cirrus model only works with MG microphysics.
** The CARMA cirrus model only works with MG or PUMAS microphysics.
EOF
}
}
Expand All @@ -884,7 +888,7 @@ if (defined $opts{'clubb_sgs'}) {
if ($clubb_sgs and not ($microphys_pkg =~ m/^mg/ )) {
die <<"EOF";
** ERROR: microphysics package set to: $microphys_pkg
** CLUBB_SGS only works with MG microphysics.
** CLUBB_SGS only works with MG or PUMAS microphysics.
EOF
}

Expand Down Expand Up @@ -1024,7 +1028,7 @@ if ($pbl_pkg =~ m/uw/i) {
unless ($microphys_pkg =~ /^mg/) {
die <<"EOF";
** ERROR: microphysics package set to: $microphys_pkg
** The UW PBL scheme only works with MG microphysics.
** The UW PBL scheme only works with MG or PUMAS microphysics.
EOF
}
}
Expand Down Expand Up @@ -2204,11 +2208,11 @@ sub write_filepath
}

if ($clubb_sgs) {
print $fh "$camsrcdir/src/physics/clubb\n";
print $fh "$camsrcdir/src/physics/clubb/src/CLUBB_core\n";
}

if ($silhs) {
print $fh "$camsrcdir/src/physics/silhs\n";
print $fh "$camsrcdir/src/physics/clubb/src/SILHS\n";
}

if ($phys_pkg eq 'cam_dev') {
Expand Down Expand Up @@ -2269,6 +2273,7 @@ sub write_filepath
print $fh "$camsrcdir/src/cpl/$cpl\n";
print $fh "$camsrcdir/src/control\n";
print $fh "$camsrcdir/src/utils\n";
print $fh "$camsrcdir/src/utils/cam_ccpp\n";
print $fh "$camsrcdir/src/atmos_phys/utilities\n";


Expand Down Expand Up @@ -2304,13 +2309,13 @@ sub write_cosp_makefile
CAM_BLD := $cam_bld
COSP_PATH := $cam_dir/src/physics/cosp2
ISCCP_PATH := $cam_dir/src/physics/cosp2/src/simulator/icarus
RS_PATH := $cam_dir/src/physics/cosp2/src/simulator/quickbeam
RT_PATH := $cam_dir/src/physics/cosp2/src/simulator/rttov
CS_PATH := $cam_dir/src/physics/cosp2/src/simulator/actsim
MISR_PATH := $cam_dir/src/physics/cosp2/src/simulator/MISR_simulator
MODIS_PATH := $cam_dir/src/physics/cosp2/src/simulator/MODIS_simulator
PARASOL_PATH := $cam_dir/src/physics/cosp2/src/simulator/parasol
ISCCP_PATH := $cam_dir/src/physics/cosp2/src/src/simulator/icarus
RS_PATH := $cam_dir/src/physics/cosp2/src/src/simulator/quickbeam
RT_PATH := $cam_dir/src/physics/cosp2/src/src/simulator/rttov
CS_PATH := $cam_dir/src/physics/cosp2/src/src/simulator/actsim
MISR_PATH := $cam_dir/src/physics/cosp2/src/src/simulator/MISR_simulator
MODIS_PATH := $cam_dir/src/physics/cosp2/src/src/simulator/MODIS_simulator
PARASOL_PATH := $cam_dir/src/physics/cosp2/src/src/simulator/parasol
EOF

Expand Down
20 changes: 19 additions & 1 deletion bld/namelist_files/namelist_defaults_cam.xml
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,7 @@
<ncdata dyn="se" hgrid="ne16np4" nlev="126" waccmx="1" aquaplanet="1">atm/waccm/ic/waccmx_aqua_ne16np4_126L_c191108.nc</ncdata>
<ncdata dyn="se" hgrid="ne16np4" nlev="126" waccmx="1" aquaplanet="1" ionosphere="none">atm/waccm/ic/waccmx4_neutral_aquap_ne16np4_126lev_c200827.nc</ncdata>
<ncdata dyn="se" hgrid="ne30np4" nlev="130" waccmx="1" >atm/waccm/ic/fx2000_phys-ionos-cpl_ne30_spinup01.cam.i.0002-01-01-00000_c201014.nc</ncdata>
<ncdata dyn="se" hgrid="ne30np4" npg="3" nlev="130" waccmx="1" >atm/waccm/ic/waccmx_ne30pg3_c231005.nc</ncdata>

<ncdata dyn="fv3" hgrid="C24" nlev="32" aquaplanet="1" ic_ymd="101" >atm/cam/inic/fv3/aqua_0006-01-01_C24_L32_c200625.nc</ncdata>
<ncdata dyn="fv3" hgrid="C48" nlev="32" aquaplanet="1" ic_ymd="101" >atm/cam/inic/fv3/aqua_0006-01-01_C48_L32_c200625.nc</ncdata>
Expand Down Expand Up @@ -273,6 +274,8 @@

<ncdata dyn="se" hgrid="ne0np4CONUS.ne30x8" nlev="70" ic_ymd="101">atm/waccm/ic/FW2000_CONUS_30x8_L70_01-01-0001_c200602.nc</ncdata>

<ncdata hgrid="mpasa120" nlev="70" waccm_phys="1">atm/waccm/ic/mpasa120km.waccm_fulltopo_c220818.nc</ncdata>

<ncdata hgrid="mpasa120" nlev="32" >atm/cam/inic/mpas/cami_01-01-2000_00Z_mpasa120_L32_CFSR_c210426.nc</ncdata>
<ncdata hgrid="mpasa480" nlev="32" >atm/cam/inic/mpas/cami_01-01-2000_00Z_mpasa480_L32_CFSR_c211013.nc</ncdata>

Expand Down Expand Up @@ -1309,6 +1312,11 @@
<so4_a1_an_ext_file hgrid="ne30np4" npg="3" ver="cam6">atm/cam/chem/emis/historical_ne30pg3/emissions-cmip6_so4_a1_anthro-ene_vertical_mol_175001-201412_ne30pg3_c20200103.nc</so4_a1_an_ext_file>
<num_a1_an_ext_file hgrid="ne30np4" npg="3" ver="cam6">atm/cam/chem/emis/historical_ne30pg3/emissions-cmip6_num_so4_a1_anthro-ene_vertical_mol_175001-201412_ne30pg3_c20200103.nc</num_a1_an_ext_file>

<bc_a4_ar_ext_file hgrid="ne30np4" npg="3" ver="cam6">atm/cam/chem/emis/historical_ne30pg3/emissions-cmip6_bc_a4_aircraft_vertical_1750-2015_ne30pg3_c20231112.nc</bc_a4_ar_ext_file>
<num_a4_ar_ext_file hgrid="ne30np4" npg="3" ver="cam6">atm/cam/chem/emis/historical_ne30pg3/emissions-cmip6_num_bc_a4_aircraft_vertical_1750-2015_ne30pg3_c20231112.nc</num_a4_ar_ext_file>
<no2_ar_ext_file hgrid="ne30np4" npg="3" ver="cam6">atm/cam/chem/emis/historical_ne30pg3/emissions-cmip6_NO2_aircraft_vertical_1750-2015_ne30pg3_c20231112.nc</no2_ar_ext_file>
<so2_ar_ext_file hgrid="ne30np4" npg="3" ver="cam6">atm/cam/chem/emis/historical_ne30pg3/emissions-cmip6_SO2_aircraft_vertical_1750-2015_ne30pg3_c20231112.nc</so2_ar_ext_file>

<!-- ne30 pg2 -->

<dms_ot_srf_file hgrid="ne30np4" npg="2" ver="cam6">atm/cam/chem/emis/historical_ne30pg2/emissions-cmip6_DMS_other_surface_1750_2015_ne30pg2_c20200630.nc</dms_ot_srf_file>
Expand Down Expand Up @@ -2211,6 +2219,7 @@
<microp_scheme microphys="spcam_m2005" >SPCAM_m2005 </microp_scheme>
<microp_scheme microphys="spcam_sam1mom">SPCAM_sam1mom</microp_scheme>
<microp_scheme microphys="mg3">MG</microp_scheme>
<microp_scheme microphys="pumas">MG</microp_scheme>

<micro_mg_version microphys="mg1"> 1 </micro_mg_version>
<micro_mg_sub_version microphys="mg1"> 0 </micro_mg_sub_version>
Expand Down Expand Up @@ -2267,6 +2276,7 @@
<micro_mg_homog_size microphys="mg2" > 25.D-6 </micro_mg_homog_size>

<micro_mg_vtrmi_factor > 1.D0 </micro_mg_vtrmi_factor>
<micro_mg_vtrms_factor > 1.D0 </micro_mg_vtrms_factor>

<micro_mg_effi_factor > 1.D0 </micro_mg_effi_factor>
<micro_mg_effi_factor microphys="mg2" > 1.D0 </micro_mg_effi_factor>
Expand All @@ -2279,6 +2289,7 @@

<micro_mg_implicit_fall phys="cam_dev" > .true. </micro_mg_implicit_fall>
<micro_mg_accre_sees_auto phys="cam_dev" > .true. </micro_mg_accre_sees_auto>
<micro_mg_warm_rain phys="cam_dev" > kk2000 </micro_mg_warm_rain>
<micro_mg_precip_fall_corr phys="cam_dev" > .true. </micro_mg_precip_fall_corr>

<cld_macmic_num_steps> 1 </cld_macmic_num_steps>
Expand Down Expand Up @@ -3054,7 +3065,7 @@
<!-- ================================================================== -->

<se_pgf_formulation> 1</se_pgf_formulation>
<se_pgf_formulation waccmx="1">2</se_pgf_formulation>
<se_pgf_formulation waccmx="1">3</se_pgf_formulation>
<se_ftype> 2 </se_ftype>

<se_large_Courant_incr > .true. </se_large_Courant_incr>
Expand Down Expand Up @@ -3161,12 +3172,14 @@
<mpas_time_integration_order > 2 </mpas_time_integration_order>
<mpas_dt > 1800.0D0 </mpas_dt>
<mpas_dt hgrid="mpasa120" > 900.0D0 </mpas_dt>
<mpas_dt hgrid="mpasa120" waccm_phys="1"> 600.D0 </mpas_dt>
<mpas_dt hgrid="mpasa60" > 450.0D0 </mpas_dt>
<mpas_dt hgrid="mpasa30" > 225.0D0 </mpas_dt>

<mpas_split_dynamics_transport>.true.</mpas_split_dynamics_transport>
<mpas_number_of_sub_steps > 2 </mpas_number_of_sub_steps>
<mpas_dynamics_split_steps > 3 </mpas_dynamics_split_steps>
<mpas_dynamics_split_steps hgrid="mpasa120" waccm_phys="1"> 4 </mpas_dynamics_split_steps>
<mpas_h_mom_eddy_visc2 > 0.0D0 </mpas_h_mom_eddy_visc2>
<mpas_h_mom_eddy_visc4 > 0.0D0 </mpas_h_mom_eddy_visc4>
<mpas_v_mom_eddy_visc2 > 0.0D0 </mpas_v_mom_eddy_visc2>
Expand Down Expand Up @@ -3196,12 +3209,17 @@
<mpas_smagorinsky_coef > 0.125D0 </mpas_smagorinsky_coef>
<mpas_mix_full > .true. </mpas_mix_full>
<mpas_epssm > 0.1D0 </mpas_epssm>
<mpas_epssm hgrid="mpasa120" waccm_phys="1"> 0.5D0 </mpas_epssm>
<mpas_smdiv > 0.1D0 </mpas_smdiv>
<mpas_apvm_upwinding > 0.5D0 </mpas_apvm_upwinding>
<mpas_apvm_upwinding hgrid="mpasa120" waccm_phys="1"> 0.0D0 </mpas_apvm_upwinding>
<mpas_h_ScaleWithMesh > .true. </mpas_h_ScaleWithMesh>
<mpas_zd > 22000.0D0 </mpas_zd>
<mpas_zd hgrid="mpasa120" waccm_phys="1"> 80000.0D0 </mpas_zd>
<mpas_xnutr > 0.2D0 </mpas_xnutr>
<mpas_cam_coef > 0.0D0 </mpas_cam_coef>
<mpas_cam_coef hgrid="mpasa120" waccm_phys="1"> 0.2D0 </mpas_cam_coef>
<mpas_cam_damping_levels > 0 </mpas_cam_damping_levels>
<mpas_rayleigh_damp_u > .true. </mpas_rayleigh_damp_u>
<mpas_rayleigh_damp_u_timescale_days> 5.0 </mpas_rayleigh_damp_u_timescale_days>
<mpas_number_rayleigh_damp_u_levels> 5 </mpas_number_rayleigh_damp_u_levels>
Expand Down
Loading

0 comments on commit 985e1c2

Please sign in to comment.