Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/cam_development' into CESM-GC_…
Browse files Browse the repository at this point in the history
…rebased_on_cam6_0_034

This commit brings in cam6_3_111

# Conflicts:
#	bld/build-namelist
#	bld/config_files/definition.xml
#	bld/namelist_files/namelist_defaults_cam.xml
#	cime_config/config_component.xml

Signed-off-by: Lizzie Lundgren <[email protected]>
  • Loading branch information
lizziel committed May 18, 2023
2 parents a16a4ff + 379603b commit 9ed40a2
Show file tree
Hide file tree
Showing 119 changed files with 9,919 additions and 2,862 deletions.
16 changes: 8 additions & 8 deletions Externals.cfg
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[ccs_config]
tag = ccs_config_cesm0.0.49
tag = ccs_config_cesm0.0.59
protocol = git
repo_url = https://github.com/ESMCI/ccs_config_cesm
local_path = ccs_config
Expand All @@ -13,22 +13,22 @@ local_path = components/cice5
required = True

[cice6]
tag = cesm_cice6_2_0_35
tag = cesm_cice6_4_1_3
protocol = git
repo_url = https://github.com/ESCOMP/CESM_CICE
local_path = components/cice
externals = Externals.cfg
required = True

[cmeps]
tag = cmeps0.14.12
tag = cmeps0.14.24
protocol = git
repo_url = https://github.com/ESCOMP/CMEPS.git
local_path = components/cmeps
required = True

[cdeps]
tag = cdeps0.12.67
tag = cdeps1.0.8
protocol = git
repo_url = https://github.com/ESCOMP/CDEPS.git
local_path = components/cdeps
Expand Down Expand Up @@ -57,14 +57,14 @@ local_path = libraries/mct
required = True

[parallelio]
tag = pio2_5_9
tag = pio2_5_10
protocol = git
repo_url = https://github.com/NCAR/ParallelIO
local_path = libraries/parallelio
required = True

[cime]
tag = cime6.0.82
tag = cime6.0.94
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.dev114
tag = ctsm5.1.dev120
protocol = git
repo_url = https://github.com/ESCOMP/CTSM
local_path = components/clm
Expand All @@ -96,7 +96,7 @@ externals = Externals_FMS.cfg
required = True

[mosart]
tag = mosart1_0_47
tag = mosart1_0_48
protocol = git
repo_url = https://github.com/ESCOMP/MOSART
local_path = components/mosart
Expand Down
6 changes: 3 additions & 3 deletions Externals_CAM.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -23,21 +23,21 @@ required = True
local_path = src/physics/clubb
protocol = svn
repo_url = https://github.com/larson-group/clubb_release/tags/
tag = clubb_4ncar_20221129_59cb19f/src/CLUBB_core
tag = clubb_4ncar_20221129_59cb19f_20230330_branchtag/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/src/SILHS
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.28
tag = pumas_cam-release_v1.29
required = True

