Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
48 commits
Select commit Hold shift + click to select a range
5207d0c
Add variable ocn z-level coupler support
matthewhoffman Jan 29, 2025
618a4ad
Allow nISMIP6OceanLayers to be set through namelist and connect to GL…
matthewhoffman Jan 30, 2025
000513e
Change logic controlling GLC_NZOC
matthewhoffman Jan 30, 2025
f57f6be
Set MALI facemelting and TF extrapolation nl options based on GLC_NZOC
matthewhoffman Jan 30, 2025
ae2bcd6
Updates to the new glc_zocnclass_mod
matthewhoffman Jan 31, 2025
10610ec
Add init_ocean_z_levels() to glc driver
matthewhoffman Jan 31, 2025
3837f77
Add new fields to MALI history files
matthewhoffman Jan 31, 2025
f55331f
Add 3d TF support to MPAS-Ocean
matthewhoffman Feb 4, 2025
26fd0d9
Apply glc_nzoc to MPAS-Ocean namelist build system
matthewhoffman Feb 4, 2025
fba7b0d
Change method for determining ocn_c2_glctf
matthewhoffman Feb 5, 2025
80a508c
Have MPAS-O get glcZLevels from glc_zocnclass_mod
matthewhoffman Feb 5, 2025
9040e87
Connect GLC and OCN cpl indices to import and export routines
matthewhoffman Feb 5, 2025
6a6f3ba
Update OCN2GLC_TF_SMAPNAME mapping files to be standard bilinear
matthewhoffman Feb 5, 2025
9fcda74
fixup glcZLevel in ocn driver
matthewhoffman Feb 5, 2025
74820b8
fixup 3dtf calculation in mpas-o time-averager
matthewhoffman Feb 5, 2025
658fe07
Set config_glc_thermal_forcing_coupling_mode based on glc_nzoc
matthewhoffman Feb 9, 2025
e525aa8
Change logic in ocn and glc drivers for 3d TF export/import
matthewhoffman Feb 9, 2025
12a7853
OCN export index fixup
matthewhoffman Feb 9, 2025
4a985d2
Don't use extrapolation in OCN2GLC_TF_SMAPNAME mapping file
matthewhoffman Feb 10, 2025
421a7ca
MALI namelist and streams updates
matthewhoffman Feb 10, 2025
385eb86
Add facemelt and optional ISMF flux to Fogg_rofl
matthewhoffman Feb 12, 2025
cab1d88
Move MALI marine melting from rofl to rofi coupling stream
matthewhoffman Feb 19, 2025
e3ca930
Update GLC2OCN_LIQ_RMAPNAME (and ICE) to new scaled mapping files
matthewhoffman Feb 19, 2025
35fe106
Add 3d TF masking
matthewhoffman Feb 19, 2025
ebcecbe
Move 3d thermal forcing to its own subroutine
xylar Mar 5, 2025
9623d0a
Remove nonnegative check on iceRunoffFlux in MPAS-Ocean
matthewhoffman Mar 9, 2025
8fbd8ac
Update tests
matthewhoffman Mar 9, 2025
748267a
Add MPAS-Ocean packages for 2D and 3D thermal forcing
xylar Mar 10, 2025
a4bbf26
Create OCN_GLC_ISMF_COUPLING case variable
matthewhoffman Mar 16, 2025
f43d357
Remove 2d TF coupling
matthewhoffman Mar 17, 2025
b5969f3
Make glcZLevels positive-up
matthewhoffman Mar 19, 2025
ced62ff
Fixup to 3d TF coupler field initialization
matthewhoffman Mar 19, 2025
0ed5abd
Fix logic for setting config_remove_ais_river_runoff
xylar Mar 20, 2025
3db3142
Fix bug in interpolation to glc z levels
xylar Mar 20, 2025
6cb3e5d
Fix OpenMP parallel for loop for computing TF
xylar Mar 20, 2025
ea24ad0
Update MALI nl defaults for ISMF and facemelting
matthewhoffman Mar 21, 2025
2e55e7b
Update ocn<=>glc mapping files
jonbob Apr 4, 2025
299a147
Change OCN2GLC_TF_SMAPNAME files to include extrapolation
matthewhoffman Apr 4, 2025
b91b1eb
Disable 3d TF coupling for MALI DATA and STATIC modes
matthewhoffman Apr 10, 2025
25ed1c4
Updates after rebase for recently merged branches
matthewhoffman Apr 12, 2025
c7e0dc2
Update MALI grid versions for 3 meshes
matthewhoffman Apr 12, 2025
e0b40e7
Add logic to avoid out-of-bounds assignment of zocn_bnds
matthewhoffman Apr 12, 2025
ecee87a
Add addl logic for when TF coupling fields should be allocated
matthewhoffman Apr 12, 2025
1e5ae0f
Add glc_nzoc to infodata so it an control the value of ocn_c2_glctf
matthewhoffman Apr 12, 2025
203e79d
Fixup last commit: fix location of calling glc_get_num_zocn_classes
matthewhoffman Apr 13, 2025
b14f9bf
Update GLC mapping files for SOwISC12to30E3r4 ocean mesh
matthewhoffman Apr 17, 2025
230c889
Time avg ice-shelf melt flux and connect it and time-avg facemelt to …
matthewhoffman May 24, 2025
eefcce3
Make bld files consistent with Registry
jonbob May 27, 2025
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
45 changes: 29 additions & 16 deletions cime_config/config_grids.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6103,7 +6103,7 @@
<gridmap glc_grid="mpas.gis20km" ocn_grid="oQU240wLI">
<map name="OCN2GLC_SHELF_FMAPNAME">cpl/gridmaps/oQU240wLI/map_oQU240wLI_to_gis20km_esmfaave.20240919.nc</map>
<map name="OCN2GLC_SHELF_SMAPNAME">cpl/gridmaps/oQU240wLI/map_oQU240wLI_to_gis20km_esmfbilin.20240919.nc</map>
<map name="OCN2GLC_TF_SMAPNAME">cpl/gridmaps/oQU240wLI/map_oQU240wLI_to_gis20km_deeperThan300m.esmfneareststod.20240919.nc</map>
<map name="OCN2GLC_TF_SMAPNAME">cpl/gridmaps/oQU240wLI/map_oQU240wLI_to_gis20km_esmfbilin.20240919.nc</map>
Copy link
Member

