From 4638c5df76d968f4ecfca990e4ced5cf353518e1 Mon Sep 17 00:00:00 2001 From: alperaltuntas Date: Fri, 4 Sep 2026 16:17:55 -0600 Subject: [PATCH 1/3] Changes for alpha10a MOM6 tag: Core MOM6 tag bumped up to latest dev/ncar. MOM_input: - ALLOW_GLC_RUNOFF_DIAGNOSTICS set to true. Needed due to latest main merge. - REMAP_AFTER_INITIALIZATION set to False for hybrid runs. - RESTART_CHECKSUMS_REQUIRED set to False for ERP tests. --- .gitmodules | 2 +- MOM6 | 2 +- param_templates/MOM_input.yaml | 23 ++++++++++++++++++++++- param_templates/json/MOM_input.json | 19 ++++++++++++++++++- 4 files changed, 42 insertions(+), 4 deletions(-) diff --git a/.gitmodules b/.gitmodules index df2418f..374ac37 100644 --- a/.gitmodules +++ b/.gitmodules @@ -2,7 +2,7 @@ path = MOM6 url = https://github.com/NCAR/MOM6.git fxDONOTUSEurl = https://github.com/NCAR/MOM6.git - fxtag = dev/ncar_260713 + fxtag = dev/ncar_260904 fxrequired = AlwaysRequired [submodule "stochastic_physics"] diff --git a/MOM6 b/MOM6 index fb10e56..a3f6634 160000 --- a/MOM6 +++ b/MOM6 @@ -1 +1 @@ -Subproject commit fb10e568e4980bc6a7e8a5c0362c7e51ee90ba27 +Subproject commit a3f6634a69a636431ef2da51e73327b1028ab56b diff --git a/param_templates/MOM_input.yaml b/param_templates/MOM_input.yaml index 83335d6..10a791b 100644 --- a/param_templates/MOM_input.yaml +++ b/param_templates/MOM_input.yaml @@ -2503,6 +2503,14 @@ Global: value: $COMP_ATM == "datm": True # for C and G compsets else: False + ALLOW_GLC_RUNOFF_DIAGNOSTICS: + description: | + "[Boolean] default = False + If true, makes available diagnostics of separate glacier + runoff fluxes as seen by MOM6." + datatype: logical + units: Boolean + value: True MAX_DELTA_SRESTORE: description: | "[PSU or g kg-1] default = 999.0 @@ -3396,6 +3404,17 @@ Global: value: $RUN_TYPE == "hybrid": = f'./{$RUN_REFCASE}.mom6{$INST_SUFFIX}.r.{$RUN_REFDATE}-{$RUN_REFTOD}.nc' + REMAP_AFTER_INITIALIZATION: + description: | + "[Boolean] default = True + If true, applies regridding and remapping immediately after + initialization so that the state is ALE consistent. This is a + legacy step and should not be needed if the initialization is + consistent with the coordinate mode." + datatype: logical + units: Boolean + value: + $RUN_TYPE == "hybrid": False AGE_IC_FILE: description: | "The file in which the age-tracer initial values can be found, or an empty @@ -3963,7 +3982,9 @@ Global: run with a different mask_table than the current run, in which case the checksums will not match and cause crash. datatype: logical - value: $TEST + value: + $TEST: = $TESTCASE != "ERP" + else: False ENSEMBLE_APPENDIX_PREFIX: description: | "default = '' diff --git a/param_templates/json/MOM_input.json b/param_templates/json/MOM_input.json index dba1d1b..8390374 100644 --- a/param_templates/json/MOM_input.json +++ b/param_templates/json/MOM_input.json @@ -2018,6 +2018,12 @@ "else": false } }, + "ALLOW_GLC_RUNOFF_DIAGNOSTICS": { + "description": "\"[Boolean] default = False\nIf true, makes available diagnostics of separate glacier\nrunoff fluxes as seen by MOM6.\"\n", + "datatype": "logical", + "units": "Boolean", + "value": true + }, "MAX_DELTA_SRESTORE": { "description": "\"[PSU or g kg-1] default = 999.0\nThe maximum salinity difference used in restoring terms.\"\n", "datatype": "real", @@ -2769,6 +2775,14 @@ "$RUN_TYPE == \"hybrid\"": "= f'./{$RUN_REFCASE}.mom6{$INST_SUFFIX}.r.{$RUN_REFDATE}-{$RUN_REFTOD}.nc'" } }, + "REMAP_AFTER_INITIALIZATION": { + "description": "\"[Boolean] default = True\nIf true, applies regridding and remapping immediately after\ninitialization so that the state is ALE consistent. This is a\nlegacy step and should not be needed if the initialization is\nconsistent with the coordinate mode.\"\n", + "datatype": "logical", + "units": "Boolean", + "value": { + "$RUN_TYPE == \"hybrid\"": false + } + }, "AGE_IC_FILE": { "description": "\"The file in which the age-tracer initial values can be found, or an empty\nstring for internal initialization.\"\n", "datatype": "string", @@ -3271,7 +3285,10 @@ "RESTART_CHECKSUMS_REQUIRED": { "description": "\"[Boolean] default = True\nIf true, require the restart checksums to match and error out otherwise. Users\nmay want to avoid this comparison if for example the restarts are made from a\nrun with a different mask_table than the current run, in which case the\nchecksums will not match and cause crash.\n", "datatype": "logical", - "value": "$TEST" + "value": { + "$TEST": "= $TESTCASE != \"ERP\"", + "else": false + } }, "ENSEMBLE_APPENDIX_PREFIX": { "description": "\"default = ''\nThe prefix for the restart file appendix (i.e., ensemble id for ensemble\nruns). If this prefix is found in the restart file name, the appendix is added\nright after the first occurrence of the prefix. If not found, the appendix is\nadded to the end of the file name. This parameter is ignored for non-ensemble runs.\"\n", From 33167ba80700a45d9fa93c7ee42be53668206e6b Mon Sep 17 00:00:00 2001 From: alperaltuntas Date: Mon, 7 Sep 2026 11:05:50 -0600 Subject: [PATCH 2/3] turn on MLE tapering for deep mixed layers --- param_templates/MOM_input.yaml | 23 +++++++++++++++++++++++ param_templates/json/MOM_input.json | 18 ++++++++++++++++++ 2 files changed, 41 insertions(+) diff --git a/param_templates/MOM_input.yaml b/param_templates/MOM_input.yaml index 10a791b..7840f9d 100644 --- a/param_templates/MOM_input.yaml +++ b/param_templates/MOM_input.yaml @@ -1778,6 +1778,29 @@ Global: value: $OCN_GRID in ["tx2_3v2", "tx2_3v3"]: True $OCN_GRID == "tx2_0v1": True + MLE_TAPER_FN_DEPTH: + description: | + "[m] default = 0.0 + Mixed layer (and mixing-layer) depths in the MLE restratification + schemes are replaced by H / (1 + (H/H0)**P) when + P=MLE_TAPER_FN_POWER > 0 and H0=MLE_TAPER_FN_DEPTH > 0." + datatype: real + units: m + value: + $OCN_GRID in ["tx2_3v2", "tx2_3v3"]: 2000.0 + $OCN_GRID == "tx2_0v1": 2000.0 + MLE_TAPER_FN_POWER: + description: | + "[nondim] default = 0 + The power of H/H0 in the MLE mixed-layer depth tapering. + Any positive integer may be used, but even integers are more + efficient to calculate. Very large values may lead to numerical + instabilities." + datatype: integer + units: nondim + value: + $OCN_GRID in ["tx2_3v2", "tx2_3v3"]: 4 + $OCN_GRID == "tx2_0v1": 4 USE_CVMix_CONVECTION: description: | "[Boolean] default = False diff --git a/param_templates/json/MOM_input.json b/param_templates/json/MOM_input.json index 8390374..05a00f4 100644 --- a/param_templates/json/MOM_input.json +++ b/param_templates/json/MOM_input.json @@ -1394,6 +1394,24 @@ "$OCN_GRID == \"tx2_0v1\"": true } }, + "MLE_TAPER_FN_DEPTH": { + "description": "\"[m] default = 0.0\nMixed layer (and mixing-layer) depths in the MLE restratification\nschemes are replaced by H / (1 + (H/H0)**P) when\nP=MLE_TAPER_FN_POWER > 0 and H0=MLE_TAPER_FN_DEPTH > 0.\"\n", + "datatype": "real", + "units": "m", + "value": { + "$OCN_GRID in [\"tx2_3v2\", \"tx2_3v3\"]": 2000.0, + "$OCN_GRID == \"tx2_0v1\"": 2000.0 + } + }, + "MLE_TAPER_FN_POWER": { + "description": "\"[nondim] default = 0\nThe power of H/H0 in the MLE mixed-layer depth tapering.\nAny positive integer may be used, but even integers are more\nefficient to calculate. Very large values may lead to numerical\ninstabilities.\"\n", + "datatype": "integer", + "units": "nondim", + "value": { + "$OCN_GRID in [\"tx2_3v2\", \"tx2_3v3\"]": 4, + "$OCN_GRID == \"tx2_0v1\"": 4 + } + }, "USE_CVMix_CONVECTION": { "description": "\"[Boolean] default = False\nIf true, turns on the enhanced mixing due to convection\nvia CVMix. This scheme increases diapycnal diffs./viscs.\nat statically unstable interfaces. Relevant parameters are\ncontained in the CVMix_CONVECTION% parameter block.\"\n", "datatype": "logical", From 5645b5982ad34cfff3c1f0ce4d3cbe4aa5bc0693 Mon Sep 17 00:00:00 2001 From: alperaltuntas Date: Wed, 9 Sep 2026 10:06:56 -0600 Subject: [PATCH 3/3] bump up core MOM6 to dev/ncar_260909 --- .gitmodules | 2 +- MOM6 | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitmodules b/.gitmodules index 374ac37..f971a02 100644 --- a/.gitmodules +++ b/.gitmodules @@ -2,7 +2,7 @@ path = MOM6 url = https://github.com/NCAR/MOM6.git fxDONOTUSEurl = https://github.com/NCAR/MOM6.git - fxtag = dev/ncar_260904 + fxtag = dev/ncar_260909 fxrequired = AlwaysRequired [submodule "stochastic_physics"] diff --git a/MOM6 b/MOM6 index a3f6634..3018793 160000 --- a/MOM6 +++ b/MOM6 @@ -1 +1 @@ -Subproject commit a3f6634a69a636431ef2da51e73327b1028ab56b +Subproject commit 301879336f6ab0648251c3ea50fa126ca1ef6707