Skip to content

cam6_4_087: Update CAM testing. #1285

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 19 commits into from
Apr 22, 2025
Merged
Show file tree
Hide file tree
Changes from 13 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 @@ -144,7 +144,7 @@ fxDONOTUSEurl = https://github.com/ESCOMP/mizuRoute
[submodule "ccs_config"]
path = ccs_config
url = https://github.com/ESMCI/ccs_config_cesm.git
fxtag = ccs_config_cesm1.0.29
fxtag = ccs_config_cesm1.0.39
fxrequired = ToplevelRequired
fxDONOTUSEurl = https://github.com/ESMCI/ccs_config_cesm.git

Expand Down
3 changes: 1 addition & 2 deletions bld/configure
Original file line number Diff line number Diff line change
Expand Up @@ -1252,8 +1252,7 @@ elsif ($phys_pkg eq 'cam4') {
}
else {
# Simple models use cam7-lt vertical grid.
# $nlev = 58; # - ERROR: No default value found for ncdata
$nlev = 30; # bit-for-bit baselines for now
$nlev = 58;
}

# user override
Expand Down
1 change: 1 addition & 0 deletions bld/namelist_files/namelist_defaults_cam.xml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
<ncdata nlev="26" analytic_ic="1" >atm/cam/inic/cam_vcoords_L26_c180105.nc</ncdata>
<ncdata nlev="30" analytic_ic="1" >atm/cam/inic/cam_vcoords_L30_c180105.nc</ncdata>
<ncdata nlev="32" analytic_ic="1" >atm/cam/inic/cam_vcoords_L32_c180105.nc</ncdata>
<ncdata nlev="58" analytic_ic="1" >atm/cam/inic/cam_vcoords_L58_c250227.nc</ncdata>

<!-- Vertical/Horizontal coordinates only - MPAS initial files for analytic cases-->
<ncdata hgrid="mpasa480" nlev="32" analytic_ic="1" >atm/cam/inic/mpas/mpasa480_L32_notopo_coords_c240507.nc</ncdata>
Expand Down
12 changes: 12 additions & 0 deletions bld/namelist_files/use_cases/adiabatic.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version="1.0"?>

<namelist_defaults>

<start_ymd> 10101 </start_ymd>

<!-- Force PHIS to be set to zero -->
<use_topo_file>.false.</use_topo_file>

<analytic_ic_type>'moist_baroclinic_wave_dcmip2016'</analytic_ic_type>

</namelist_defaults>
15 changes: 8 additions & 7 deletions bld/namelist_files/use_cases/dctest_frierson.xml
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,16 @@
<avgflag_pertape>'A'</avgflag_pertape>

<fincl1>
'U:A','T:A','V:A','Q:A','Z3:A','PRECL:A','PRECC:A','PS:A','SST:A','TS:A', 'gray_DTCOND', 'gray_DQCOND', 'gray_EVAPDT', 'gray_EVAPDQ', 'gray_PRECL' , 'gray_PRECC' , 'gray_Tsurf' , 'gray_Qsurf' , 'gray_Cdrag' , 'gray_Zpbl' , 'gray_KVH' , 'gray_KVM' , 'gray_VSE' , 'gray_Zm' , 'gray_Rf' , 'gray_DTV' , 'gray_DUV' , 'gray_DVV' , 'gray_VD01' , 'gray_SHflux', 'gray_LHflux', 'gray_TauU' , 'gray_TauV' , 'gray_QRL' , 'gray_QRS' , 'gray_SWflux', 'gray_LUflux', 'gray_LDflux', 'gray_LWflux', 'gray_LUflux_TOA', 'gray_LDflux_TOA', 'gray_LWflux_TOA'
'U:A','T:A','V:A','Q:A','Z3:A','PRECL:A','PS:A','SST:A','TS:A',
'gray_DTCOND', 'gray_DQCOND', 'gray_EVAPDT',
'gray_EVAPDQ', 'gray_PRECL' , 'gray_PRECC' , 'gray_Tsurf' , 'gray_Qsurf' ,
'gray_Cdrag' , 'gray_Zpbl' , 'gray_KVH' , 'gray_KVM' , 'gray_VSE' ,
'gray_Zm' , 'gray_Rf' , 'gray_DTV' , 'gray_DUV' , 'gray_DVV' ,
'gray_VD01' , 'gray_SHflux', 'gray_LHflux', 'gray_TauU' , 'gray_TauV' ,
'gray_QRL' , 'gray_QRS' , 'gray_SWflux', 'gray_LUflux', 'gray_LDflux',
'gray_LWflux', 'gray_LUflux_TOA', 'gray_LDflux_TOA', 'gray_LWflux_TOA'
</fincl1>

<analytic_ic_type>'moist_baroclinic_wave_dcmip2016'</analytic_ic_type>