Choose a reason for hiding this comment

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

Did tempestremap not work?

Copy link
Contributor

Choose a reason for hiding this comment

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

I still can't get it to work when both grids are non-global like this. I understand that mbtempest can do that, but I haven't really entrained that into my workflow

<map name="GLC2ICE_FMAPNAME">cpl/gridmaps/mpas.gis20km/map_gis20km_to_oQU240wLI_esmfaave.20240919.nc</map>
<map name="GLC2ICE_SMAPNAME">cpl/gridmaps/mpas.gis20km/map_gis20km_to_oQU240wLI_esmfaave.20240919.nc</map>
<map name="GLC2OCN_FMAPNAME">cpl/gridmaps/mpas.gis20km/map_gis20km_to_oQU240wLI_esmfaave.20240919.nc</map>
Expand All @@ -6126,7 +6126,7 @@
<gridmap glc_grid="mpas.gis20km" ocn_grid="IcoswISC30E3r5">
<map name="OCN2GLC_SHELF_FMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5_to_gis20km_esmfaave.20240403.nc</map>
<map name="OCN2GLC_SHELF_SMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5_to_gis20km_esmfbilin.20240403.nc</map>
<map name="OCN2GLC_TF_SMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5_to_gis20km_deeperThan300m.esmfneareststod.20240422.nc</map>
<map name="OCN2GLC_TF_SMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5_to_gis20km_esmfbilin.20240403.nc</map>
<map name="GLC2ICE_FMAPNAME">cpl/gridmaps/mpas.gis20km/map_gis20km_to_IcoswISC30E3r5_esmfaave.20240403.nc</map>
<map name="GLC2ICE_SMAPNAME">cpl/gridmaps/mpas.gis20km/map_gis20km_to_IcoswISC30E3r5_esmfaave.20240403.nc</map>
<map name="GLC2OCN_FMAPNAME">cpl/gridmaps/mpas.gis20km/map_gis20km_to_IcoswISC30E3r5_esmfaave.20240403.nc</map>
Expand Down Expand Up @@ -6170,25 +6170,31 @@
<gridmap glc_grid="mpas.gis4to40km" ocn_grid="oQU240wLI">
<map name="OCN2GLC_SHELF_FMAPNAME">cpl/gridmaps/oQU240wLI/map_oQU240wLI_to_gis4to40_esmfaave.20250303.nc</map>
<map name="OCN2GLC_SHELF_SMAPNAME">cpl/gridmaps/oQU240wLI/map_oQU240wLI_to_gis4to40_esmfbilin.20250303.nc</map>
<map name="OCN2GLC_TF_SMAPNAME">cpl/gridmaps/oQU240wLI/map_oQU240wLI_to_gis4to40_esmfaave.20250303.nc</map>
<!-- due to a known issue with ocean extrapolation in MALI, as of 2025-04-04 it is necessary to use a mapping file with
extrapolation included for OCN2GLC_TF_SMAPNAME. After that is fixed, this file should be switched to the
Copy link
Member

