Skip to content

cam6_4_095: Update CAM testing. Bugfix for config_component.xml #1316

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 9 commits into from
May 29, 2025
Merged
Show file tree
Hide file tree
Changes from 8 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@ fxDONOTUSEurl = https://github.com/ESMCI/ccs_config_cesm.git
[submodule "cime"]
path = cime
url = https://github.com/ESMCI/cime
fxtag = cime6.1.97
fxtag = cime6.1.102
fxrequired = ToplevelRequired
fxDONOTUSEurl = https://github.com/ESMCI/cime

Expand Down
1 change: 0 additions & 1 deletion bld/build-namelist
Original file line number Diff line number Diff line change
Expand Up @@ -4353,7 +4353,6 @@ if ($dyn =~ /mpas/) {
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');
add_default($nl, 'mpas_number_rayleigh_damp_u_levels');
Expand Down
5 changes: 3 additions & 2 deletions bld/namelist_files/namelist_defaults_cam.xml
Original file line number Diff line number Diff line change
Expand Up @@ -231,10 +231,12 @@
<!-- MPAS Initial Conditions -->
<ncdata hgrid="mpasa480" nlev="32" >atm/cam/inic/mpas/cami_01-01-2000_00Z_mpasa480_L32_CFSR_c240508.nc</ncdata>
<ncdata hgrid="mpasa480" nlev="58" >atm/cam/inic/mpas/cami_01-01-2000_00Z_mpasa480_L58_CFSR_c240814.nc</ncdata>
<ncdata hgrid="mpasa480" nlev="58" aquaplanet="1" >atm/cam/inic/mpas/QPC7_mpasa480_L58_cami_c250527.nc</ncdata>
<ncdata hgrid="mpasa480" nlev="93" >atm/cam/inic/mpas/cami_01-01-2000_00Z_mpasa480_L93_CFSR_c240814.nc</ncdata>

<ncdata hgrid="mpasa120" nlev="32" >atm/cam/inic/mpas/cami_01-01-2000_00Z_mpasa120_L32_CFSR_c240508.nc</ncdata>
<ncdata hgrid="mpasa120" nlev="58" >atm/cam/inic/mpas/cami_01-01-2000_00Z_mpasa120_L58_CFSR_c240814.nc</ncdata>
<ncdata hgrid="mpasa120" nlev="58" aquaplanet="1" >atm/cam/inic/mpas/QPC7_mpasa120_L58_cami_c250527.nc</ncdata>
<ncdata hgrid="mpasa120" nlev="70" waccm_phys="1">atm/waccm/ic/mpasa120_L70.waccm_topography_SC_c240904.nc</ncdata>
<ncdata hgrid="mpasa120" nlev="93" >atm/cam/inic/mpas/cami_01-01-2000_00Z_mpasa120_L93_CFSR_c240814.nc</ncdata>

Expand Down Expand Up @@ -3351,7 +3353,6 @@
<mpas_number_rayleigh_damp_u_levels> 5 </mpas_number_rayleigh_damp_u_levels>
<mpas_apply_lbcs> .false. </mpas_apply_lbcs>
<mpas_jedi_da> .false. </mpas_jedi_da>
<mpas_print_detailed_minmax_vel> .true. </mpas_print_detailed_minmax_vel>
<mpas_block_decomp_file_prefix hgrid="mpasa480">atm/cam/inic/mpas/mpasa480.graph.info.part.</mpas_block_decomp_file_prefix>
<mpas_block_decomp_file_prefix hgrid="mpasa120">atm/cam/inic/mpas/mpasa120.graph.info.part.</mpas_block_decomp_file_prefix>
<mpas_block_decomp_file_prefix hgrid="mpasa60">atm/cam/inic/mpas/mpasa60.graph.info.part.</mpas_block_decomp_file_prefix>
Expand All @@ -3361,7 +3362,7 @@
<mpas_block_decomp_file_prefix hgrid="mpasa15-3">atm/cam/inic/mpas/mpasa15-3.graph.info.part.</mpas_block_decomp_file_prefix>

<mpas_do_restart > .false. </mpas_do_restart>
<mpas_print_global_minmax_vel > .true. </mpas_print_global_minmax_vel>
<mpas_print_global_minmax_vel > .false. </mpas_print_global_minmax_vel>
<mpas_print_detailed_minmax_vel> .false. </mpas_print_detailed_minmax_vel>
<mpas_print_global_minmax_sca > .false. </mpas_print_global_minmax_sca>

Expand Down
6 changes: 3 additions & 3 deletions cime_config/config_component.xml
Original file line number Diff line number Diff line change
Expand Up @@ -262,7 +262,7 @@
<value compset="2000_CAM60_SLND_SICE_DOCN%SOMAQP">aquaplanet_cam6</value>
<value compset="2000_CAM60_SLND_SICE_DOCN%AQP" >aquaplanet_cam6</value>
<value compset="2000_CAM60_SLND_SICE_DOCN%AQPCONST" >aquaplanet_rce_cam6</value>
<value compset="2000_CAM70.*_SLND_SICE_DOCN%AQP" >aquaplanet_cam7</value>
<value compset="2000[CE]?_CAM70.*_SLND_SICE_DOCN%AQP">aquaplanet_cam7</value>
<value compset="2000_CAM\d0%WC.*_SLND_SICE_DOCN%AQP">aquaplanet_waccm_2000</value>

<value compset="2010_CAM60" >2010_cam6</value>
Expand All @@ -279,8 +279,8 @@
<value compset="HIST_CAM40%WXIE" >1950-2010_ccmi_refc1_waccmx_ma</value>
<value compset="HIST_CAM50" >1850-2005_cam5</value>
<value compset="HIST_CAM60" >hist_cam6</value>
<value compset="HIST_CAM70%LT" >hist_cam_lt</value>
<value compset="HIST_CAM70%MT" >hist_cam_mt</value>
<value compset="HIST[CE]?_CAM70%LT">hist_cam_lt</value>
<value compset="HIST[CE]?_CAM70%MT">hist_cam_mt</value>
<value compset="HIST_CAM60%WCTS" >waccm_tsmlt_hist_cam6</value>
<value compset="HIST_CAM60%WCSC" >waccm_sc_hist_cam6</value>
<value compset="HIST_CAM60%WCCM" >waccm_ma_hist_cam6</value>
Expand Down
29 changes: 15 additions & 14 deletions cime_config/testdefs/testlist_cam.xml
Original file line number Diff line number Diff line change
Expand Up @@ -199,14 +199,24 @@
<option name="comment" >CAM7-LT aquaplanet</option>
</options>
</test>
<test compset="QPC7" grid="ne30pg3_ne30pg3_mt232" name="ERP_D_Ln9" testmods="cam/outfrq3s_cosp">
<test compset="QPC7" grid="mpasa120_mpasa120" name="ERC_D_Ln9_P512" testmods="cam/outfrq9s_mpasa120">
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I assume we still have an aquaplanet SE dycore test? Same question about cosp being tested elsewhere?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On derecho the QPC7 compset is tested with ne30pg2. That's currently the only pg2 test. It's also tested with izumi/gnu using ne3pg3.

I combined the cosp and radiation diagnostic tests in the cosp_rad_diags testmods which are used with FHISTC_LTso and izumi/nag. COSP is also tested on derecho using QPC6.

<machines>
<machine name="derecho" compiler="intel" category="aux_cam"/>
<machine name="derecho" compiler="intel" category="prealpha"/>
</machines>
<options>
<option name="wallclock">00:10:00</option>
<option name="comment" >CAM7-LT aquaplanet w/ COSP</option>
<option name="comment" >CAM7-LT aquaplanet</option>
</options>
</test>
<test compset="QPC7" grid="mpasa480_mpasa480_mt232" name="ERC_D_Ln9" testmods="cam/outfrq9s_mpasa480">
<machines>
<machine name="izumi" compiler="nag" category="aux_cam"/>
<machine name="izumi" compiler="nag" category="prealpha"/>
</machines>
<options>
<option name="wallclock">00:10:00</option>
<option name="comment" >CAM7-LT aquaplanet on mpasa480</option>
</options>
</test>
<test compset="QPRCEMIP" grid="ne30_ne30_mg17" name="ERP_Ln9" testmods="cam/outfrq9s">
Expand Down Expand Up @@ -1195,12 +1205,13 @@
</options>
</test>

<test compset="F2000climo" grid="mpasa120_mpasa120" name="ERS_Ln9_P288x1" testmods="cam/outfrq9s_mpasa120">
<test compset="F2000climo" grid="mpasa120_mpasa120" name="ERC_D_Ln9_P512" testmods="cam/outfrq9s_mpasa120">
<machines>
<machine name="derecho" compiler="intel" category="aux_cam"/>
</machines>
<options>
<option name="wallclock">00:45:00</option>
<option name="comment" >F2000climo w/ mpasa120</option>
</options>
</test>

Expand All @@ -1213,15 +1224,6 @@
</options>
</test>

<test compset="F2000climo" grid="mpasa480_mpasa480" name="ERS_D_Ln9" testmods="cam/outfrq9s_mpasa480_pertlim">
<machines>
<machine name="derecho" compiler="intel" category="aux_cam"/>
</machines>
<options>
<option name="wallclock">00:45:00</option>
</options>
</test>

<test compset="F2000dev" grid="ne30pg3_ne30pg3_mg17" name="MGP_D_Ln9" testmods="cam/outfrq3s">
<machines>
<machine name="derecho" compiler="intel" category="aux_pumas"/>
Expand Down Expand Up @@ -1590,10 +1592,9 @@
<option name="comment">CAM7-LT, archiving, resubmit</option>
</options>
</test>
<test compset="FHISTC_LTso" grid="mpasa480_mpasa480" name="ERS_D_Ln9" testmods="cam/outfrq9s_mpasa480">
<test compset="FHISTC_LTso" grid="mpasa120_mpasa120" name="ERC_D_Ln9_P512" testmods="cam/outfrq9s_mpasa120">
<machines>
<machine name="derecho" compiler="intel" category="aux_cam"/>
<machine name="izumi" compiler="gnu" category="aux_cam"/>
</machines>
<options>
<option name="wallclock">00:30:00</option>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
hist_nhtfrq = 9
hist_mfilt = 1
hist_ndens = 1
flanduse_timeseries = ''
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,4 @@ nhtfrq=9,9,9,9,9,9
inithist='ENDOFRUN'
mpas_cam_coef=1.0D0
mpas_cam_damping_levels=3
pertlim = 1.e-14

This file was deleted.

This file was deleted.

This file was deleted.

99 changes: 99 additions & 0 deletions doc/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,5 +1,104 @@
===============================================================

Tag name:
Originator(s): eaton
Date:
One-line Summary: Updates to CAM testing.
Github PR URL:

Purpose of changes (include the issue number and title text for each relevant GitHub issue):

. Making progress on (but not resolving):

Issue #258 - Most converted CESM regression tests are CAM5 - may want to make most CAM7
- Add QPC7 tests on mpasa120 and mpasa480 grids

. Modify MPAS testing
- merge the outfrq9s_mpasa480_pertlim testmods into outfrq9s_mpasa480.
Don't need separate testmods to turn on pertlim.

. Fix MPAS frontogenesisAngle calc to avoid invalid operation (same fix as
used by SE).

. Fix #1315 - CAM_NML_USE_CASE bug
- fix bug in config_component.xml for B compsets.

. Update cime submodule.


Describe any changes made to build system: none

Describe any changes made to the namelist: none

List any changes to the defaults for the boundary datasets: none

Describe any substantial timing or memory changes: none

Code reviewed by:

List all files eliminated:

cime_config/testdefs/testmods_dirs/cam/outfrq9s_mpasa480_pertlim/*
. merged these testmods with outfrq9s_mpasa480

List all files added and what they do:

List all existing files that have been modified, and describe the changes:

bld/build-namelist
. remove duplicate mpas_print_detailed_minmax_vel setting

bld/namelist_files/namelist_defaults_cam.xml
. remove duplicate mpas_print_detailed_minmax_vel setting
. set defaults for mpas_print_* to .false.. These prints are every
timestep and generate huge logfiles for long production runs.
. add spun-up IC files for QPC7 using mpasa120 and mpasa480 grids.

cime_config/config_component.xml
. Fix CAM_NML_USE_CASE setting for HISTC_CAM70 compsets. This is a bug for
the B compsets, but doesn't impact F compsets.

cime_config/testdefs/testlist_cam.xml
. replace
ERS_D_Ln9.mpasa480_mpasa480.FHISTC_LTso.derecho_intel.cam-outfrq9s_mpasa480
by
ERC_D_Ln9_P512.mpasa120_mpasa120.FHISTC_LTso.derecho_intel.cam-outfrq9s_mpasa120
. replace
ERS_D_Ln9.mpasa480_mpasa480.F2000climo.derecho_intel.cam-outfrq9s_mpasa480_pertlim
by
ERC_D_Ln9.mpasa480_mpasa480_mt232.QPC7.izumi_nag.cam-outfrq9s_mpasa480

cime_config/testdefs/testmods_dirs/cam/outfrq9s_mpasa480_pertlim/user_nl_cam
. add pertlim = 1.e-14

cime_config/testdefs/testmods_dirs/cam/outfrq9s_mpasa120/user_nl_clm
. add flanduse_timeseries = ''

src/dynamics/mpas/dp_coupling.F90
. add tiny value to frontogenesisAngle calc to avoid invalid operation when
both theta_x and theta_y are 0.0. This mimics what's done in SE dycore.

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:

derecho/nvhpc/aux_cam:

izumi/nag/aux_cam:

izumi/gnu/aux_cam:

CAM tag used for the baseline comparison tests if different than previous
tag:

Summarize any changes to answers:

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

Tag name: cam6_4_094
Originator(s): fvitt
Date: 27 May 2025
Expand Down
12 changes: 6 additions & 6 deletions src/dynamics/mpas/dp_coupling.F90
Original file line number Diff line number Diff line change
Expand Up @@ -1125,12 +1125,12 @@ subroutine calc_frontogenesis( frontogenesisFunction, frontogenesisAngle,
do k=1, nVertLevels

frontogenesisFunction(k,iCell) = 0.5_r8*( &
-divh(k)*(theta_x(k)**2 + theta_y(k)**2) &
-d_diag(k)*theta_x(k)**2 &
-2.0_r8*d_off_diag(k)*theta_x(k)*theta_y(k) &
+d_diag(k)*theta_y(k)**2 )
frontogenesisAngle(k,iCell) = atan2(theta_y(k),theta_x(k))

- divh(k)*(theta_x(k)**2 + theta_y(k)**2) &
- d_diag(k)*theta_x(k)**2 &
- 2.0_r8*d_off_diag(k)*theta_x(k)*theta_y(k) &
+ d_diag(k)*theta_y(k)**2 )
frontogenesisAngle(k,iCell) = atan2(theta_y(k), theta_x(k) + 1.e-10_r8)
end do

end do
Expand Down