-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathMOM_input
626 lines (578 loc) · 44.8 KB
/
MOM_input
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
! This file was written by the model and records the non-default parameters used at run-time.
! === module MOM ===
DIABATIC_FIRST = True ! [Boolean] default = False
! If true, apply diabatic and thermodynamic processes, including buoyancy
! forcing and mass gain or loss, before stepping the dynamics forward.
USE_REGRIDDING = True ! [Boolean] default = False
! If True, use the ALE algorithm (regridding/remapping). If False, use the
! layered isopycnal algorithm.
THICKNESSDIFFUSE = True ! [Boolean] default = False
! If true, isopycnal surfaces are diffused with a Laplacian coefficient of KHTH.
THICKNESSDIFFUSE_FIRST = True ! [Boolean] default = False
! If true, do thickness diffusion or interface height smoothing before dynamics.
! This is only used if THICKNESSDIFFUSE or APPLY_INTERFACE_FILTER is true.
DT = 1800.0 ! [s]
! The (baroclinic) dynamics time step. The time-step that is actually used will
! be an integer fraction of the forcing time-step (DT_FORCING in ocean-only mode
! or the coupling timestep in coupled mode.)
DT_THERM = 3600.0 ! [s] default = 1800.0
! The thermodynamic and tracer advection time step. Ideally DT_THERM should be
! an integer multiple of DT and less than the forcing or coupling time-step,
! unless THERMO_SPANS_COUPLING is true, in which case DT_THERM can be an integer
! multiple of the coupling timestep. By default DT_THERM is set to DT.
HFREEZE = 10.0 ! [m] default = -1.0
! If HFREEZE > 0, melt potential will be computed. The actual depth over which
! melt potential is computed will be min(HFREEZE, OBLD), where OBLD is the
! boundary layer depth. If HFREEZE <= 0 (default), melt potential will not be
! computed.
DTBT_RESET_PERIOD = 0.0 ! [s] default = 3600.0
! The period between recalculations of DTBT (if DTBT <= 0). If DTBT_RESET_PERIOD
! is negative, DTBT is set based only on information available at
! initialization. If 0, DTBT will be set every dynamics time step. The default
! is set by DT_THERM. This is only used if SPLIT is true.
FRAZIL = True ! [Boolean] default = False
! If true, water freezes if it gets too cold, and the accumulated heat deficit
! is returned in the surface state. FRAZIL is only used if
! ENABLE_THERMODYNAMICS is true.
BOUND_SALINITY = True ! [Boolean] default = False
! If true, limit salinity to being positive. (The sea-ice model may ask for more
! salt than is available and drive the salinity negative otherwise.)
C_P = 3992.0 ! [J kg-1 K-1] default = 3991.86795711963
! The heat capacity of sea water, approximated as a constant. This is only used
! if ENABLE_THERMODYNAMICS is true. The default value is from the TEOS-10
! definition of conservative temperature.
CHECK_BAD_SURFACE_VALS = True ! [Boolean] default = False
! If true, check the surface state for ridiculous values.
BAD_VAL_SSH_MAX = 50.0 ! [m] default = 20.0
! The value of SSH above which a bad value message is triggered, if
! CHECK_BAD_SURFACE_VALS is true.
BAD_VAL_SSS_MAX = 75.0 ! [PPT] default = 45.0
! The value of SSS above which a bad value message is triggered, if
! CHECK_BAD_SURFACE_VALS is true.
BAD_VAL_SST_MAX = 55.0 ! [deg C] default = 45.0
! The value of SST above which a bad value message is triggered, if
! CHECK_BAD_SURFACE_VALS is true.
BAD_VAL_SST_MIN = -3.0 ! [deg C] default = -2.1
! The value of SST below which a bad value message is triggered, if
! CHECK_BAD_SURFACE_VALS is true.
SAVE_INITIAL_CONDS = True ! [Boolean] default = False
! If true, write the initial conditions to a file given by IC_OUTPUT_FILE.
! === module MOM_domains ===
TRIPOLAR_N = True ! [Boolean] default = False
! Use tripolar connectivity at the northern edge of the domain. With
! TRIPOLAR_N, NIGLOBAL must be even.
NIGLOBAL = 360 !
! The total number of thickness grid points in the x-direction in the physical
! domain. With STATIC_MEMORY_ this is set in MOM_memory.h at compile time.
NJGLOBAL = 300 !
! The total number of thickness grid points in the y-direction in the physical
! domain. With STATIC_MEMORY_ this is set in MOM_memory.h at compile time.
! === module MOM_fixed_initialization ===
INPUTDIR = "./INPUT/" ! default = "."
! The directory in which input files are found.
! === module MOM_grid_init ===
GRID_CONFIG = "mosaic" !
! A character string that determines the method for defining the horizontal
! grid. Current options are:
! mosaic - read the grid from a mosaic (supergrid)
! file set by GRID_FILE.
! cartesian - use a (flat) Cartesian grid.
! spherical - use a simple spherical grid.
! mercator - use a Mercator spherical grid.
GRID_FILE = "ocean_hgrid.nc" !
! Name of the file from which to read horizontal grid data.
TOPO_CONFIG = "file" !
! This specifies how bathymetry is specified:
! file - read bathymetric information from the file
! specified by (TOPO_FILE).
! flat - flat bottom set to MAXIMUM_DEPTH.
! bowl - an analytically specified bowl-shaped basin
! ranging between MAXIMUM_DEPTH and MINIMUM_DEPTH.
! spoon - a similar shape to 'bowl', but with an vertical
! wall at the southern face.
! halfpipe - a zonally uniform channel with a half-sine
! profile in the meridional direction.
! bbuilder - build topography from list of functions.
! benchmark - use the benchmark test case topography.
! Neverworld - use the Neverworld test case topography.
! DOME - use a slope and channel configuration for the
! DOME sill-overflow test case.
! ISOMIP - use a slope and channel configuration for the
! ISOMIP test case.
! DOME2D - use a shelf and slope configuration for the
! DOME2D gravity current/overflow test case.
! Kelvin - flat but with rotated land mask.
! seamount - Gaussian bump for spontaneous motion test case.
! dumbbell - Sloshing channel with reservoirs on both ends.
! shelfwave - exponential slope for shelfwave test case.
! Phillips - ACC-like idealized topography used in the Phillips config.
! dense - Denmark Strait-like dense water formation and overflow.
! USER - call a user modified routine.
MINIMUM_DEPTH = 0.5 ! [m] default = 0.0
! If MASKING_DEPTH is unspecified, then anything shallower than MINIMUM_DEPTH is
! assumed to be land and all fluxes are masked out. If MASKING_DEPTH is
! specified, then all depths shallower than MINIMUM_DEPTH but deeper than
! MASKING_DEPTH are rounded to MINIMUM_DEPTH.
MAXIMUM_DEPTH = 6000.0 ! [m]
! The maximum depth of the ocean.
! === module MOM_verticalGrid ===
! Parameters providing information about the vertical grid.
NK = 50 ! [nondim]
! The number of model layers.
! === module MOM_EOS ===
DTFREEZE_DP = -7.75E-08 ! [deg C Pa-1] default = 0.0
! When TFREEZE_FORM=LINEAR, this is the derivative of the freezing potential
! temperature with pressure.
EPS_OMESH = 1e-13
! "default = 0.0001
! An float which sets the allowable error (in degrees) between
! grid angle defined in the ESMF mesh file used by CMEPS
! and the ocean_hgrid file used by mom
! === module MOM_tracer_flow_control ===
USE_IDEAL_AGE_TRACER = True ! [Boolean] default = False
! If true, use the ideal_age_example tracer package.
! === module ideal_age_example ===
! === module MOM_coord_initialization ===
REGRIDDING_COORDINATE_MODE = "ZSTAR" ! default = "LAYER"
! Coordinate mode for vertical regridding. Choose among the following
! possibilities: LAYER - Isopycnal or stacked shallow water layers
! ZSTAR, Z* - stretched geopotential z*
! SIGMA_SHELF_ZSTAR - stretched geopotential z* ignoring shelf
! SIGMA - terrain following coordinates
! RHO - continuous isopycnal
! HYCOM1 - HyCOM-like hybrid coordinate
! HYBGEN - Hybrid coordinate from the Hycom hybgen code
! SLIGHT - stretched coordinates above continuous isopycnal
! ADAPTIVE - optimize for smooth neutral density surfaces
ALE_COORDINATE_CONFIG = "FILE:ocean_vgrid.nc,interfaces=zeta" ! default = "UNIFORM"
! Determines how to specify the coordinate resolution. Valid options are:
! PARAM - use the vector-parameter ALE_RESOLUTION
! UNIFORM[:N] - uniformly distributed
! FILE:string - read from a file. The string specifies
! the filename and variable name, separated
! by a comma or space, e.g. FILE:lev.nc,dz
! or FILE:lev.nc,interfaces=zw
! WOA09[:N] - the WOA09 vertical grid (approximately)
! FNC1:string - FNC1:dz_min,H_total,power,precision
! HYBRID:string - read from a file. The string specifies
! the filename and two variable names, separated
! by a comma or space, for sigma-2 and dz. e.g.
! HYBRID:vgrid.nc,sigma2,dz
!ALE_RESOLUTION = 2.303499698638916, 2.6903486251831055, 3.1421399116516113, 3.6697616577148438, 4.285917282104492, 5.005424499511719, 5.845563888549805, 6.826459884643555, 7.971549987792969, 9.308074951171875, 10.867660522460938, 12.686931610107422, 14.808158874511719, 17.279945373535156, 20.157821655273438, 23.504684448242188, 27.390975952148438, 31.894271850585938, 37.097900390625, 43.088226318359375, 49.94970703125, 57.757049560546875, 66.56375122070312, 76.386962890625, 87.18865966796875, 98.85760498046875, 111.1953125, 123.914794921875, 136.6578369140625, 149.03271484375, 160.6646728515625, 171.2481689453125, 180.5816650390625, 188.5797119140625, 195.2608642578125, 200.720703125, 205.10205078125, 208.565185546875, 211.2705078125, 213.363525390625, 214.97119140625, 216.198974609375, 217.13232421875, 217.83984375, 218.37451171875, 218.7783203125, 219.08203125, 219.310546875, 219.482421875, 219.6123046875 ! [m]
REMAPPING_SCHEME = "PPM_H4" ! default = "PLM"
! This sets the reconstruction scheme used for vertical remapping for all
! variables. It can be one of the following schemes: PCM (1st-order
! accurate)
! PLM (2nd-order accurate)
! PLM_HYBGEN (2nd-order accurate)
! PPM_H4 (3rd-order accurate)
! PPM_IH4 (3rd-order accurate)
! PPM_HYBGEN (3rd-order accurate)
! WENO_HYBGEN (3rd-order accurate)
! PQM_IH4IH3 (4th-order accurate)
! PQM_IH6IH5 (5th-order accurate)
! === module MOM_state_initialization ===
INIT_LAYERS_FROM_Z_FILE = True ! [Boolean] default = False
! If true, initialize the layer thicknesses, temperatures, and salinities from a
! Z-space file on a latitude-longitude grid.
! === module MOM_initialize_layers_from_Z ===
TEMP_SALT_Z_INIT_FILE = "ocean_temp_salt.res.nc" ! default = "temp_salt_z.nc"
! The name of the z-space input file used to initialize temperatures (T) and
! salinities (S). If T and S are not in the same file, TEMP_Z_INIT_FILE and
! SALT_Z_INIT_FILE must be set.
Z_INIT_FILE_PTEMP_VAR = "temp" ! default = "ptemp"
! The name of the potential temperature variable in TEMP_Z_INIT_FILE.
Z_INIT_ALE_REMAPPING = True ! [Boolean] default = False
! If True, then remap straight to model coordinate from file.
Z_INIT_REMAP_GENERAL = True ! [Boolean] default = False
! If false, only initializes to z* coordinates. If true, allows initialization
! directly to general coordinates.
TEMP_SALT_INIT_VERTICAL_REMAP_ONLY = True ! [Boolean] default = False
! If true, initial conditions are on the model horizontal grid. Extrapolation
! over missing ocean values is done using an ICE-9 procedure with vertical ALE
! remapping .
! === module MOM_diag_mediator ===
DIAG_COORD_DEF_Z = "FILE:ocean_vgrid.nc,interfaces=zeta" ! default = "WOA09"
! Determines how to specify the coordinate resolution. Valid options are:
! PARAM - use the vector-parameter DIAG_COORD_RES_Z
! UNIFORM[:N] - uniformly distributed
! FILE:string - read from a file. The string specifies
! the filename and variable name, separated
! by a comma or space, e.g. FILE:lev.nc,dz
! or FILE:lev.nc,interfaces=zw
! WOA09[:N] - the WOA09 vertical grid (approximately)
! FNC1:string - FNC1:dz_min,H_total,power,precision
! HYBRID:string - read from a file. The string specifies
! the filename and two variable names, separated
! by a comma or space, for sigma-2 and dz. e.g.
! HYBRID:vgrid.nc,sigma2,dz
! === module MOM_MEKE ===
USE_MEKE = True ! [Boolean] default = False
! If true, turns on the MEKE scheme which calculates a sub-grid mesoscale eddy
! kinetic energy budget.
MEKE_GMCOEFF = 0.0 ! [nondim] default = -1.0
! The efficiency of the conversion of potential energy into MEKE by the
! thickness mixing parameterization. If MEKE_GMCOEFF is negative, this
! conversion is not used or calculated.
MEKE_GEOMETRIC = True ! [Boolean] default = False
! If MEKE_GEOMETRIC is true, uses the GM coefficient formulation from the
! GEOMETRIC framework (Marshall et al., 2012).
MEKE_EQUILIBRIUM_ALT = True ! [Boolean] default = False
! If true, use an alternative formula for computing the (equilibrium)initial
! value of MEKE.
MEKE_EQUILIBRIUM_RESTORING = True ! [Boolean] default = False
! If true, restore MEKE back to its equilibrium value, which is calculated at
! each time step.
MEKE_RESTORING_TIMESCALE = 1.0E+07 ! [s] default = 1.0E+06
! The timescale used to nudge MEKE toward its equilibrium value.
MEKE_VISC_DRAG = False ! [Boolean] default = True
! If true, use the vertvisc_type to calculate the bottom drag acting on MEKE.
MEKE_KHTH_FAC = 1.0 ! [nondim] default = 0.0
! A factor that maps MEKE%Kh to KhTh.
MEKE_KHTR_FAC = 1.0 ! [nondim] default = 0.0
! A factor that maps MEKE%Kh to KhTr.
MEKE_KHMEKE_FAC = 0.5 ! [nondim] default = 0.0
! A factor that maps MEKE%Kh to Kh for MEKE itself.
MEKE_MIN_LSCALE = True ! [Boolean] default = False
! If true, use a strict minimum of provided length scales rather than harmonic
! mean.
MEKE_VISCOSITY_COEFF_KU = 0.2 ! [nondim] default = 0.0
! If non-zero, is the scaling coefficient in the expression forviscosity used to
! parameterize harmonic lateral momentum mixing byunresolved eddies represented
! by MEKE. Can be negative torepresent backscatter from the unresolved eddies.
MEKE_ALPHA_DEFORM = 1.0 ! [nondim] default = 0.0
! If positive, is a coefficient weighting the deformation scale in the
! expression for mixing length used in MEKE-derived diffusivity.
MEKE_ALPHA_RHINES = 1.0 ! [nondim] default = 0.0
! If positive, is a coefficient weighting the Rhines scale in the expression for
! mixing length used in MEKE-derived diffusivity.
MEKE_ALPHA_EADY = 1.0 ! [nondim] default = 0.0
! If positive, is a coefficient weighting the Eady length scale in the
! expression for mixing length used in MEKE-derived diffusivity.
MEKE_ALPHA_FRICT = 1.0 ! [nondim] default = 0.0
! If positive, is a coefficient weighting the frictional arrest scale in the
! expression for mixing length used in MEKE-derived diffusivity.
MEKE_ALPHA_GRID = 1.0 ! [nondim] default = 0.0
! If positive, is a coefficient weighting the grid-spacing as a scale in the
! expression for mixing length used in MEKE-derived diffusivity.
MEKE_ADVECTION_FACTOR = 1.0 ! [nondim] default = 0.0
! A scale factor in front of advection of eddy energy. Zero turns advection off.
! Using unity would be normal but other values could accommodate a mismatch
! between the advecting barotropic flow and the vertical structure of MEKE.
! === module MOM_lateral_mixing_coeffs ===
USE_VARIABLE_MIXING = True ! [Boolean] default = False
! If true, the variable mixing code will be called. This allows diagnostics to
! be created even if the scheme is not used. If KHTR_SLOPE_CFF>0 or
! KhTh_Slope_Cff>0, this is set to true regardless of what is in the parameter
! file.
RESOLN_SCALED_KH = True ! [Boolean] default = False
! If true, the Laplacian lateral viscosity is scaled away when the first
! baroclinic deformation radius is well resolved.
RESOLN_SCALED_KHTH = True ! [Boolean] default = False
! If true, the interface depth diffusivity is scaled away when the first
! baroclinic deformation radius is well resolved.
KHTH_USE_EBT_STRUCT = True ! [Boolean] default = False
! If true, uses the equivalent barotropic structure as the vertical structure of
! thickness diffusivity.
KHTH_SLOPE_CFF = 0.01 ! [nondim] default = 0.0
! The nondimensional coefficient in the Visbeck formula for the interface depth
! diffusivity
USE_STORED_SLOPES = True ! [Boolean] default = False
! If true, the isopycnal slopes are calculated once and stored for re-use. This
! uses more memory but avoids calling the equation of state more times than
! should be necessary.
KH_RES_SCALE_COEF = 0.4 ! [nondim] default = 1.0
! A coefficient that determines how KhTh is scaled away if RESOLN_SCALED_... is
! true, as F = 1 / (1 + (KH_RES_SCALE_COEF*Rd/dx)^KH_RES_FN_POWER).
! === module MOM_set_visc ===
CHANNEL_DRAG = True ! [Boolean] default = False
! If true, the bottom drag is exerted directly on each layer proportional to the
! fraction of the bottom it overlies.
HBBL = 10.0 ! [m]
! The thickness of a bottom boundary layer with a viscosity increased by
! KV_EXTRA_BBL if BOTTOMDRAGLAW is not defined, or the thickness over which
! near-bottom velocities are averaged for the drag law if BOTTOMDRAGLAW is
! defined but LINEAR_DRAG is not.
DRAG_BG_VEL = 0.1 ! [m s-1] default = 0.0
! DRAG_BG_VEL is either the assumed bottom velocity (with LINEAR_DRAG) or an
! unresolved velocity that is combined with the resolved velocity to estimate
! the velocity magnitude. DRAG_BG_VEL is only used when BOTTOMDRAGLAW is
! defined.
BBL_THICK_MIN = 0.1 ! [m] default = 0.0
! The minimum bottom boundary layer thickness that can be used with
! BOTTOMDRAGLAW. This might be Kv/(cdrag*drag_bg_vel) to give Kv as the minimum
! near-bottom viscosity.
KV = 1.0E-04 ! [m2 s-1]
! The background kinematic viscosity in the interior. The molecular value, ~1e-6
! m2 s-1, may be used.
! === module MOM_thickness_diffuse ===
KHTH_USE_FGNV_STREAMFUNCTION = True ! [Boolean] default = False
! If true, use the streamfunction formulation of Ferrari et al., 2010, which
! effectively emphasizes graver vertical modes by smoothing in the vertical.
FGNV_C_MIN = 0.01 ! [m s-1] default = 0.0
! A minium wave speed used in the Ferrari et al., 2010, streamfunction
! formulation.
USE_KH_IN_MEKE = True ! [Boolean] default = False
! If true, uses the thickness diffusivity calculated here to diffuse MEKE.
! === module MOM_porous_barriers ===
! === module MOM_dynamics_split_RK2 ===
TIDES = True ! [Boolean] default = False
! If true, apply tidal momentum forcing.
! === module MOM_continuity ===
! === module MOM_continuity_PPM ===
ETA_TOLERANCE = 1.0E-06 ! [m] default = 2.5E-09
! The tolerance for the differences between the barotropic and baroclinic
! estimates of the sea surface height due to the fluxes through each face. The
! total tolerance for SSH is 4 times this value. The default is
! 0.5*NK*ANGSTROM, and this should not be set less than about
! 10^-15*MAXIMUM_DEPTH.
VELOCITY_TOLERANCE = 1.0E-04 ! [m s-1] default = 3.0E+08
! The tolerance for barotropic velocity discrepancies between the barotropic
! solution and the sum of the layer thicknesses.
! === module MOM_CoriolisAdv ===
BOUND_CORIOLIS = True ! [Boolean] default = False
! If true, the Coriolis terms at u-points are bounded by the four estimates of
! (f+rv)v from the four neighboring v-points, and similarly at v-points. This
! option would have no effect on the SADOURNY Coriolis scheme if it were
! possible to use centered difference thickness fluxes.
! === module MOM_tidal_forcing ===
TIDE_M2 = True ! [Boolean] default = False
! If true, apply tidal momentum forcing at the M2 frequency. This is only used
! if TIDES is true.
TIDE_SAL_SCALAR_VALUE = 0.094 ! [m m-1]
! The constant of proportionality between sea surface height (really it should
! be bottom pressure) anomalies and bottom geopotential anomalies. This is only
! used if TIDES and TIDE_USE_SAL_SCALAR are true.
! === module MOM_PressureForce ===
! === module MOM_PressureForce_FV ===
MASS_WEIGHT_IN_PRESSURE_GRADIENT = True ! [Boolean] default = False
! If true, use mass weighting when interpolating T/S for integrals near the
! bathymetry in FV pressure gradient calculations.
! === module MOM_hor_visc ===
LAPLACIAN = True ! [Boolean] default = False
! If true, use a Laplacian horizontal viscosity.
AH = 1.0E+12 ! [m4 s-1] default = 0.0
! The background biharmonic horizontal viscosity.
LEITH_AH = True ! [Boolean] default = False
! If true, use a biharmonic Leith nonlinear eddy viscosity.
LEITH_BI_CONST = 128.0 ! [nondim] default = 0.0
! The nondimensional biharmonic Leith constant, typical values are thus far
! undetermined.
! === module MOM_vert_friction ===
HMIX_FIXED = 0.5 ! [m]
! The prescribed depth over which the near-surface viscosity and diffusivity are
! elevated when the bulk mixed layer is not used.
MAXVEL = 6.0 ! [m s-1] default = 3.0E+08
! The maximum velocity allowed before the velocity components are truncated.
CFL_TRUNCATE_RAMP_TIME = 7200.0 ! [s] default = 0.0
! The time over which the CFL truncation value is ramped up at the beginning of
! the run.
U_TRUNC_FILE = "U_velocity_truncations" ! default = ""
! The absolute path to a file into which the accelerations leading to zonal
! velocity truncations are written. Undefine this for efficiency if this
! diagnostic is not needed.
V_TRUNC_FILE = "V_velocity_truncations" ! default = ""
! The absolute path to a file into which the accelerations leading to meridional
! velocity truncations are written. Undefine this for efficiency if this
! diagnostic is not needed.
! === module MOM_barotropic ===
BOUND_BT_CORRECTION = True ! [Boolean] default = False
! If true, the corrective pseudo mass-fluxes into the barotropic solver are
! limited to values that require less than maxCFL_BT_cont to be accommodated.
BT_PROJECT_VELOCITY = True ! [Boolean] default = False
! If true, step the barotropic velocity first and project out the velocity
! tendency by 1+BEBT when calculating the transport. The default (false) is to
! use a predictor continuity step to find the pressure field, and then to do a
! corrector continuity step using a weighted average of the old and new
! velocities, with weights of (1-BEBT) and BEBT.
BEBT = 0.2 ! [nondim] default = 0.1
! BEBT determines whether the barotropic time stepping uses the forward-backward
! time-stepping scheme or a backward Euler scheme. BEBT is valid in the range
! from 0 (for a forward-backward treatment of nonrotating gravity waves) to 1
! (for a backward Euler treatment). In practice, BEBT must be greater than about
! 0.05.
DTBT = -0.95 ! [s or nondim] default = -0.98
! The barotropic time step, in s. DTBT is only used with the split explicit time
! stepping. To set the time step automatically based the maximum stable value
! use 0, or a negative value gives the fraction of the stable value. Setting
! DTBT to 0 is the same as setting it to -0.98. The value of DTBT that will
! actually be used is an integer fraction of DT, rounding down.
! === module MOM_mixed_layer_restrat ===
MIXEDLAYER_RESTRAT = True ! [Boolean] default = False
! If true, a density-gradient dependent re-stratifying flow is imposed in the
! mixed layer. Can be used in ALE mode without restriction but in layer mode can
! only be used if BULKMIXEDLAYER is true.
FOX_KEMPER_ML_RESTRAT_COEF = 1.0 ! [nondim] default = 0.0
! A nondimensional coefficient that is proportional to the ratio of the
! deformation radius to the dominant lengthscale of the submesoscale mixed layer
! instabilities, times the minimum of the ratio of the mesoscale eddy kinetic
! energy to the large-scale geostrophic kinetic energy or 1 plus the square of
! the grid spacing over the deformation radius, as detailed by Fox-Kemper et al.
! (2010)
MLE_FRONT_LENGTH = 1000.0 ! [m] default = 0.0
! If non-zero, is the frontal-length scale used to calculate the upscaling of
! buoyancy gradients that is otherwise represented by the parameter
! FOX_KEMPER_ML_RESTRAT_COEF. If MLE_FRONT_LENGTH is non-zero, it is recommended
! to set FOX_KEMPER_ML_RESTRAT_COEF=1.0.
MLE_MLD_DECAY_TIME = 3.456E+05 ! [s] default = 0.0
! The time-scale for a running-mean filter applied to the mixed-layer depth used
! in the MLE restratification parameterization. When the MLD deepens below the
! current running-mean the running-mean is instantaneously set to the current
! MLD.
! === module MOM_diagnostics ===
! === module MOM_diabatic_driver ===
! The following parameters are used for diabatic processes.
USE_LEGACY_DIABATIC_DRIVER = False ! [Boolean] default = True
! If true, use a legacy version of the diabatic subroutine. This is temporary
! and is needed to avoid change in answers.
! === module MOM_CVMix_KPP ===
! This is the MOM wrapper to CVMix:KPP
! See http://cvmix.github.io/
USE_KPP = True ! [Boolean] default = False
! If true, turns on the [CVMix] KPP scheme of Large et al., 1994, to calculate
! diffusivities and non-local transport in the OBL.
KPP%
N_SMOOTH = 3 ! default = 0
! The number of times the 1-1-4-1-1 Laplacian filter is applied on OBL depth.
MATCH_TECHNIQUE = "MatchGradient" ! default = "SimpleShapes"
! CVMix method to set profile function for diffusivity and NLT, as well as
! matching across OBL base. Allowed values are:
! SimpleShapes = sigma*(1-sigma)^2 for both diffusivity and NLT
! MatchGradient = sigma*(1-sigma)^2 for NLT; diffusivity profile from
! matching
! MatchBoth = match gradient for both diffusivity and NLT
! ParabolicNonLocal = sigma*(1-sigma)^2 for diffusivity; (1-sigma)^2 for NLT
KPP_IS_ADDITIVE = False ! [Boolean] default = True
! If true, adds KPP diffusivity to diffusivity from other schemes.
! If false, KPP is the only diffusivity wherever KPP is non-zero.
%KPP
! === module MOM_CVMix_conv ===
! Parameterization of enhanced mixing due to convection via CVMix
USE_CVMix_CONVECTION = True ! [Boolean] default = False
! If true, turns on the enhanced mixing due to convection via CVMix. This scheme
! increases diapycnal diffs./viscs. at statically unstable interfaces. Relevant
! parameters are contained in the CVMix_CONVECTION% parameter block.
CVMix_CONVECTION%
%CVMix_CONVECTION
! === module MOM_set_diffusivity ===
BBL_MIXING_AS_MAX = False ! [Boolean] default = True
! If true, take the maximum of the diffusivity from the BBL mixing and the other
! diffusivities. Otherwise, diffusivity from the BBL_mixing is simply added.
USE_LOTW_BBL_DIFFUSIVITY = True ! [Boolean] default = False
! If true, uses a simple, imprecise but non-coordinate dependent, model of BBL
! mixing diffusivity based on Law of the Wall. Otherwise, uses the original BBL
! scheme.
! === module MOM_bkgnd_mixing ===
! Adding static vertical background mixing coefficients
KD = 2.0E-05 ! [m2 s-1] default = 0.0
! The background diapycnal diffusivity of density in the interior. Zero or the
! molecular value, ~1e-7 m2 s-1, may be used.
KD_MIN = 2.0E-06 ! [m2 s-1] default = 2.0E-07
! The minimum diapycnal diffusivity.
HORIZ_VARYING_BACKGROUND = True ! [Boolean] default = False
! If true, apply vertically uniform, latitude-dependent background diffusivity,
! as described in Danabasoglu et al., 2012
PRANDTL_BKGND = 5.0 ! [nondim] default = 1.0
! Turbulent Prandtl number used to convert vertical background diffusivities
! into viscosities.
KD_MAX = 0.1 ! [m2 s-1] default = -1.0
! The maximum permitted increment for the diapycnal diffusivity from TKE-based
! parameterizations, or a negative value for no limit.
! === module MOM_CVMix_shear ===
! Parameterization of shear-driven turbulence via CVMix (various options)
USE_LMD94 = True ! [Boolean] default = False
! If true, use the Large-McWilliams-Doney (JGR 1994) shear mixing
! parameterization.
N_SMOOTH_RI = 1 ! default = 0
! If > 0, vertically smooth the Richardson number by applying a 1-2-1 filter
! N_SMOOTH_RI times.
! === module MOM_CVMix_ddiff ===
! Parameterization of mixing due to double diffusion processes via CVMix
USE_CVMIX_DDIFF = True ! [Boolean] default = False
! If true, turns on double diffusive processes via CVMix. Note that double
! diffusive processes on viscosity are ignored in CVMix, see
! http://cvmix.github.io/ for justification.
CVMIX_DDIFF%
%CVMIX_DDIFF
! === module MOM_diabatic_aux ===
! The following parameters are used for auxiliary diabatic processes.
PRESSURE_DEPENDENT_FRAZIL = True ! [Boolean] default = False
! If true, use a pressure dependent freezing temperature when making frazil. The
! default is false, which will be faster but is inappropriate with ice-shelf
! cavities.
! === module MOM_opacity ===
PEN_SW_SCALE = 15.0 ! [m] default = 0.0
! The vertical absorption e-folding depth of the penetrating shortwave
! radiation.
PEN_SW_FRAC = 0.42 ! [nondim] default = 0.0
! The fraction of the shortwave radiation that penetrates below the surface.
! === module MOM_tracer_advect ===
TRACER_ADVECTION_SCHEME = "PPM:H3" ! default = "PLM"
! The horizontal transport scheme for tracers:
! PLM - Piecewise Linear Method
! PPM:H3 - Piecewise Parabolic Method (Huyhn 3rd order)
! PPM - Piecewise Parabolic Method (Colella-Woodward)
! === module MOM_tracer_hor_diff ===
KHTR_MIN = 50.0 ! [m2 s-1] default = 0.0
! The minimum along-isopycnal tracer diffusivity.
CHECK_DIFFUSIVE_CFL = True ! [Boolean] default = False
! If true, use enough iterations the diffusion to ensure that the diffusive
! equivalent of the CFL limit is not violated. If false, always use the greater
! of 1 or MAX_TR_DIFFUSION_CFL iteration.
MAX_TR_DIFFUSION_CFL = 2.0 ! [nondim] default = -1.0
! If positive, locally limit the along-isopycnal tracer diffusivity to keep the
! diffusive CFL locally at or below this value. The number of diffusive
! iterations is often this value or the next greater integer.
! === module MOM_neutral_diffusion ===
! This module implements neutral diffusion of tracers
USE_NEUTRAL_DIFFUSION = True ! [Boolean] default = False
! If true, enables the neutral diffusion module.
NDIFF_INTERIOR_ONLY = True ! [Boolean] default = False
! If true, only applies neutral diffusion in the ocean interior.That is, the
! algorithm will exclude the surface and bottomboundary layers.
! === module MOM_hor_bnd_diffusion ===
! This module implements horizontal diffusion of tracers near boundaries
USE_HORIZONTAL_BOUNDARY_DIFFUSION = True ! [Boolean] default = False
! If true, enables the horizonal boundary tracer's diffusion module.
HBD_LINEAR_TRANSITION = True ! [Boolean] default = False
! If True, apply a linear transition at the base/top of the boundary.
! The flux will be fully applied at k=k_min and zero at k=k_max.
! === module MOM_sum_output ===
! === module ocean_stochastics_init ===
! === module ocean_model_init ===
RESTART_CONTROL = 3 ! default = 1
! An integer whose bits encode which restart files are written. Add 2 (bit 1)
! for a time-stamped file, and odd (bit 0) for a non-time-stamped file. A
! restart file will be saved at the end of the run segment for any non-negative
! value.
OCEAN_SURFACE_STAGGER = "A" ! default = "C"
! A case-insensitive character string to indicate the staggering of the surface
! velocity field that is returned to the coupler. Valid values include 'A',
! 'B', or 'C'.
RESTORE_SALINITY = True ! [Boolean] default = False
! If true, the coupled driver will add a globally-balanced fresh-water flux that
! drives sea-surface salinity toward specified values.
! === module MOM_surface_forcing_nuopc ===
LATENT_HEAT_FUSION = 3.337E+05 ! [J/kg] default = 3.34E+05
! The latent heat of fusion.
LATENT_HEAT_VAPORIZATION = 2.501E+06 ! [J/kg] default = 2.5E+06
! The latent heat of fusion.
ADJUST_NET_FRESH_WATER_TO_ZERO = True ! [Boolean] default = False
! If true, adjusts the net fresh-water forcing seen by the ocean (including
! restoring) to zero.
ENTHALPY_FROM_COUPLER = True ! [Boolean] default = False
! If True, the heat (enthalpy) associated with mass entering/leaving the ocean
! is provided via coupler.
FLUXCONST = 0.11 ! [m day-1] default = 0.0
! The constant that relates the restoring surface fluxes to the relative surface
! anomalies (akin to a piston velocity). Note the non-MKS units.
SALT_RESTORE_FILE = "salt_sfc_restore.nc" ! default = "salt_restore.nc"
! A file in which to find the surface salinity to use for restoring.
SRESTORE_AS_SFLUX = True ! [Boolean] default = False
! If true, the restoring of salinity is applied as a salt flux instead of as a
! freshwater flux.
GUST_CONST = 0.02 ! [Pa] default = 0.0
! The background gustiness in the winds.
! === module MOM_file_parser ===
FATAL_UNUSED_PARAMS = True ! [Boolean] default = False
! If true, kill the run if there are any unused parameters.