diff --git a/.gitmodules b/.gitmodules index df2418f..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_260713 + fxtag = dev/ncar_260909 fxrequired = AlwaysRequired [submodule "stochastic_physics"] diff --git a/MOM6 b/MOM6 index fb10e56..3018793 160000 --- a/MOM6 +++ b/MOM6 @@ -1 +1 @@ -Subproject commit fb10e568e4980bc6a7e8a5c0362c7e51ee90ba27 +Subproject commit 301879336f6ab0648251c3ea50fa126ca1ef6707 diff --git a/param_templates/MOM_input.yaml b/param_templates/MOM_input.yaml index 9f0862d..4d8921e 100644 --- a/param_templates/MOM_input.yaml +++ b/param_templates/MOM_input.yaml @@ -1811,6 +1811,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 @@ -2536,6 +2559,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 @@ -3429,6 +3460,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_OVERRIDE_POINTER: description: | "File containing tracer IC filenames overriding AGE_IC_FILE." @@ -4006,7 +4048,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 2e72117..7f6feaa 100644 --- a/param_templates/json/MOM_input.json +++ b/param_templates/json/MOM_input.json @@ -1423,6 +1423,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", @@ -2047,6 +2065,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", @@ -2798,6 +2822,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_OVERRIDE_POINTER": { "description": "\"File containing tracer IC filenames overriding AGE_IC_FILE.\"\n", "datatype": "string", @@ -3311,7 +3343,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",