<ncdata dyn="fv" hgrid="1.9x2.5">atm/cam/inic/fv/FGRAYRAD_f19.cam.i.0051-01-01-00000_c20230510.nc</ncdata>

<test_tracer_names>
'TT_SLOT','TT_GBALL','TT_TANH','TT_EM8','TT_Y2_2','TT_Y32_16'
</test_tracer_names>

</namelist_defaults>
3 changes: 2 additions & 1 deletion cime_config/config_component.xml
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,7 @@
<value compset="_CAM.*%SCAMCAMFRC">-scam camfrc</value>

<!-- Simple models -->
<value compset="_CAM%ADIAB">-phys adiabatic</value>
<value compset="_CAM%ADIAB">-phys adiabatic -analytic_ic</value>
<value compset="_CAM%TJ16">-phys tj2016 -analytic_ic</value>
<value compset="_CAM%GRAYRAD">-phys grayrad -analytic_ic</value>
<value compset="_CAM%HS94">-phys held_suarez -analytic_ic</value>
Expand Down Expand Up @@ -330,6 +330,7 @@
<value compset="_CAM60%CARMATS%SDYN">carma_trop_strat_sd_cam6</value>
<value compset="_CAM60%SDYN_CLM50" >sd_cam6</value>

<value compset="CAM%ADIAB" >adiabatic</value>
<value compset="CAM%HS94" >held_suarez_1994</value>
<value compset="CAM%TJ16" >dctest_tj2016</value>
<value compset="CAM%GRAYRAD" >dctest_frierson</value>
Expand Down
186 changes: 44 additions & 142 deletions cime_config/testdefs/testlist_cam.xml
Original file line number Diff line number Diff line change
Expand Up @@ -463,16 +463,6 @@
<option name="wallclock">00:30:00</option>
</options>
</test>
<!-- 339 tsm ter tbl -->
<test compset="FADIAB" grid="f10_f10_mg37" name="ERC_D_Ln9" testmods="cam/terminator">
<machines>
<machine name="izumi" compiler="gnu" category="aux_cam"/>
</machines>
<options>
<option name="comment" >339 tsm, ter</option>
<option name="wallclock">00:30:00</option>
</options>
</test>
<!-- 368 -->
<test compset="QPC6" grid="f10_f10_mg37" name="ERC_D_Ln9" testmods="cam/outfrq3s">
<machines>
Expand Down Expand Up @@ -1012,76 +1002,7 @@
<option name="wallclock">00:20:00</option>
</options>
</test>
<!-- 700 -->
<test compset="FADIAB" grid="ne5_ne5_mg37" name="ERI_D_Ln18" testmods="cam/outfrq3s_bwic">
Copy link
Collaborator

Choose a reason for hiding this comment

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

Was the test case outfrq3s_bwic testing a feature which should continue to be tested?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

The outfrq3s_bwic testmods set analytic initial conditions to baroclinic wave. This is now the default for FADIAB and it's set in config_component.xml.

<machines>
<machine name="izumi" compiler="nag" category="aux_cam"/>
</machines>
<options>
<option name="comment" >700 tsm, ter, tbr</option>
<option name="wallclock">00:30:00</option>
</options>
</test>
<!-- 702 -->
<test compset="FADIAB" grid="ne5pg3_ne5pg3_mg37" name="ERI_D_Ln18" testmods="cam/outfrq3s_bwic">
<machines>
<machine name="izumi" compiler="nag" category="aux_cam"/>
</machines>
<options>
<option name="comment" >702 tsm, ter, tbr</option>
<option name="wallclock">00:30:00</option>
</options>
</test>
<!-- 704 tsm ter tbl -->
<test compset="FADIAB" grid="ne5pg3_ne5pg3_mg37" name="ERC_D_Ln9" testmods="cam/outfrq3s">
<machines>
<machine name="izumi" compiler="gnu" category="aux_cam"/>
</machines>
<options>
<option name="comment" >704 tsm, ter</option>
<option name="wallclock">00:30:00</option>
</options>
</test>
<!-- 705 tsm -->
<test compset="FADIAB" grid="ne5_ne5_mg37" name="SMS_D_Ln9_P1x1" testmods="cam/outfrq3s">
<machines>
<machine name="izumi" compiler="nag" category="aux_cam"/>
</machines>
<options>
<option name="comment" >705 tsm</option>
<option name="wallclock">00:30:00</option>
</options>
</test>
<!-- 705 teq -->
<test compset="FADIAB" grid="ne5_ne5_mg37" name="PEM_D_Ln9" testmods="cam/outfrq3s">
<machines>
<machine name="izumi" compiler="nag" category="aux_cam"/>
</machines>
<options>
<option name="comment" >705 teq</option>
<option name="wallclock">00:30:00</option>
</options>
</test>
<!-- 706 tsm teq -->
<test compset="FADIAB" grid="ne5pg3_ne5pg3_mg37" name="PEM_D_Ln9" testmods="cam/outfrq3s">
Comment on lines -1056 to -1066
Copy link
Collaborator