Choose a reason for hiding this comment

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

What does it mean to include extrapolation in the map?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Including extrapolation in the map is done with the --extrap_method nearestidavg argument to ESMF_RegridWeightGen/ncremap.

Excluding extrapolation is done with --extrap_method none.

version WITHOUT extrapolation: map_oQU240wLI-nomask_to_gis4to40_esmfbilin.20250403.nc -->
<map name="OCN2GLC_TF_SMAPNAME">cpl/gridmaps/oQU240wLI/map_oQU240wLI_to_gis4to40_esmfbilin.20250303.nc</map>
<map name="GLC2ICE_FMAPNAME">cpl/gridmaps/mpas.gis4to40km/map_gis4to40_to_oQU240wLI_esmfaave.20250303.nc</map>
<map name="GLC2ICE_SMAPNAME">cpl/gridmaps/mpas.gis4to40km/map_gis4to40_to_oQU240wLI_esmfaave.20250303.nc</map>
<map name="GLC2OCN_FMAPNAME">cpl/gridmaps/mpas.gis4to40km/map_gis4to40_to_oQU240wLI_esmfaave.20250303.nc</map>
<map name="GLC2OCN_SMAPNAME">cpl/gridmaps/mpas.gis4to40km/map_gis4to40_to_oQU240wLI_esmfaave.20250303.nc</map>
<map name="GLC2OCN_LIQ_RMAPNAME">cpl/gridmaps/mpas.gis4to40km/map_gis4to40_to_oQU240wLI_nn.20250303.nc</map>
<map name="GLC2OCN_ICE_RMAPNAME">cpl/gridmaps/mpas.gis4to40km/map_gis4to40_to_oQU240wLI_nn.20250303.nc</map>
<map name="GLC2OCN_ICE_RMAPNAME">cpl/gridmaps/mpas.gis4to40km/map_gis4to40_to_oQU240wLI-nomask_nn.20250403.nc</map>
Copy link
Member

Choose a reason for hiding this comment

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

Instead of "nn" should it be "cstmnn" because it was made with a custom tool?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Seems reasonable to me. @jonbob , what do you think?

Copy link
Contributor

Choose a reason for hiding this comment

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

I think that's OK -- it's not generated by the smoothing code where we have generally added that label, as well as the amount of smoothing. But those files were made from an old cess code that was modified to work for us. When we make both files, smoothed and the nearest-neighbor one the smoothing is based on, we've historically left one as "nn" and the other as "rXXXeXXX.cstmnn". But I'm happy to change that if it's preferable

Copy link
Member

Choose a reason for hiding this comment

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

Its fine. Is this code in a repo somewhere?

Copy link
Contributor

Choose a reason for hiding this comment

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

It's a modified version of a cesm/cime tool, but we're working on replacing it instead of tracking it. I'm happy to change the mapping filenames if that better fits the naming convention

Copy link
Contributor

Choose a reason for hiding this comment

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

@rljacob -- I think the names of these files is the only thing holding up this PR. If you prefer "cstmnn" I'm happy to change them

Copy link
Member

Choose a reason for hiding this comment

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

No you can leave the names as is.

</gridmap>

