Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
319af00
Add automatic dynamics-splitting defaults to the SE dycore
PeterHjortLauritzen Aug 22, 2026
e504149
remove un-used un-tested namelist options
PeterHjortLauritzen Aug 22, 2026
a1b80d0
remove un-used variables
PeterHjortLauritzen Aug 22, 2026
f6226a4
clean-up and edit Changelog
PeterHjortLauritzen Aug 22, 2026
2525257
add del4 on Q on GLL grid when using CSLAM, add limiter to mapping fr…
PeterHjortLauritzen Aug 22, 2026
7a5d47f
WACCM setings: nu_p level dependent, reduce se_nsplit, turn on diffus…
PeterHjortLauritzen Aug 23, 2026
741b780
this commit should have been in previous commit
PeterHjortLauritzen Aug 23, 2026
538e199
should also have been in previous commit
PeterHjortLauritzen Aug 23, 2026
f298aca
CSLAM bug fixes (b4b in short MT/LT runs, and FKESSLER, only affect C…
PeterHjortLauritzen Aug 23, 2026
29123e6
CSLAM-grid del4 Q filter behind se_cslam_q_filter (default .false.)
PeterHjortLauritzen Aug 27, 2026
f9f06c7
Merge tag cam6_4_198 into noise_tamper
PeterHjortLauritzen Aug 27, 2026
da054ea
restore unconditional se_sponge_del4_lev default (-1)
PeterHjortLauritzen Aug 27, 2026
3ccfd3e
make CSLAM-grid Q filter coefficient runtime-settable: se_cslam_q_fil…
PeterHjortLauritzen Aug 27, 2026
6274a4a
replace se_cslam_q_filter logical with se_cslam_q_filter_nu_fac sentinel
PeterHjortLauritzen Aug 27, 2026
9639892
trim fvm_filter_mod header comments
PeterHjortLauritzen Aug 27, 2026
6c92f6a
auto-resolve hypervis_subcycle_cslam_q when the CSLAM Q filter is active
PeterHjortLauritzen Aug 27, 2026
112cd87
default CSLAM Q filter ON (nu_fac=1.0) except ne30pg3 LT/MT
PeterHjortLauritzen Aug 28, 2026
de635e2
CSLAM Q filter default ON for ne30pg3 WACCM-MT too
PeterHjortLauritzen Aug 28, 2026
d6f08de
ne16pg3 WACCM(WAt1ma) default IC -> fvitt water-vapor-corrected spinup
PeterHjortLauritzen Aug 28, 2026
d40aa3b
Restore cam6_3_151-style GLL double advection under CSLAM + hypervis_…
PeterHjortLauritzen Aug 30, 2026
ad7a5ed
default to GLL double advection + CSLAM Q filter 0.5*nu_p (blessed co…
PeterHjortLauritzen Aug 30, 2026
e6ae02d
zmconv_tau default 3600 -> 1200 s for ne120 grids
PeterHjortLauritzen Aug 30, 2026
cdf0b00
zmconv_tau default 600 s for ne240 grids
PeterHjortLauritzen Aug 30, 2026
3b46802
change comment
PeterHjortLauritzen Aug 31, 2026
0f76917
clean-up
PeterHjortLauritzen Aug 31, 2026
75261f3
update Changelog and other stuff
PeterHjortLauritzen Aug 31, 2026
fa599ec
Merge tag cam6_4_199
PeterHjortLauritzen Aug 31, 2026
31eb8ab
set nu_top and diff_sponge_fac correctly when running LT with WACCM p…
PeterHjortLauritzen Sep 1, 2026
dde9db7
LUBB namelist default for ne120 from Ben Stephens
PeterHjortLauritzen Sep 1, 2026
6803a58
some clean-up
PeterHjortLauritzen Sep 1, 2026
3e7283f
Update bld/namelist_files/namelist_defaults_cam.xml
PeterHjortLauritzen Sep 2, 2026
cb5b4c2
further clean-up of namelist defaults
PeterHjortLauritzen Sep 2, 2026
6b4c927
move cslam variables from dimensions_mod to control_mod (as suggested…
PeterHjortLauritzen Sep 2, 2026
1a281ad
Update src/dynamics/se/dycore/global_norms_mod.F90
PeterHjortLauritzen Sep 2, 2026
f7d98f8
Update src/dynamics/se/dycore/viscosity_mod.F90
PeterHjortLauritzen Sep 2, 2026
366befa
Update src/dynamics/se/dycore/global_norms_mod.F90
PeterHjortLauritzen Sep 2, 2026
6c227d5
resolving efficieny issue Truesdale found (should be b4b)
PeterHjortLauritzen Sep 2, 2026
14d1f04
inv area sphere is already in structure ... use it!
PeterHjortLauritzen Sep 2, 2026
9a2fb2d
fixes from Truesdale
PeterHjortLauritzen Sep 3, 2026
b8060af
restore WACCM-x default
PeterHjortLauritzen Sep 3, 2026
eaebb74
incremental update to Changelog to include izumi regression results
jtruesdal Sep 3, 2026
9dc013d
ChangeLog updated with last regression test results
jtruesdal Sep 4, 2026
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: 2 additions & 0 deletions bld/build-namelist
Original file line number Diff line number Diff line change
Expand Up @@ -4332,6 +4332,8 @@ if ($dyn =~ /se/) {
se_ftype
se_horz_num_threads
se_large_Courant_incr
se_cslam_q_filter_nu_fac
se_gll_advect_q
se_hypervis_subcycle
se_hypervis_subcycle_sponge
se_hypervis_subcycle_q
Expand Down
47 changes: 19 additions & 28 deletions bld/namelist_files/namelist_defaults_cam.xml
Original file line number Diff line number Diff line change
Expand Up @@ -335,7 +335,7 @@
<bnd_topo hgrid="ne16np4" npg="3">atm/cam/topo/se/ne16pg3_gmted2010_modis_bedmachine_nc3000_Laplace0200_noleak_greenlndantarcsgh30fac2.50_20250825.nc</bnd_topo>
<bnd_topo hgrid="ne30np4" npg="3">atm/cam/topo/se/ne30pg3_gmted2010_modis_bedmachine_nc3000_Laplace0100_noleak_greenlndantarcsgh30fac2.50_20250828.nc</bnd_topo>
<bnd_topo hgrid="ne60np4" npg="3">atm/cam/topo/se/ne60pg3_nc3000_Co030_Fi001_PF_nullRR_Nsw021_20171012.nc</bnd_topo>
<bnd_topo hgrid="ne120np4" npg="3">atm/cam/topo/se/ne120pg3_nc3000_Co015_Fi001_PF_nullRR_Nsw010_20171014.nc</bnd_topo>
<bnd_topo hgrid="ne120np4" npg="3">atm/cam/topo/se/ne120pg3_gmted2010_modis_bedmachine_nc3000_Laplace0025_noleak_20250904.nc</bnd_topo>
<bnd_topo hgrid="ne240np4" npg="3">atm/cam/topo/se/ne240pg3_nc3000_Co008_Fi001_PF_nullRR_Nsw005_20171015.nc</bnd_topo>

<bnd_topo hgrid="ne0np4CONUS.ne30x8" >atm/cam/topo/se/ne30x8_CONUS_nc3000_Co060_Fi001_MulG_PF_RR_Nsw042_c200428.nc</bnd_topo>
Expand Down Expand Up @@ -2146,6 +2146,10 @@

<!-- Sponge layer vertical diffusion factor -->
<diff_sponge_fac > 0.0D0 </diff_sponge_fac>
<diff_sponge_fac waccm_phys="1" waccmx="0"> 0.1D0 </diff_sponge_fac>
<diff_sponge_fac waccm_phys="1" waccmx="0" model_top="lt"> 0.0D0 </diff_sponge_fac>
<diff_sponge_fac waccmx="1" > 0.1D0 </diff_sponge_fac>
<diff_sponge_fac model_top="ht" > 0.1D0 </diff_sponge_fac>

<!-- Use convective water in radiation calculation -->
<conv_water_in_rad > 0 </conv_water_in_rad>
Expand Down Expand Up @@ -2218,6 +2222,7 @@
<clubb_c_K9 > 0.25 </clubb_c_K9>
<clubb_C_uu_shr > 0.3 </clubb_C_uu_shr>
<clubb_C_uu_shr phys="cam7" > 0.1 </clubb_C_uu_shr>
<clubb_C_uu_shr phys="cam7" hgrid="ne120np4" > 0.6 </clubb_C_uu_shr>
<clubb_C_uu_buoy > 0.3 </clubb_C_uu_buoy>
<clubb_C_wp2_splat > 0.0 </clubb_C_wp2_splat>
<clubb_C_wp3_pr_turb > 0.4 </clubb_C_wp3_pr_turb>
Expand Down Expand Up @@ -2921,6 +2926,8 @@
<zmconv_tiedtke_add > 0.5 </zmconv_tiedtke_add>
<zmconv_capelmt > 70.0 </zmconv_capelmt>
<zmconv_tau > 3600.0 </zmconv_tau>
<zmconv_tau hgrid="ne120np4" > 1200.0 </zmconv_tau>
<zmconv_tau hgrid="ne240np4" > 600.0 </zmconv_tau>

<zmconv_parcel_pbl > .false. </zmconv_parcel_pbl>
<zmconv_parcel_hscale > 0.5 </zmconv_parcel_hscale>
Expand Down Expand Up @@ -3238,33 +3245,27 @@

<se_large_Courant_incr > .true. </se_large_Courant_incr>

<se_cslam_q_filter_nu_fac> 0.5 </se_cslam_q_filter_nu_fac>

<se_gll_advect_q > .true. </se_gll_advect_q>

<se_hypervis_scaling se_refined_mesh="1" hypervis_type="tensor" >3.22D0 </se_hypervis_scaling>

<se_hypervis_subcycle >-1 </se_hypervis_subcycle>
<se_hypervis_subcycle waccm_phys="1" model_top="mt" > 3 </se_hypervis_subcycle>
<se_hypervis_subcycle waccm_phys="1" > 2 </se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne16np4" waccm_phys="1" model_top="none"> 10 </se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne16np4" waccm_phys="1" waccmx="0" model_top="none"> 9 </se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne30np4" waccm_phys="1" waccmx="0" model_top="none"> 8 </se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne30np4" waccm_phys="1" waccmx="1" model_top="none"> 5 </se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne0np4.ARCTIC.ne30x4" > 2 </se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne0np4.POLARCAP.ne30x4" > 2 </se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne0np4CONUS.ne30x8" > 1 </se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne0np4.ARCTICGRIS.ne30x8" > 1 </se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne0np4.NATL.ne30x8" > 1 </se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne0np4CONUS.ne30x8" waccm_phys="1" > 1 </se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne16np4" model_top="ht" > 18</se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne16np4" model_top="xt" > 18</se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne30np4" model_top="ht" > 18</se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne30np4" model_top="xt" > 18</se_hypervis_subcycle>
<se_hypervis_subcycle waccmx="1" hgrid="ne120np4" nlev="273" > 30</se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne3np4" > 3 </se_hypervis_subcycle>
<se_hypervis_subcycle hgrid="ne0np4TESTONLY.ne5x4" > 3 </se_hypervis_subcycle>

<se_hypervis_subcycle_sponge >-1 </se_hypervis_subcycle_sponge>
<se_hypervis_subcycle_sponge hgrid="ne30np4" model_top="mt" waccm_phys="1" > 3 </se_hypervis_subcycle_sponge>
<se_hypervis_subcycle_sponge hgrid="ne16np4" waccm_phys="1" waccmx="0" > 2 </se_hypervis_subcycle_sponge>
<se_hypervis_subcycle_sponge hgrid="ne30np4" waccm_phys="1" waccmx="0" > 4 </se_hypervis_subcycle_sponge>
<se_hypervis_subcycle_sponge waccmx="1" > 20 </se_hypervis_subcycle_sponge>
<se_hypervis_subcycle_sponge hgrid="ne30np4" waccmx="1" model_top="none" > 60 </se_hypervis_subcycle_sponge>
<se_hypervis_subcycle_sponge hgrid="ne0np4.ARCTIC.ne30x4" > 2 </se_hypervis_subcycle_sponge>
Expand All @@ -3273,8 +3274,6 @@
<se_hypervis_subcycle_sponge hgrid="ne0np4.ARCTICGRIS.ne30x8" > 5 </se_hypervis_subcycle_sponge>
<se_hypervis_subcycle_sponge hgrid="ne0np4.NATL.ne30x8" > 5 </se_hypervis_subcycle_sponge>
<se_hypervis_subcycle_sponge hgrid="ne0np4CONUS.ne30x8" waccm_phys="1" > 4 </se_hypervis_subcycle_sponge>
<se_hypervis_subcycle_sponge hgrid="ne16np4" model_top="ht" > 2 </se_hypervis_subcycle_sponge>
<se_hypervis_subcycle_sponge hgrid="ne30np4" model_top="ht" > 4 </se_hypervis_subcycle_sponge>
<se_hypervis_subcycle_sponge hgrid="ne30np4" model_top="xt" > 40 </se_hypervis_subcycle_sponge>
<se_hypervis_subcycle_sponge waccmx="1" hgrid="ne120np4" nlev="273" > 180</se_hypervis_subcycle_sponge>
<se_hypervis_subcycle_sponge hgrid="ne0np4.ARCTIC.ne30x4" model_top="mt" > 3 </se_hypervis_subcycle_sponge>
Expand Down Expand Up @@ -3309,25 +3308,16 @@
<se_nu_p hgrid="ne16np4">6.e15</se_nu_p>
<se_nu_p waccmx="1">5.e15</se_nu_p>

<se_nu_top > 1.25e5 </se_nu_top>
<se_nu_top waccmx="1" > 1.0e6 </se_nu_top>
<se_nu_top model_top="mt" > 1.0e6 </se_nu_top>
<se_nu_top model_top="ht" > 1.0e6 </se_nu_top>
<se_nu_top waccm_phys="1" > 1.0e6 </se_nu_top>
<se_nu_top > -1 </se_nu_top>

<se_molecular_diff > 0.0 </se_molecular_diff>
<se_molecular_diff waccmx="1" > 1.0 </se_molecular_diff>

<se_sponge_del4_nu_fac > -1 </se_sponge_del4_nu_fac>
<se_sponge_del4_nu_fac hgrid="ne120np4" nlev="273" waccmx="1"> 3.0 </se_sponge_del4_nu_fac>
<se_sponge_del4_nu_div_fac> -1 </se_sponge_del4_nu_div_fac>
<se_sponge_del4_nu_div_fac hgrid="ne16np4" waccm_phys="1" waccmx="0"> 7.5 </se_sponge_del4_nu_div_fac>
<se_sponge_del4_nu_div_fac model_top="ht" > 7.5 </se_sponge_del4_nu_div_fac>
<se_sponge_del4_nu_div_fac hgrid="ne120np4" nlev="273" waccmx="1" > 5.0 </se_sponge_del4_nu_div_fac>
<se_sponge_del4_lev > -1 </se_sponge_del4_lev>
<se_sponge_del4_lev waccm_phys="1" model_top="mt"> -1 </se_sponge_del4_lev>
<se_sponge_del4_lev waccm_phys="1"> 30 </se_sponge_del4_lev>
<se_sponge_del4_lev model_top="ht"> 30 </se_sponge_del4_lev>
<se_sponge_del4_lev model_top="xt"> 30 </se_sponge_del4_lev>

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Do we want to keep the value at 30 when using the WACCM-X top?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Good catch (I don't think it is needed anymore but it will need to be tested). Restored for now ...

<se_sponge_del4_lev waccmx="1" hgrid="ne120np4" nlev="273"> 100 </se_sponge_del4_lev>

Expand All @@ -3348,12 +3338,12 @@
<se_nsplit hgrid="ne5np4" waccm_phys="1" > 3 </se_nsplit>
<se_nsplit hgrid="ne16np4" waccmx="1" model_top="none" > 3 </se_nsplit>
<se_nsplit hgrid="ne16np4" waccm_phys="1" model_top="none"> 2 </se_nsplit>
<se_nsplit hgrid="ne16np4" model_top="ht" > 3 </se_nsplit>
<se_nsplit hgrid="ne16np4" model_top="ht" > 2 </se_nsplit>
<se_nsplit hgrid="ne16np4" model_top="xt" > 3 </se_nsplit>
<se_nsplit hgrid="ne30np4" waccm_phys="1" waccmx="1" model_top="none"> 4 </se_nsplit>
<se_nsplit hgrid="ne30np4" > 2 </se_nsplit>
<se_nsplit hgrid="ne30np4" waccm_phys="1" model_top="none"> 4 </se_nsplit>
<se_nsplit hgrid="ne30np4" model_top="ht" > 4 </se_nsplit>
<se_nsplit hgrid="ne30np4" waccm_phys="1" model_top="none"> 3 </se_nsplit>
<se_nsplit hgrid="ne30np4" model_top="ht" > 3 </se_nsplit>
<se_nsplit hgrid="ne30np4" model_top="xt" > 5 </se_nsplit>
<se_nsplit hgrid="ne0np4.ARCTIC.ne30x4" > 3 </se_nsplit>
<se_nsplit hgrid="ne0np4.POLARCAP.ne30x4" > 3 </se_nsplit>
Expand All @@ -3364,14 +3354,15 @@
<se_nsplit hgrid="ne0np4TESTONLY.ne5x4" > 7 </se_nsplit>
<se_nsplit waccmx="1" hgrid="ne120np4" nlev="273" > 10 </se_nsplit>
<se_nsplit hgrid="ne120np4" model_top="mt" > 8 </se_nsplit>
<se_nsplit hgrid="ne120np4" model_top="ht" > 3 </se_nsplit>
<se_nsplit hgrid="ne0np4CONUS.ne30x8" model_top="mt" > 4 </se_nsplit>
<se_nsplit hgrid="ne0np4.ARCTICGRIS.ne30x8" model_top="mt" > 4 </se_nsplit>
<se_nsplit hgrid="ne0np4.NATL.ne30x8" model_top="mt" > 4 </se_nsplit>

<se_rsplit >-1</se_rsplit>
<se_rsplit waccm_phys="1" model_top="mt" > 3 </se_rsplit>
<se_rsplit waccm_phys="1" waccmx="0" > 2 </se_rsplit>
<se_rsplit model_top="ht" > 2 </se_rsplit>
<se_rsplit waccm_phys="1" waccmx="0" >-1</se_rsplit>
<se_rsplit model_top="ht" >-1</se_rsplit>
<se_rsplit waccmx="1" > 4 </se_rsplit>
<se_rsplit hgrid="ne16np4" waccmx="1" model_top="none" > 2 </se_rsplit>
<se_rsplit hgrid="ne0np4CONUS.ne30x8" waccm_phys="1" > 3 </se_rsplit>
Expand Down
32 changes: 31 additions & 1 deletion bld/namelist_files/namelist_definition.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8705,7 +8705,10 @@ Default: Set by build-namelist.
<entry id="se_nu_top" type="real" category="se"
group="dyn_se_inparm" valid_values="" >
Second-order viscosity applied only near the model top [m^2/s].
Default: Set by build-namelist.
If negative the value is set at runtime from the model top location:
1.25e5 for a model top below ~42km, 1.0e6 for the CAM7 middle/high tops,
WACCM and WACCM-x.
Default: -1 (automatic)
</entry>

<entry id="se_sponge_del4_nu_fac" type="real" category="se"
Expand Down Expand Up @@ -8752,6 +8755,33 @@ Default: Set by build-namelist.
a low-order increment for tracer mass more than one grid cell width away
</entry>

<entry id="se_cslam_q_filter_nu_fac" type="real" category="se"
group="dyn_se_inparm" valid_values="" >
Controls the mass-conservative del4 (biharmonic) filter applied to water
vapor on the CSLAM grid every tracer time-step. The filter damps
grid-scale noise in water vapor that seeds surface-pressure noise at
cube-sphere panel edges and vertices; total tracer mass is conserved
exactly and dry air mass (dp_fvm) is not modified.
If &gt; 0 the filter is active with damping coefficient
nu_filter = se_cslam_q_filter_nu_fac*nu_p (and the GLL-side del4 on water
vapor after cslam2gll is retuned to a weak background value).
If &lt;= 0 the filter is off.
Default: 0.5
</entry>

<entry id="se_gll_advect_q" type="logical" category="se"
group="dyn_se_inparm" valid_values="" >
If TRUE (SE-CSLAM only), the thermodynamically active tracers are also
advected on the GLL grid (with the standard scalar tracer hyperviscosity)
and coupled to CAM physics through a forcing increment computed in
dynamics-physics coupling, instead of
overwriting the GLL tracer state with CSLAM values every vertical
remapping time-step. Removes the surface-pressure noise associated with
the overwrite. The GLL-side del4 applied after cslam2gll is not used when TRUE.
Ignored for non-CSLAM (se_fv_nphys=0) configurations.
Default: TRUE
</entry>

<entry id="se_fvm_supercycling" type="integer" category="se"
group="dyn_se_inparm" valid_values="" >
Number of SE rsplit time-steps CSLAM supercycles
Expand Down
2 changes: 1 addition & 1 deletion bld/namelist_files/use_cases/waccm_ma_hist_cam7.xml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@

<!--Species IC -->
<ncdata dyn="se" hgrid="ne30np4" nlev="135">atm/waccm/ic/FHIST_WAt1ma_ne30pg3_spinup01.cam.i.1980-01-01-00000_c250124.nc</ncdata>
<ncdata dyn="se" hgrid="ne16np4" nlev="135">atm/waccm/ic/FHIST_WAt1ma_ne16pg3_spinup01.cam.i.1980-01-01-00000_c250124.nc</ncdata>
<ncdata dyn="se" hgrid="ne16np4" nlev="135">/glade/work/fvitt/waccm_ic/FHISTC_WAt1ma_ne16pg3_watervapor_initial_spinup01.cam.i.1980-01-01-00000.nc</ncdata>
Comment thread
jtruesdal marked this conversation as resolved.
<ncdata dyn="se" hgrid="ne30np4" nlev="189">atm/waccm/ic/FHIST_WXma_ne30pg3_spinup03.cam.i.1980-01-01-00000_c250201.nc</ncdata>
<ncdata dyn="se" hgrid="ne16np4" nlev="189">atm/waccm/ic/FHIST_WXma_ne16pg3_spinup02.cam.i.1980-01-01-00000_c250201.nc</ncdata>

Expand Down
Loading
Loading