Skip to content

fix(templates): Use instance-suffixed MASKTABLE for AUTO_MASKTABLE runs - #348

Open
johnpaulalex wants to merge 1 commit into
ESCOMP:mainfrom
johnpaulalex:fix_auto_mask_table_multi_instance
Open

fix(templates): Use instance-suffixed MASKTABLE for AUTO_MASKTABLE runs#348
johnpaulalex wants to merge 1 commit into
ESCOMP:mainfrom
johnpaulalex:fix_auto_mask_table_multi_instance

Conversation

@johnpaulalex

@johnpaulalex johnpaulalex commented Sep 6, 2026

Copy link
Copy Markdown

Changes default MASKTABLE for auto_masktable runs to be instance-suffixed, resolving file collisions for multi-instance runs (Issue #269).

Main changes:

  • Adds MASKTABLE runtime parameter definition into param_templates/MOM_input.yaml, superseding the old fortran defaults. The non-AUTO_MASKTABLE default is effectively unchanged (still a single file shared across all instances), while the AUTO_MASKTABLE case is now defaulted to have an instance suffix, which fixes the file writing collisions.
  • Adds unit tests in tests/check_buildnml.py verifying MASKTABLE expansion across single and multi-instance modes.
  • Adds two multi-instance SMS_C2 system tests (with AUTO_MASKTABLE on and off) to cime_config/testdefs/testlist_mom.xml. Note the non-auto-masktable version won't find the static masktable file so it runs in unmasked mode.

This PR relies on NOAA-GFDL/MOM6#1181 to actually use the MASKTABLE parameter in the AUTO_MASKTABLE case.

Note the PRs can be submitted in either order:

  • If this PR is submitted first, it will set the MASKTABLE parameter for AUTO_MASKTABLE runs, but MOM6 won't read it yet.
  • If the MOM6 PR is submitted first, it will listen for the MASKTABLE parameter for standalone AUTO_MASKTABLE runs, but CESM won't set it yet.

Resolves #269 (once CESM points to a version of MOM6 with its PR live as well)

Testing:

  • tests/check_default_params.py: PASS (yaml translates to json correctly)
  • tests/check_buildnml.py: PASS
  • aux_mom.derecho (System tests): both new C2 tests passed, see /glade/derecho/scratch/jpalex/cs.status.issue269_v4. (I also ran the rest of aux_mom, which ran fine but didn't do any baseline diffing - please lmk if there's an incantation to do that)

Google Antigravity was used to write the code and tests, followed by human-guided verification.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

MOM_auto_mask_table problem for multi-instance cases

1 participant