<gridmap glc_grid="mpas.gis4to40km" ocn_grid="IcoswISC30E3r5">
<map name="OCN2GLC_SHELF_FMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5_to_gis4to40_esmfaave.20250218.nc</map>
<map name="OCN2GLC_SHELF_SMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5_to_gis4to40_esmfbilin.20250218.nc</map>
<map name="OCN2GLC_TF_SMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5_to_gis4to40_esmfaave.20250218.nc</map>
<!-- due to a known issue with ocean extrapolation in MALI, as of 2025-04-04 it is necessary to use a mapping file with
extrapolation includedi for OCN2GLC_TF_SMAPNAME. After that is fixed, this file should be switched to the
version WITHOUT extrapolation: map_IcoswISC30E3r5-nomask_to_gis4to40_esmfbilin.20250403.nc -->
<map name="OCN2GLC_TF_SMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5_to_gis4to40_esmfbilin.20250218.nc</map>
<map name="GLC2ICE_FMAPNAME">cpl/gridmaps/mpas.gis4to40km/map_gis4to40_to_IcoswISC30E3r5_esmfaave.20250218.nc</map>
<map name="GLC2ICE_SMAPNAME">cpl/gridmaps/mpas.gis4to40km/map_gis4to40_to_IcoswISC30E3r5_esmfaave.20250218.nc</map>
<map name="GLC2OCN_FMAPNAME">cpl/gridmaps/mpas.gis4to40km/map_gis4to40_to_IcoswISC30E3r5_esmfaave.20250218.nc</map>
<map name="GLC2OCN_SMAPNAME">cpl/gridmaps/mpas.gis4to40km/map_gis4to40_to_IcoswISC30E3r5_esmfaave.20250218.nc</map>
<map name="GLC2OCN_LIQ_RMAPNAME">cpl/gridmaps/mpas.gis4to40km/map_gis4to40_to_IcoswISC30E3r5_nn.20250218.nc</map>
<map name="GLC2OCN_ICE_RMAPNAME">cpl/gridmaps/mpas.gis4to40km/map_gis4to40_to_IcoswISC30E3r5_nn.20250218.nc</map>
<map name="GLC2OCN_ICE_RMAPNAME">cpl/gridmaps/mpas.gis4to40km/map_gis4to40_to_IcoswISC30E3r5-nomask_nn.20250403.nc</map>
</gridmap>

<!-- ==================== -->
Expand Down Expand Up @@ -6284,13 +6290,16 @@
<gridmap glc_grid="mpas.gis1to10kmR2" ocn_grid="IcoswISC30E3r5">
<map name="OCN2GLC_SHELF_FMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5_to_gis1to10kmR2_esmfaave.20240403.nc</map>
<map name="OCN2GLC_SHELF_SMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5_to_gis1to10kmR2_esmfbilin.20240403.nc</map>
<map name="OCN2GLC_TF_SMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5_to_gis1to10kmR2_deeperThan300m.esmfneareststod.20240820.nc</map>
<!-- due to the "ocean gutter" on mpas.gis1to10kmR2 being very narrow, it is necessary to use a mapping file with
extrapolation included for OCN2GLC_TF_SMAPNAME. Switching to a mapping file without extrapolation would require a new
GLC mesh with an ocean gutter that has sufficient overlap with IcoswISC30E3r5. -->
<map name="OCN2GLC_TF_SMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5_to_gis1to10kmR2_esmfbilin.20240403.nc</map>
<map name="GLC2ICE_FMAPNAME">cpl/gridmaps/mpas.gis1to10km/map_gis1to10kmR2_to_IcoswISC30E3r5_esmfaave.20240403.nc</map>
<map name="GLC2ICE_SMAPNAME">cpl/gridmaps/mpas.gis1to10km/map_gis1to10kmR2_to_IcoswISC30E3r5_esmfaave.20240403.nc</map>
<map name="GLC2OCN_FMAPNAME">cpl/gridmaps/mpas.gis1to10km/map_gis1to10kmR2_to_IcoswISC30E3r5_esmfaave.20240403.nc</map>
<map name="GLC2OCN_SMAPNAME">cpl/gridmaps/mpas.gis1to10km/map_gis1to10kmR2_to_IcoswISC30E3r5_esmfaave.20240403.nc</map>
<map name="GLC2OCN_LIQ_RMAPNAME">cpl/gridmaps/mpas.gis1to10km/map_gis1to10kmR2_to_IcoswISC30E3r5_nn.20250326.nc</map>
<map name="GLC2OCN_ICE_RMAPNAME">cpl/gridmaps/mpas.gis1to10km/map_gis1to10kmR2_to_IcoswISC30E3r5_nn.20250326.nc</map>
<map name="GLC2OCN_ICE_RMAPNAME">cpl/gridmaps/mpas.gis1to10km/map_gis1to10kmR2_to_IcoswISC30E3r5-nomask_nn.20250403.nc</map>
</gridmap>