[pumas-frozen]
Expand Down
67 changes: 44 additions & 23 deletions bld/build-namelist
Original file line number Diff line number Diff line change
Expand Up @@ -851,7 +851,7 @@ if (($chem =~ /waccm_ma/ or $chem =~ /waccm_tsmlt/) and !$chem_rad_passive) {
elsif (($chem =~ /trop_strat/ or $chem =~ /geoschem/) and !$chem_rad_passive) {
$radval .= ",'N:O2:O2','A:CO2:CO2'";
}
elsif ($co2_cycle and !$co2_cycle_rad_passive) {
elsif (($co2_cycle and !$co2_cycle_rad_passive) or ($chem =~ /ghg_mam4/)) {
$radval .= ",'N:O2:O2','A:CO2:CO2'";
}
else {
Expand All @@ -877,7 +877,7 @@ if ($rad_prog_ozone) {
die "ERROR: can not set ozone rad_climate specification\n";
}

if ((($chem =~ /waccm_ma/) or ($chem =~ /waccm_sc_mam/) or ($chem =~ /waccm_tsmlt/) or ($chem =~ /trop_strat/)) and !$chem_rad_passive ) {
if ((($chem =~ /ghg_mam4/) or ($chem =~ /waccm_ma/) or ($chem =~ /waccm_sc_mam/) or ($chem =~ /waccm_tsmlt/) or ($chem =~ /trop_strat/)) and !$chem_rad_passive ) {
$radval .= ",'A:N2O:N2O','A:CH4:CH4','N:CFC11STAR:CFC11','A:CFC12:CFC12'";
} elsif ($prog_ghg1 and $prog_ghg2 and !$chem_rad_passive ) {
$radval .= ",'A:N2O:N2O','A:CH4:CH4','A:CFC11:CFC11','A:CFC12:CFC12'";
Expand Down Expand Up @@ -1662,7 +1662,16 @@ if ($chem =~ /waccm_sc/) {
add_default($nl, 'h2orates');
add_default($nl, 'solar_parms_data_file');
}

if ($chem =~ /ghg_mam4/) {
add_default($nl, 'h2orates');
my $flbc_list = "'CH4','N2O','CO2','CFC11','CFC12'";
add_default($nl, 'flbc_list', 'val'=>$flbc_list);
unless (defined $nl->get_value('flbc_type')) {
add_default($nl, 'flbc_type', 'val'=>'CYCLICAL');
add_default($nl, 'flbc_cycle_yr', 'val'=>'2000');
}
add_default($nl, 'flbc_file');
}
if ( $prog_species ) {
my $ddval;
my $emisval;
Expand Down Expand Up @@ -2350,7 +2359,7 @@ if (($chem =~ /_mam4/ or $chem =~ /_mam5/) and ($phys =~ /cam6/ or $phys =~ /cam
$first = 0;
}
}
if ($chem eq 'trop_mam4' or $chem eq 'waccm_sc_mam4') {
if ($chem eq 'trop_mam4' or $chem eq 'waccm_sc_mam4'or $chem eq 'ghg_mam4') {
# SOA yields (used for the interactive emissions) have been calculated based on the VBS yields in CAM-chem.
# Duseong S. Jo, et al. to be submitted to GMD, 2023 -- see https://github.com/ESCOMP/CAM/pull/727 discussion for additional detail.
my %soae_fctrs = ('BENZENE_an_srf_file' => '3.4192D0',
Expand Down Expand Up @@ -2393,8 +2402,8 @@ if (($chem =~ /_mam4/ or $chem =~ /_mam5/) and ($phys =~ /cam6/ or $phys =~ /cam
'num_a2_cv_ext_file' => 'num_a2',
);

# aircraft emissions
if ($chem !~ /trop_mam/ and $chem !~ /waccm_sc/) {
# air craft emissions
if ($chem !~ /trop_mam/ and $chem !~ /ghg_mam/ and $chem !~ /waccm_sc/) {
%species = (%species,
'bc_a4_ar_ext_file' => 'bc_a4',
'num_a4_ar_ext_file' => 'num_a4',
Expand Down Expand Up @@ -2450,7 +2459,7 @@ if (($chem =~ /_mam4/ or $chem =~ /_mam5/) and ($phys =~ /cam6/ or $phys =~ /cam
}

# MEGAN emissions
if (($chem eq 'trop_mam4' or $chem eq 'waccm_sc_mam4') and !$aqua_mode and !$scam){
if (($chem eq 'trop_mam4' or $chem eq 'waccm_sc_mam4' or $chem eq 'ghg_mam4') and !$aqua_mode and !$scam){
my $val = "'SOAE = 0.9058*isoprene + 5.8638*(carene_3 + pinene_a + thujene_a + bornene +',"
. "' terpineol_4 + terpineol_a + terpinyl_ACT_a + myrtenal + sabinene + pinene_b + camphene +',"
. "' fenchene_a + limonene + phellandrene_a + terpinene_a + terpinene_g + terpinolene +',"
Expand Down Expand Up @@ -2601,10 +2610,10 @@ if (($chem =~ /_mam4/ or $chem =~ /_mam5/) and ($phys =~ /cam6/ or $phys =~ /cam
}
}

if ($chem eq 'trop_mam4' or $chem eq 'waccm_sc_mam4') {
if (($chem eq 'trop_mam4') or ($chem eq 'waccm_sc_mam4') or ($chem eq 'ghg_mam4')) {

# Prescribed species
if ($chem eq 'waccm_sc_mam4') {
if (($chem eq 'waccm_sc_mam4')or($chem eq 'ghg_mam4')) {
add_default($nl, 'tracer_cnst_specifier', 'val'=>"'O3','OH','NO3','HO2','HALONS'");
add_default($nl, 'tracer_cnst_file');
add_default($nl, 'tracer_cnst_datapath');
Expand Down Expand Up @@ -2731,7 +2740,7 @@ if ($waccmx){
$maxzen = 116.;
} elsif ($chem =~ "trop_strat" or $chem =~ "waccm_") {
$maxzen = 97.01;
} elsif ($chem =~ "trop_mam" or $chem =~ "trop_mozart") {
} elsif ($chem =~ "trop_mam" or $chem =~ "trop_mozart" or $chem =~ "ghg_mam") {
$maxzen = 88.85;
}
if ($maxzen>0.0) {
Expand Down Expand Up @@ -3145,6 +3154,11 @@ if (!$simple_phys) {
} else {
add_default($nl, 'use_hetfrz_classnuc', 'val'=>'.false.');
}
if ($nl->get_value('use_hetfrz_classnuc') =~ m/$TRUE/io) {
# set default scaling factors if het frz is turned on
add_default($nl, 'hetfrz_bc_scalfac');
add_default($nl, 'hetfrz_dust_scalfac');
}
add_default($nl, 'use_preexisting_ice');
if ($chem =~ /_mam7/) {
if ($nl->get_value('use_preexisting_ice') =~ m/$TRUE/io) {
Expand Down Expand Up @@ -3541,14 +3555,16 @@ if ( length($nl->get_value('soil_erod_file'))>0 ) {
else {
if ($chem =~ /trop_strat/ or $chem =~ /geoschem/ or $chem =~ /waccm_ma/ or $chem =~ /waccm_tsmlt/ or $chem =~ /trop_mozart/) {
add_default($nl, 'dust_emis_fact', 'ver'=>'chem');
# set scaling of lightning NOx production
add_default($nl, 'lght_no_prd_factor' );
}
else {
add_default($nl, 'dust_emis_fact');
}
}
}
if (chem_has_species($cfg, 'NO')) {
# set scaling of lightning NOx production
add_default($nl, 'lght_no_prd_factor' );
}

# Seasalt emissions tuning factor
if ($chem =~ /_mam(\d)/) {
Expand Down Expand Up @@ -3924,7 +3940,6 @@ if ($dyn =~ /se/) {
my @vars = qw(
se_ftype
se_horz_num_threads
se_lcp_moist
se_large_Courant_incr
se_hypervis_subcycle
se_hypervis_subcycle_sponge
Expand Down Expand Up @@ -3952,7 +3967,6 @@ if ($dyn =~ /se/) {
se_fvm_supercycling_jet
se_kmin_jet
se_kmax_jet
se_phys_dyn_cp
se_molecular_diff
);

Expand Down Expand Up @@ -4177,6 +4191,21 @@ add_default($nl, 'cam_snapshot_before_num');
add_default($nl, 'cam_snapshot_after_num');
check_snapshot_settings();

if ($opts{'cmeps'}) {
# advertise the nature of ozone data passed to surface models
if ($rad_prog_ozone) {
add_default($nl, 'atm_ozone_frequency', 'val'=>'subdaily');
} else {
add_default($nl, 'atm_ozone_frequency', 'val'=>'multiday_average');
}
# for lightning flash freq to CTSM
if ($simple_phys or $aqua_mode) {
add_default($nl, 'atm_provides_lightning', 'val'=>'.false.');
} else {
add_default($nl, 'atm_provides_lightning', 'val'=>'.true.');
}
}

#-----------------------------------------------------------------------------------------------
# Write output files

Expand All @@ -4193,16 +4222,8 @@ my %nl_group = ();
foreach my $name (@nl_groups) { $nl_group{$name} = ''; }

# Dry deposition, MEGAN VOC emis and ozone namelists
@comp_groups = qw(drydep_inparm megan_emis_nl fire_emis_nl carma_inparm ndep_inparm ozone_coupling_nl);
@comp_groups = qw(drydep_inparm megan_emis_nl fire_emis_nl carma_inparm ndep_inparm ozone_coupling_nl lightning_coupling_nl);

# nature of ozone data passed to surface models -- only if cmeps (nuopc) coupling is used
if ($opts{'cmeps'}) {
if ($rad_prog_ozone) {
add_default($nl, 'atm_ozone_frequency', 'val'=>'subdaily');
} else {
add_default($nl, 'atm_ozone_frequency', 'val'=>'multiday_average');
}
}
$outfile = "$opts{'dir'}/drv_flds_in";
$nl->write($outfile, 'groups'=>\@comp_groups);
if ($print>=1) {
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 @@ -98,8 +98,8 @@ meteor_smoke (Meteor Smoke), mixed_sulfate (Meteor Smoke and Sulfate), pmc (Pola
sulfate (Sulfate Aerosols), tholin (early earth haze), test_detrain (Detrainment), test_growth (Particle Growth), test_passive (Passive Dust),
test_radiative (Radiatively Active Dust), test_swelling (Sea Salt), test_tracers (Asian Monsoon), test_tracers2 (Guam).
</entry>
<entry id="chem" valid_values="none,terminator,trop_mam3,trop_mam4,trop_mam7,trop_mozart,trop_strat_mam4_ts2,trop_strat_mam4_vbs,trop_strat_mam4_vbsext,trop_strat_mam5_ts2,trop_strat_mam5_vbs,trop_strat_mam5_vbsext,waccm_ma,waccm_mad,waccm_ma_sulfur,waccm_sc,waccm_sc_mam4,waccm_mad_mam4,waccm_ma_mam4,waccm_tsmlt_mam4,waccm_tsmlt_mam4_vbsext,waccm_mad_mam5,waccm_ma_mam5,waccm_tsmlt_mam5,waccm_tsmlt_mam5_vbsext,geoschem_mam4" value="">
Chemistry package: none,terminator,trop_mam3,trop_mam4,trop_mam7,trop_mozart,trop_strat_mam4_ts2,trop_strat_mam4_vbs,trop_strat_mam4_vbsext,trop_strat_mam5_ts2,trop_strat_mam5_vbs,trop_strat_mam5_vbsext,waccm_ma,waccm_mad,waccm_ma_sulfur,waccm_sc,waccm_sc_mam4,waccm_mad_mam4,waccm_ma_mam4,waccm_tsmlt_mam4,waccm_tsmlt_mam4_vbsext,waccm_mad_mam5,waccm_ma_mam5,waccm_tsmlt_mam5,waccm_tsmlt_mam5_vbsext,geoschem_mam4
<entry id="chem" valid_values="none,ghg_mam4,terminator,trop_mam3,trop_mam4,trop_mam7,trop_mozart,trop_strat_mam4_ts2,trop_strat_mam4_vbs,trop_strat_mam4_vbsext,trop_strat_mam5_ts2,trop_strat_mam5_vbs,trop_strat_mam5_vbsext,waccm_ma,waccm_mad,waccm_ma_sulfur,waccm_sc,waccm_sc_mam4,waccm_mad_mam4,waccm_ma_mam4,waccm_tsmlt_mam4,waccm_tsmlt_mam4_vbsext,waccm_mad_mam5,waccm_ma_mam5,waccm_tsmlt_mam5,waccm_tsmlt_mam5_vbsext,geoschem_mam4" value="">
Chemistry package: none,ghg_mam4,terminator,trop_mam3,trop_mam4,trop_mam7,trop_mozart,trop_strat_mam4_ts2,trop_strat_mam4_vbs,trop_strat_mam4_vbsext,trop_strat_mam5_ts2,trop_strat_mam5_vbs,trop_strat_mam5_vbsext,waccm_ma,waccm_mad,waccm_ma_sulfur,waccm_sc,waccm_sc_mam4,waccm_mad_mam4,waccm_ma_mam4,waccm_tsmlt_mam4,waccm_tsmlt_mam4_vbsext,waccm_mad_mam5,waccm_ma_mam5,waccm_tsmlt_mam5,waccm_tsmlt_mam5_vbsext,geoschem_mam4
</entry>
<entry id="prog_species" valid_values="DST,SSLT,SO4,GHG,OC,BC,CARBON16" value="" list="1">
Prognostic mozart species packages: list of any subset of the following: DST,SSLT,SO4,GHG,OC,BC,CARBON16
Expand Down
6 changes: 1 addition & 5 deletions bld/configure
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ OPTIONS
test_tracers, test_tracers2].
Default: none.
-chem <name> Build CAM with specified prognostic chemistry package
[ none | terminator | trop_mam3 | trop_mam4 | trop_mam7 | trop_mozart | trop_strat_mam4_ts2 |
[ none | ghg_mam4 | terminator | trop_mam3 | trop_mam4 | trop_mam7 | trop_mozart | trop_strat_mam4_ts2 |
trop_strat_mam4_vbs | trop_strat_mam4_vbsext | trop_strat_mam5_ts2 | trop_strat_mam5_vbs |
trop_strat_mam5_vbsext | waccm_ma | waccm_mad | waccm_ma_sulfur | waccm_sc | waccm_sc_mam4 |
waccm_mad_mam4 | waccm_ma_mam4 | waccm_tsmlt_mam4 | waccm_tsmlt_mam4_vbsext | waccm_mad_mam5 |
Expand Down Expand Up @@ -140,10 +140,6 @@ OPTIONS
-verbose [or -v] Turn on verbose echoing of settings made by configure.
-version Echo the CVS tag name used to check out this CAM distribution.
Options for surface components used in standalone CAM mode:
-ocn <name> Build CAM with ocean model [docn | dom | som | socn | aquaplanet | pop]. Default: aquaplanet
Options for building CAM via standalone scripts:
-cam_bld <dir> Directory where CAM will be built. This is where configure will write the
Expand Down
Loading

0 comments on commit 9ed40a2

Please sign in to comment.