Choose a reason for hiding this comment

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

Do we no longer need to run a PEM test (whatever that does)?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

The PEM test runs two smoke tests at different PE counts. Since FADIAB doesn't run any physics this would only test that the dycore gets answers that are independent of task count. This functionality is verified in many other tests. The testing now includes just 1 test for FADIAB (per Peter and Jesse). It is using test ERC_D_Ln9_P1x1 and is the only test that runs the model serially.

<machines>
<machine name="izumi" compiler="gnu" category="aux_cam"/>
</machines>
<options>
<option name="comment" >706 tsm, teq</option>
<option name="wallclock">00:30:00</option>
</options>
</test>
<!-- 707 tsm teq -->
<test compset="FADIAB" grid="ne5pg2_ne5pg2_mg37" name="ERC_D_Ln9" testmods="cam/outfrq3s">
<machines>
<machine name="izumi" compiler="gnu" category="aux_cam"/>
</machines>
<options>
<option name="comment" >707 tsm, ter</option>
<option name="wallclock">00:30:00</option>
</options>
</test>

<!-- 711 ter -->
<test compset="QPC5" grid="ne5_ne5_mg37" name="ERC_D_Ln9" testmods="cam/outfrq3s_ttrac">
<machines>
Expand Down Expand Up @@ -1326,16 +1247,6 @@
<option name="wallclock">01:00:00</option>
</options>
</test>
<!-- 730 -->
<test compset="FADIAB" grid="ne16_ne16_mg17" name="ERC_D_Ln9" testmods="cam/terminator">
<machines>
Comment on lines -1329 to -1331
Copy link
Collaborator

Choose a reason for hiding this comment

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

Both terminator tests were eliminated. Don't we still need to test terminator chemistry?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

FKESSLER is set up with terminator chemistry. This is done in config_component.xml.

<machine name="derecho" compiler="intel" category="aux_cam"/>
</machines>
<options>
<option name="comment" >730 tsm, ter</option>
<option name="wallclock">00:30:00</option>
</options>
</test>
<!-- 735 -->
<test compset="QPC5HIST" grid="ne16_ne16_mg17" name="ERC_D_Ln9" testmods="cam/outfrq3s_usecase">
<machines>
Expand Down Expand Up @@ -1394,40 +1305,62 @@
</options>
</test>

<test compset="FHS94" grid="mpasa480z32_mpasa480" name="ERC_D_Ln9" testmods="cam/outfrq3s_usecase">
<test compset="F2000dev" grid="ne30pg3_ne30pg3_mg17" name="MGP_D_Ln9" testmods="cam/outfrq3s">
<machines>
<machine name="derecho" compiler="intel" category="prealpha"/>
Comment on lines -1397 to -1399
Copy link
Collaborator

Choose a reason for hiding this comment

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

You removed several prealpha simple model tests. I always looked to them as being our first line of defense against externals breaking CAM jobs (CESM testing would uncover problems with externals before we bring those externals into CAM). Did you feel like this functionality is captured with other tests?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Exactly. Since the simple model tests use all stub components except for CAM, the testing only involves the CAM component and the infrastructure components. The infrastructure components are tested in our other tests. Simple models are basically CAM component only, so I think they should be tested in aux_cam.

<machine name="derecho" compiler="intel" category="aux_pumas"/>
</machines>
<options>
<option name="wallclock">00:30:00</option>
<option name="wallclock">01:00:00</option>
<option name="comment"> Ensuring PUMAS and MG3 config options give the same answers.</option>
</options>
</test>

<test compset="FHS94" grid="mpasa480z32_mpasa480" name="ERC_D_Ln9" testmods="cam/outfrq3s_usecase">
<!-- CAM Simple Models -->

<test compset="FADIAB" grid="ne3pg3_ne3pg3_mt232" name="ERC_D_Ln9_P1x1" testmods="cam/outfrq9s">
<machines>
<machine name="izumi" compiler="nag" category="aux_cam"/>
</machines>
<options>
<option name="wallclock">00:30:00</option>
<option name="comment" >Adiabatic, analytic ICs</option>
<option name="wallclock">00:10:00</option>
</options>
</test>

<test compset="F2000dev" grid="ne30pg3_ne30pg3_mg17" name="MGP_D_Ln9" testmods="cam/outfrq3s">
<test compset="FHS94" grid="mpasa480_mpasa480_mt232" name="ERC_D_Ln9" testmods="cam/outfrq9s">
<machines>
<machine name="derecho" compiler="intel" category="aux_pumas"/>
<machine name="izumi" compiler="nag" category="aux_cam"/>
</machines>
<options>
<option name="wallclock">01:00:00</option>
<option name="comment"> Ensuring PUMAS and MG3 config options give the same answers.</option>
<option name="wallclock">00:10:00</option>
</options>
</test>