<!-- ==================== -->
Expand Down Expand Up @@ -6343,23 +6352,25 @@
<gridmap glc_grid="mpas.ais8to30km" ocn_grid="oQU240wLI">
<map name="OCN2GLC_SHELF_FMAPNAME">cpl/gridmaps/oQU240wLI/map_oQU240wLI-nomask_to_ais8to30_esmfaave.20240701.nc</map>
<map name="OCN2GLC_SHELF_SMAPNAME">cpl/gridmaps/oQU240wLI/map_oQU240wLI-nomask_to_ais8to30_esmfbilin.20240701.nc</map>
<map name="OCN2GLC_TF_SMAPNAME">cpl/gridmaps/oQU240wLI/map_oQU240wLI-nomask_to_ais8to30_esmfbilin.20250403.nc</map>
<map name="GLC2ICE_FMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_oQU240wLI-nomask_esmfaave.20240701.nc</map>
<map name="GLC2ICE_SMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_oQU240wLI-nomask_esmfbilin.20240701.nc</map>
<map name="GLC2OCN_FMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_oQU240wLI-nomask_esmfaave.20240701.nc</map>
<map name="GLC2OCN_SMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_oQU240wLI-nomask_esmfbilin.20240701.nc</map>
<map name="GLC2OCN_LIQ_RMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_oQU240wLI-nomask_esmfnearestdtos.20240701.nc</map>
<map name="GLC2OCN_ICE_RMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_oQU240wLI_esmfnearestdtos.20240701.nc</map>
<map name="GLC2OCN_LIQ_RMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_oQU240wLI_nn.20250218.nc</map>
<map name="GLC2OCN_ICE_RMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_oQU240wLI-nomask_nn.20250218.nc</map>
</gridmap>

<gridmap glc_grid="mpas.ais8to30km" ocn_grid="IcoswISC30E3r5">
<map name="OCN2GLC_SHELF_FMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5-nomask_to_ais8to30_esmfaave.20240701.nc</map>
<map name="OCN2GLC_SHELF_SMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5-nomask_to_ais8to30_esmfbilin.20240701.nc</map>
<map name="OCN2GLC_TF_SMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5-nomask_to_ais8to30_esmfbilin.20250403.nc</map>
<map name="GLC2ICE_FMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_IcoswISC30E3r5-nomask_esmfaave.20240701.nc</map>
<map name="GLC2ICE_SMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_IcoswISC30E3r5-nomask_esmfbilin.20240701.nc</map>
<map name="GLC2OCN_FMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_IcoswISC30E3r5-nomask_esmfaave.20240701.nc</map>
<map name="GLC2OCN_SMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_IcoswISC30E3r5-nomask_esmfbilin.20240701.nc</map>
<map name="GLC2OCN_LIQ_RMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_IcoswISC30E3r5-nomask_esmfnearestdtos.20240701.nc</map>
<map name="GLC2OCN_ICE_RMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_IcoswISC30E3r5_esmfnearestdtos.20240701.nc</map>
<map name="GLC2OCN_LIQ_RMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_IcoswISC30E3r5_nn.20250403.nc</map>
<map name="GLC2OCN_ICE_RMAPNAME">cpl/gridmaps/mpas.ais8to30km/map_ais8to30_to_IcoswISC30E3r5-nomask_nn.20250321.nc</map>
</gridmap>

