Skip to content

Commit

Permalink
Merge pull request #1057 from JulioTBacmeister/gw_movmtn_devel
Browse files Browse the repository at this point in the history
cam6_4_010: Initial Gravity Wave moving mountain
  • Loading branch information
cacraigucar authored Jul 18, 2024
2 parents de0bef8 + 5158909 commit 7f30c82
Show file tree
Hide file tree
Showing 8 changed files with 1,206 additions and 184 deletions.
12 changes: 11 additions & 1 deletion bld/build-namelist
Original file line number Diff line number Diff line change
Expand Up @@ -3226,7 +3226,7 @@ if ($cfg->get('microphys') =~ /^mg/) {
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 cam7 runs
Expand Down Expand Up @@ -3735,6 +3735,10 @@ if (!$simple_phys) {
add_default($nl, 'use_gw_rdg_beta', 'val'=>'.false.');
}

if ($phys =~ /cam7/) {
add_default($nl, 'use_gw_movmtn_pbl', 'val'=>'.true.');
}

add_default($nl, 'use_gw_rdg_gamma' , 'val'=>'.false.');
add_default($nl, 'use_gw_front_igw' , 'val'=>'.false.');
add_default($nl, 'use_gw_convect_sh', 'val'=>'.false.');
Expand Down Expand Up @@ -3788,6 +3792,7 @@ my $do_gw_front = ($nl->get_value('use_gw_front') =~ /$TRUE/io);
my $do_gw_front_igw = ($nl->get_value('use_gw_front_igw') =~ /$TRUE/io);
my $do_gw_convect_dp = ($nl->get_value('use_gw_convect_dp') =~ /$TRUE/io);
my $do_gw_convect_sh = ($nl->get_value('use_gw_convect_sh') =~ /$TRUE/io);
my $do_gw_movmtn_pbl = ($nl->get_value('use_gw_movmtn_pbl') =~ /$TRUE/io);
my $do_gw_rdg_beta = ($nl->get_value('use_gw_rdg_beta') =~ /$TRUE/io);
my $do_gw_rdg_gamma = ($nl->get_value('use_gw_rdg_gamma') =~ /$TRUE/io);

Expand Down Expand Up @@ -3845,6 +3850,11 @@ if ($do_gw_convect_sh) {
add_default($nl, 'effgw_beres_sh');
}

if ($do_gw_movmtn_pbl) {
add_default($nl, 'gw_drag_file_mm');
add_default($nl, 'alpha_gw_movmtn');
}

if ($do_gw_rdg_beta) {
if ($use_topo_file =~ m/$FALSE/io) {
die "$ProgName - ERROR: beta ridge scheme requires data from a topo file.\n";
Expand Down
2 changes: 2 additions & 0 deletions bld/namelist_files/namelist_defaults_cam.xml
Original file line number Diff line number Diff line change
Expand Up @@ -842,6 +842,7 @@
<!-- gravity wave options -->
<gw_drag_file>atm/waccm/gw/newmfspectra40_dc25.nc</gw_drag_file>
<gw_drag_file_sh>atm/waccm/gw/mfspectra_shallow_c140530.nc</gw_drag_file_sh>
<gw_drag_file_mm>atm/waccm/gw/mfc0lookup_mm.nc</gw_drag_file_mm>
<gw_prndl >0.25d0 </gw_prndl>
<gw_prndl waccm_phys="1">0.5d0 </gw_prndl>
<gw_prndl chem="geoschem_mam4">0.5d0 </gw_prndl>
Expand Down Expand Up @@ -892,6 +893,7 @@
<gw_rdg_orovmin > 1.0d-3 </gw_rdg_orovmin>
<gw_rdg_orostratmin > 0.002d0</gw_rdg_orostratmin>
<gw_rdg_orom2min > 0.1d0 </gw_rdg_orom2min>
<alpha_gw_movmtn > 0.01d0 </alpha_gw_movmtn>

<!-- Dry Convective Adjustment options -->
<dadadj_niter>15</dadadj_niter>
Expand Down
19 changes: 19 additions & 0 deletions bld/namelist_files/namelist_definition.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1332,6 +1332,12 @@ Whether or not to enable gravity waves produced by shallow convection.
Default: .false.
</entry>

<entry id="use_gw_movmtn_pbl" type="logical" category="gw_drag"
group="phys_ctl_nl" valid_values="" >
Whether or not to enable gravity waves from PBL moving mountains source.
Default: .false.
</entry>

<entry id="pgwv" type="integer" category="gw_drag"
group="gw_drag_nl" valid_values="" >
Gravity wave spectrum dimension (wave numbers are from -pgwv to pgwv).
Expand Down Expand Up @@ -1533,6 +1539,13 @@ Width of gaussian used to create frontogenesis tau profile [m/s].
Default: set by build-namelist.
</entry>

<entry id="alpha_gw_movmtn" type="real" category="gw_drag"
group="gw_drag_nl" valid_values="" >
Tunable parameter controlling proportion of boundary layer momentum flux escaping as GW momentum flux
Default: set by build-namelist.
</entry>


<entry id="gw_drag_file" type="char*256" input_pathname="abs" category="gw_drag"
group="gw_drag_nl" valid_values="" >
Full pathname of Beres lookup table data file for gravity waves sourced
Expand All @@ -1547,6 +1560,12 @@ from shallow convection.
Default: set by build-namelist.
</entry>

<entry id="gw_drag_file_mm" type="char*256" input_pathname="abs" category="gw_drag"
group="gw_drag_nl" valid_values="" >
Relative pathname of lookup table for deep convective moving mountain GW source
Default: set by build-namelist.
</entry>

<entry id="taubgnd" type="real" category="gw_drag"
group="gw_drag_nl" valid_values="" >
Background source strength (used for waves from frontogenesis).
Expand Down
94 changes: 93 additions & 1 deletion doc/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,95 @@

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

Tag name: cam6_4_010
Originator(s): juliob, cacraig
Date: July 18, 2024
One-line Summary: Initial Gravity Wave moving mountain
Github PR URL: https://github.com/ESCOMP/CAM/pull/1057

Purpose of changes (include the issue number and title text for each relevant GitHub issue):
- New gravity wave source - "moving mountains": https://github.com/ESCOMP/CAM/issues/942

Describe any changes made to build system: N/A

Describe any changes made to the namelist:
- Introduce:
use_gw_movmtn_pbl - If true, then turns on GW moving mountain from PBL moving mountain source
alpha_gw_movmtn - Tunable parameter controlling proportion of boundary layer momentum flux escaping
as GW momentum flux
gw_drag_file_mm - Relative pathname of lookup table for deep convective moving mountain GW source
NOTE - This file is expected to be replaced, so it has not been committed to the svn repository and
only resides on derecho.

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

Describe any substantial timing or memory changes: N/A

Code reviewed by: cacraig, nusbaume

List all files eliminated:

List all files added and what they do:
A src/physics/cam/gw_movmtn.F90
- Moving mountain module

List all existing files that have been modified, and describe the changes:
M bld/build-namelist
M bld/namelist_files/namelist_defaults_cam.xml
M bld/namelist_files/namelist_definition.xml
- Mods for new namelist variables described above

M src/physics/cam/clubb_intr.F90
M src/physics/cam/gw_drag.F90
M src/physics/cam/phys_control.F90
- Mods to support moving mountains

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:
ERP_Ln9.f09_f09_mg17.FCSD_HCO.derecho_intel.cam-outfrq9s (Overall: PEND) details:
PEND ERP_Ln9.f09_f09_mg17.FCSD_HCO.derecho_intel.cam-outfrq9s RUN
FAIL ERP_Ln9.f09_f09_mg17.FCSD_HCO.derecho_intel.cam-outfrq9s COMPARE_base_rest
FAIL ERP_Ln9.f09_f09_mg17.FCSD_HCO.derecho_intel.cam-outfrq9s GENERATE exception
- pre-existing failure due to HEMCO not having reproducible results issues #1018 and #856

SMS_D_Ln9_P1280x1.ne0ARCTICne30x4_ne0ARCTICne30x4_mt12.FHIST.derecho_intel.cam-outfrq9s (Overall: PEND) details:
PEND SMS_D_Ln9_P1280x1.ne0ARCTICne30x4_ne0ARCTICne30x4_mt12.FHIST.derecho_intel.cam-outfrq9s SHAREDLIB_BUILD
SMS_D_Ln9_P1280x1.ne0CONUSne30x8_ne0CONUSne30x8_mt12.FCHIST.derecho_intel.cam-outfrq9s (Overall: PEND) details:
PEND SMS_D_Ln9_P1280x1.ne0CONUSne30x8_ne0CONUSne30x8_mt12.FCHIST.derecho_intel.cam-outfrq9s SHAREDLIB_BUILD
- pre-existing failures - need fix in CLM external

SMS_D_Ln9.T42_T42.FSCAM.derecho_intel.cam-outfrq9s (Overall: FAIL) details:
FAIL SMS_D_Ln9.T42_T42.FSCAM.derecho_intel.cam-outfrq9s RUN time=65
- Bug in med.F90 - Will go away when CICE external is updated post git-fleximod

ERP_D_Ln9.ne30pg3_ne30pg3_mg17.FLTHIST.derecho_intel.cam-outfrq9s (Overall: DIFF) details:
ERP_D_Ln9.ne30pg3_ne30pg3_mg17.FLTHIST.derecho_intel.cam-outfrq9s_rrtmgp (Overall: DIFF) details:
ERS_Ld3.f10_f10_mg37.F1850.derecho_intel.cam-outfrq1d_14dec_ghg_cam7 (Overall: DIFF) details:
SMS_D_Ln9.ne30pg3_ne30pg3_mg17.FMTHIST.derecho_intel.cam-outfrq9s (Overall: DIFF) details:
SMS_D_Ln9_P1280x1.ne30pg3_ne30pg3_mg17.FCLTHIST.derecho_intel.cam-outfrq9s (Overall: DIFF) details:
- Baseline differences due to using moving mountains for CAM7 runs (Also had NLCOMP failures for these exact same tests)


izumi/nag/aux_cam:
DAE.f45_f45_mg37.FHS94.izumi_nag.cam-dae (Overall: FAIL) details:
FAIL DAE.f45_f45_mg37.FHS94.izumi_nag.cam-dae RUN time=10
PEND DAE.f45_f45_mg37.FHS94.izumi_nag.cam-dae COMPARE_base_da
- pre-existing failure - issue #670

izumi/gnu/aux_cam: all pass

Summarize any changes to answers, i.e.,
- what code configurations: all CAM7
- what platforms/compilers: all
- nature of change (roundoff; larger than roundoff but same climate; new
climate): Julio ran FMTHIST for 4 years and approved the results


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

Tag name: cam6_4_009
Expand Down Expand Up @@ -182,7 +274,7 @@ izumi/nag/aux_cam:
SMS_P48x1_D_Ln3.f09_f09_mg17.QPC6HIST.izumi_nag.cam-outfrq3s_co2cycle_usecase (Overall: DIFF) details:
- All tests which use CLUBB will have answer changes


izumi/gnu/aux_cam:
ERP_D_Ln9.C48_C48_mg17.QPC6.izumi_gnu.cam-outfrq9s (Overall: DIFF) details:
ERP_D_Ln9.ne3pg3_ne3pg3_mg37.QPC6.izumi_gnu.cam-outfrq9s_rrtmgp (Overall: DIFF) details:
Expand Down
Loading

0 comments on commit 7f30c82

Please sign in to comment.