<!-- CAM Simple Models -->
<test compset="FKESSLER" grid="ne3pg3_ne3pg3_mt232" name="ERC_D_Ln27" testmods="cam/outfrq9s">
<machines>
<machine name="izumi" compiler="nag" category="aux_cam"/>
</machines>
<options>
<option name="wallclock">00:10:00</option>
</options>
</test>

<test compset="FKESSLER" grid="f19_f19_mg17" name="ERP_D_Ln9" testmods="cam/outfrq9s">
<test compset="FTJ16" grid="ne3pg3_ne3pg3_mt232" name="ERC_D_Ln9" testmods="cam/outfrq9s">
<machines>
<machine name="izumi" compiler="nag" category="prealpha"/>
<machine name="izumi" compiler="gnu" category="aux_cam"/>
</machines>
<options>
<option name="wallclock">00:10:00</option>
</options>
</test>

<test compset="FGRAYRAD" grid="ne3pg3_ne3pg3_mt232" name="ERC_D_Ln9" testmods="cam/outfrq9s">
<machines>
<machine name="izumi" compiler="gnu" category="aux_cam"/>
</machines>
<options>
<option name="wallclock">00:10:00</option>
</options>
</test>

<test compset="FHIST_DARTC6" grid="f09_f09_mg17" name="SMS_C80_P128x1_Lh1" testmods="cam/dartcambigens">
Expand Down Expand Up @@ -1753,6 +1686,15 @@
<option name="comment">CAM7 mid top ~80 km</option>
</options>
</test>
<test compset="QPC7" grid="ne30pg2_ne30pg2_mt232" name="ERC_D_Ln9" testmods="cam/outfrq9s">
<machines>
<machine name="derecho" compiler="intel" category="aux_cam"/>
</machines>
<options>
<option name="wallclock">00:20:00</option>
<option name="comment">CAM7-LT aquaplanet</option>
</options>
</test>
<test compset="FHISTC_MTso" grid="ne30pg3_ne30pg3_mt232" name="ERP_D_Ln9" testmods="cam/outfrq9s">
<machines>
<machine name="derecho" compiler="intel" category="prealpha"/>
Expand Down Expand Up @@ -1980,13 +1922,6 @@
</options>
</test>

<!-- Test of finite volume CAM-SE grid with CSLAM tracer advection -->
<test compset="FKESSLER" grid="ne5pg3_ne5pg3_mg37" name="ERS_Ln27" testmods="cam/outfrq9s" supported="false">
<machines>
<machine name="izumi" compiler="nag" category="aux_cam"/>
</machines>
</test>

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!-- FV3CAM COMPSETS for testing only -->
<!-- (unsupported) -->
Expand Down Expand Up @@ -2777,37 +2712,4 @@
</options>
</test>

<test compset="FHS94" grid="ne5_ne5_mg37" name="ERP_Ln9" testmods="cam/outfrq9s">
<machines>
<machine name="izumi" compiler="gnu" category="aux_cam"/>
</machines>
</test>

<test compset="FADIAB" grid="ne5_ne5_mg37" name="ERS_Ln9" testmods="cam/outfrq9s">
<machines>
<machine name="izumi" compiler="nag" category="aux_cam"/>
</machines>
</test>


<test compset="FADIAB" grid="ne0TESTONLYne5x4_ne0TESTONLYne5x4_mg37" name="ERS_Ln9" testmods="cam/outfrq3s_refined" supported="false">
<machines>
<machine name="derecho" compiler="intel" category="aux_cam"/>
</machines>
<options>
<option name="wallclock">00:10:00</option>
</options>
</test>

<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->
<!-- Release tests -->
<!-- @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ -->


<test compset="FTJ16" grid="f09_f09_mg17" name="ERP_Ln9" testmods="cam/outfrq9s">
<machines>
<machine name="derecho" compiler="intel" category="prealpha"/>
</machines>
</test>

</testlist>
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ ndens=1,1,1,1,1,1
nhtfrq=3,3,3,3,3,3
inithist='ENDOFRUN'
fexcl1='CFAD_DBZE94_CS','CLDTOT_CALCS','CLD_CAL_NOTCS','CS_MIXCERT','CS_MIXPOSS','CS_NOPRECIP','CS_PIA',
'CS_RAINPOSS','CS_RAINPROB','CS_RAINCERT','CS_SNOWCERT','CS_SNOWPOSS'
'CS_RAINPOSS','CS_RAINPROB','CS_RAINCERT','CS_RAINHARD','CS_SNOWCERT','CS_SNOWPOSS'
Loading