<!-- ==================== -->
Expand All @@ -6383,23 +6394,25 @@
<gridmap glc_grid="mpas.ais4to20km" ocn_grid="IcoswISC30E3r5">
<map name="OCN2GLC_SHELF_FMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5-nomask_to_ais4to20_esmfaave.20240701.nc</map>
<map name="OCN2GLC_SHELF_SMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5-nomask_to_ais4to20_esmfbilin.20240701.nc</map>
<map name="OCN2GLC_TF_SMAPNAME">cpl/gridmaps/IcoswISC30E3r5/map_IcoswISC30E3r5-nomask_to_ais4to20_esmfbilin.20250403.nc</map>
<map name="GLC2ICE_FMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_IcoswISC30E3r5-nomask_esmfaave.20240701.nc</map>
<map name="GLC2ICE_SMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_IcoswISC30E3r5-nomask_esmfbilin.20240701.nc</map>
<map name="GLC2OCN_FMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_IcoswISC30E3r5-nomask_esmfaave.20240701.nc</map>
<map name="GLC2OCN_SMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_IcoswISC30E3r5-nomask_esmfbilin.20240701.nc</map>
<map name="GLC2OCN_LIQ_RMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_IcoswISC30E3r5-nomask_esmfnearestdtos.20240701.nc</map>
<map name="GLC2OCN_ICE_RMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_IcoswISC30E3r5_esmfnearestdtos.20240701.nc</map>
<map name="GLC2OCN_LIQ_RMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_IcoswISC30E3r5_nn.20250403.nc</map>
<map name="GLC2OCN_ICE_RMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_IcoswISC30E3r5-nomask_nn.20250403.nc</map>
</gridmap>

<gridmap glc_grid="mpas.ais4to20km" ocn_grid="SOwISC12to30E3r4">
<map name="OCN2GLC_SHELF_FMAPNAME">cpl/gridmaps/SOwISC12to30E3r4/map_SOwISC12to30E3r4-nomask_to_ais4to20_esmfaave.20250122.nc</map>
<map name="OCN2GLC_SHELF_SMAPNAME">cpl/gridmaps/SOwISC12to30E3r4/map_SOwISC12to30E3r4-nomask_to_ais4to20_esmfbilin.20250122.nc</map>
<map name="OCN2GLC_TF_SMAPNAME">cpl/gridmaps/SOwISC12to30E3r4/map_SOwISC12to30E3r4-nomask_to_ais4to20_esmfbilin.20250415.nc</map>
<map name="GLC2ICE_FMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_SOwISC12to30E3r4-nomask_esmfaave.20250122.nc</map>
<map name="GLC2ICE_SMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_SOwISC12to30E3r4-nomask_esmfbilin.20250122.nc</map>
<map name="GLC2OCN_FMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_SOwISC12to30E3r4-nomask_esmfaave.20250122.nc</map>
<map name="GLC2OCN_SMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_SOwISC12to30E3r4-nomask_esmfbilin.20250122.nc</map>
<map name="GLC2OCN_LIQ_RMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_SOwISC12to30E3r4-nomask_esmfnearestdtos.20250122.nc</map>
<map name="GLC2OCN_ICE_RMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_SOwISC12to30E3r4_esmfnearestdtos.20250122.nc</map>
<map name="GLC2OCN_LIQ_RMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_SOwISC12to30E3r4_nn.20250415.nc</map>
<map name="GLC2OCN_ICE_RMAPNAME">cpl/gridmaps/mpas.ais4to20km/map_ais4to20_to_SOwISC12to30E3r4-nomask_nn.20250415.nc</map>
</gridmap>


Expand Down
5 changes: 4 additions & 1 deletion cime_config/tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -300,7 +300,10 @@
"SMS_D_Ld1.T62_oQU240.GMPAS-IAF.mpaso-freshwater_tracers",
"ERS_Ld5_D.T62_oQU240.GMPAS-IAF.mpaso-conservation_check",
"ERS_Ld5_PS.ne30pg2_r05_IcoswISC30E3r5.CRYO1850-DISMF.mpaso-scaled_dib_dismf",
"ERS_Ld5.TL319_oQU240wLI_gis20.MPAS_LISIO_JRA1p5.mpaso-ocn_glc_tf_coupling",
# OCN/GLC 3d TF coupling GIS test:
Copy link
Member

Choose a reason for hiding this comment

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

should we run this e3sm_ocnice_stealth_features suite somewhere on a regular basis?

Copy link
Contributor

Choose a reason for hiding this comment

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

@rljacob -- it runs every night on gcp12

Copy link
Member

Choose a reason for hiding this comment

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

Oh I see. Its included in extra coverage.

"ERS_Ld5.TL319_oQU240wLI_gis4to40.MPAS_FOLISIO_JRA1p5.mpaso-jra_1958",
Copy link
Contributor

Choose a reason for hiding this comment

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

@matthewhoffman -- it doesn't look like this stealth test is actually turning the feature on?

# OCN/GLC 3d TF coupling AIS test:
"ERS_Ld5.TL319_oQU240wLI_ais8to30.MPAS_FOLISIO_JRA1p5.mpaso-jra_1958",
"SMS_PS.ne30pg2_r05_IcoswISC30E3r5.WCYCL1850.mpaso-frazil_ice_porosity",
)
},
Expand Down
35 changes: 31 additions & 4 deletions components/mpas-albany-landice/bld/build-namelist
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,10 @@ OPTIONS
-ninst_glc NINST_GLC for this case
-mali_prognostic_mode whether MALI should be prognostic, static, or data
Options are: FALSE, TRUE
-glc_nzoc number of z-ocean classes [0 | 4 | 30]
-ocn_glc_ismf_coupling methods for ocn/glc ice-shelf melt flux coupling
['none' | 'data_mpaso' | 'data_mali' | 'internal_mpaso' |
'tf' | 'coupler']
NOTE: The precedence for setting the values of namelist variables is (highest to lowest):
1. namelist values set by specific command-line options, i.e. (none right now)
Expand Down Expand Up @@ -100,6 +104,8 @@ my %opts = ( help => 0,
ntasks_glc => 0,
ninst_glc => 0,
mali_prognostic_mode => undef,
glc_nzoc => 0,
ocn_glc_ismf_coupling => undef,
);

GetOptions(
Expand All @@ -119,6 +125,8 @@ GetOptions(
"ntasks_glc=i" => \$opts{'ntasks_glc'},
"ninst_glc=i" => \$opts{'ninst_glc'},
"mali_prognostic_mode=s" => \$opts{'mali_prognostic_mode'},
"glc_nzoc=i" => \$opts{'glc_nzoc'},
"ocn_glc_ismf_coupling=s" => \$opts{'ocn_glc_ismf_coupling'},

) or usage();

Expand Down Expand Up @@ -154,6 +162,8 @@ $cfgdir = $opts{'cfg_dir'};
my $NINST_GLC = $opts{'ninst_glc'};
my $NTASKS_GLC = $opts{'ntasks_glc'};
my $MALI_PROGNOSTIC_MODE = uc($opts{'mali_prognostic_mode'});
my $GLC_NZOC = $opts{'glc_nzoc'};
my $OCN_GLC_ISMF_COUPLING = $opts{'ocn_glc_ismf_coupling'};

my $CIMEROOT;
if ( defined $opts{'cimeroot'} ) {
Expand Down Expand Up @@ -393,6 +403,7 @@ my $START_TOD = "$xmlvars{'START_TOD'}";
my $RUN_REFDATE = "$xmlvars{'RUN_REFDATE'}";
my $CONTINUE_RUN = "$xmlvars{'CONTINUE_RUN'}";
my $MALI_USE_ALBANY = "$xmlvars{'MALI_USE_ALBANY'}";
my $GLC_NZOC = "$xmlvars{'GLC_NZOC'}";

my $output_r = "./${CASE}.mali.r";
my $output_h = "./${CASE}.mali.h";
Expand All @@ -412,6 +423,8 @@ my $ntasks = $NTASKS_GLC / $NINST_GLC;
print "MALI build-namelist: glc_grid is $GLC_GRID \n";
print "MALI build-namelist: MALI_PROGNOSTIC_MODE is $MALI_PROGNOSTIC_MODE \n";
print "MALI build-namelist: MALI_USE_ALBANY is $MALI_USE_ALBANY \n";
print "MALI build-namelist: GLC_NZOC is $GLC_NZOC \n";
print "MALI build-namelist: OCN_GLC_ISMF_COUPLING is $OCN_GLC_ISMF_COUPLING \n";

(-d $DIN_LOC_ROOT) or mkdir $DIN_LOC_ROOT;
if ($print>=2) { print "CESM inputdata root directory: $DIN_LOC_ROOT$eol"; }
Expand Down Expand Up @@ -540,7 +553,15 @@ add_default($nl, 'config_max_water_fraction');
#################################

if ($MALI_PROGNOSTIC_MODE eq 'PROGNOSTIC') {
add_default($nl, 'config_basal_mass_bal_float');
if ($OCN_GLC_ISMF_COUPLING eq 'tf') {
add_default($nl, 'config_basal_mass_bal_float');
} elsif ($OCN_GLC_ISMF_COUPLING eq 'data_mali') {
add_default($nl, 'config_basal_mass_bal_float', 'val'=>"file");
} elsif ($OCN_GLC_ISMF_COUPLING eq 'coupler') {
add_default($nl, 'config_basal_mass_bal_float', 'val'=>"file");
} else {
add_default($nl, 'config_basal_mass_bal_float', 'val'=>"none");
}
} else {
add_default($nl, 'config_basal_mass_bal_float', 'val'=>"none");
}
Expand All @@ -561,19 +582,24 @@ add_default($nl, 'config_temperature_profile_variability_amplitude');
add_default($nl, 'config_temperature_profile_variability_period');
add_default($nl, 'config_temperature_profile_variability_phase');
add_default($nl, 'config_temperature_profile_GL_depth_fraction');
if ($MALI_PROGNOSTIC_MODE eq 'PROGNOSTIC') {
if (($MALI_PROGNOSTIC_MODE eq 'PROGNOSTIC') and ($GLC_NZOC gt 0)) {
add_default($nl, 'config_front_mass_bal_grounded');
add_default($nl, 'config_use_3d_thermal_forcing_for_face_melt');
} else {
add_default($nl, 'config_front_mass_bal_grounded', 'val'=>"none");
add_default($nl, 'config_use_3d_thermal_forcing_for_face_melt', 'val'=>".false.");
}
add_default($nl, 'config_use_3d_thermal_forcing_for_face_melt');
add_default($nl, 'config_beta_ocean_thermal_forcing');
add_default($nl, 'config_add_ocean_thermal_forcing');
add_default($nl, 'config_alpha_subglacial_discharge');
add_default($nl, 'config_subglacial_discharge_coefficient');
add_default($nl, 'config_subglacial_discharge_intercept');
add_default($nl, 'config_uniform_face_melt_rate');
add_default($nl, 'config_ocean_data_extrapolation');
if (($MALI_PROGNOSTIC_MODE eq 'PROGNOSTIC') and ($GLC_NZOC gt 0)) {
add_default($nl, 'config_ocean_data_extrapolation');
} else {
add_default($nl, 'config_ocean_data_extrapolation', 'val'=>".false.");
}
add_default($nl, 'config_ocean_data_extrap_ncells_extra');
add_default($nl, 'config_invalid_value_TF');
add_default($nl, 'config_weight_value_cell');
Expand Down Expand Up @@ -647,6 +673,7 @@ add_default($nl, 'config_year_digits');
add_default($nl, 'config_output_external_velocity_solver_data');
add_default($nl, 'config_write_albany_ascii_mesh');
add_default($nl, 'config_create_all_logs_in_e3sm');
add_default($nl, 'config_nISMIP6OceanLayers', 'val'=>"$GLC_NZOC");

#################################
# Namelist group: decomposition #
Expand Down
1 change: 1 addition & 0 deletions components/mpas-albany-landice/bld/build-namelist-section
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,7 @@ add_default($nl, 'config_year_digits');
add_default($nl, 'config_output_external_velocity_solver_data');
add_default($nl, 'config_write_albany_ascii_mesh');
add_default($nl, 'config_create_all_logs_in_e3sm');
add_default($nl, 'config_nISMIP6OceanLayers', 'val'=>"$GLC_NZOC");

#################################
# Namelist group: decomposition #
Expand Down
Loading