-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMOM_input
740 lines (678 loc) · 51.2 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
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
/* This input file provides the adjustable run-time parameters for version 6 of
the Modular Ocean Model (MOM6), a numerical ocean model developed at NOAA-GFDL.
Where appropriate, parameters use usually given in MKS units.
This particular file is for the example in NEP7 10k.
This MOM_input file typically contains only the non-default values that are
needed to reproduce this example. A full list of parameters for this example
can be found in the corresponding MOM_parameter_doc.all file which is
generated by the model at run-time. */
! === module MOM ===
! === module MOM_unit_scaling ===
! Parameters for doing unit scaling of variables.
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, interface heights are diffused with a coefficient of KHTH.
THICKNESSDIFFUSE_FIRST = True ! [Boolean] default = False
! If true, do thickness diffusion before dynamics. This is only used if
! THICKNESSDIFFUSE is true.
DT = 300.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 = 300.0 ! [s] default = 1200.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.
FRAZIL = True ! [Boolean] default = False
! If true, water freezes if it gets too cold, and the 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.)
SAVE_INITIAL_CONDS = False ! [Boolean] default = False
! If true, write the initial conditions to a file given by IC_OUTPUT_FILE.
WRITE_GEOM = 1 ! default = 1
! If =0, never write the geometry and vertical grid files. If =1, write the
! geometry and vertical grid files only for a new simulation. If =2, always
! write the geometry and vertical grid files. Other values are invalid.
! === module MOM_domains ===
REENTRANT_X = False ! [Boolean] default = True
! If true, the domain is zonally reentrant.
NIGLOBAL = 342 !
! 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 = 816 !
! 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_verticalGrid ===
! Parameters providing information about the vertical grid.
NK = 75 ! [nondim]
! The number of model layers.
! === 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.
! benchmark - use the benchmark test case topography.
! Neverland - use the Neverland 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.
TOPO_FILE = "ocean_topog.nc" ! default = "topog.nc"
! The file from which the bathymetry is read.
MAXIMUM_DEPTH = 6500.0 ! [m]
! The maximum depth of the ocean.
MINIMUM_DEPTH = 9.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.
! === module MOM_open_boundary ===
! Controls where open boundaries are located, what kind of boundary condition to impose, and what data to apply,
! if any.
OBC_NUMBER_OF_SEGMENTS = 4 ! default = 0
! The number of open boundary segments.
OBC_FREESLIP_VORTICITY = False ! [Boolean] default = True
! If true, sets the normal gradient of tangential velocity to zero in the
! relative vorticity on open boundaries. This cannot be true if another
! OBC_XXX_VORTICITY option is True.
OBC_COMPUTED_VORTICITY = True ! [Boolean] default = False
! If true, uses the external values of tangential velocity in the relative
! vorticity on open boundaries. This cannot be true if another OBC_XXX_VORTICITY
! option is True.
OBC_ZERO_BIHARMONIC = True ! [Boolean] default = False
! If true, zeros the Laplacian of flow on open boundaries in the biharmonic
! viscosity term.
OBC_FREESLIP_STRAIN = False ! [Boolean] default = True
OBC_COMPUTED_STRAIN = True ! [Boolean] default = False
OBC_SEGMENT_001 = "J=N,I=N:0,FLATHER,ORLANSKI,NUDGED,ORLANSKI_TAN,NUDGED_TAN" !
OBC_SEGMENT_002 = "I=N,J=0:N,FLATHER,ORLANSKI,NUDGED,ORLANSKI_TAN,NUDGED_TAN" !
OBC_SEGMENT_003 = "J=0,I=0:N,FLATHER,ORLANSKI,NUDGED,ORLANSKI_TAN,NUDGED_TAN" !
OBC_SEGMENT_004 = "I=0,J=N:0,FLATHER,ORLANSKI,NUDGED,ORLANSKI_TAN,NUDGED_TAN" !
! Documentation needs to be dynamic?????
OBC_SEGMENT_001_VELOCITY_NUDGING_TIMESCALES = 3, 360.0 ! [days] default = 0.0
! Timescales in days for nudging along a segment, for inflow, then outflow.
! Setting both to zero should behave like SIMPLE obcs for the baroclinic
! velocities.
! Documentation needs to be dynamic?????
OBC_SEGMENT_003_VELOCITY_NUDGING_TIMESCALES = 3, 360.0 ! [days] default = 0.0
! Timescales in days for nudging along a segment, for inflow, then outflow.
! Setting both to zero should behave like SIMPLE obcs for the baroclinic
! velocities.
! Documentation needs to be dynamic?????
OBC_SEGMENT_002_VELOCITY_NUDGING_TIMESCALES = 3, 360.0 ! [days] default = 0.0
! Timescales in days for nudging along a segment, for inflow, then outflow.
! Setting both to zero should behave like SIMPLE obcs for the baroclinic
! velocities.
! Documentation needs to be dynamic?????
OBC_SEGMENT_004_VELOCITY_NUDGING_TIMESCALES = 3, 360.0 ! [days] default = 0.0
! Timescales in days for nudging along a segment, for inflow, then outflow.
! Setting both to zero should behave like SIMPLE obcs for the baroclinic
! velocities.
BRUSHCUTTER_MODE = True ! [Boolean] default = False
! If true, read external OBC data on the supergrid.
MASKING_DEPTH = 1.0 ! [m] default = -9999.0
! The depth below which to mask points as land points, for which all
! fluxes are zeroed out. MASKING_DEPTH is ignored if negative.
OBC_TRACER_RESERVOIR_LENGTH_SCALE_OUT = 0.0 ! [m] default = 0.0
! An effective length scale for restoring the tracer concentration at the
! boundaries to externally imposed values when the flow is exiting the domain.
OBC_TRACER_RESERVOIR_LENGTH_SCALE_IN = 0.0 ! [m] default = 0.0
! An effective length scale for restoring the tracer concentration at the
! boundaries to values from the interior when the flow is entering the domain.
OBC_TIDE_N_CONSTITUENTS = 10
OBC_TIDE_CONSTITUENTS = "M2,S2,N2,K2,K1,O1,P1,Q1,MM,MF"
OBC_TIDE_REF_DATE = 1980,1,1
OBC_TIDE_ADD_EQ_PHASE = True
OBC_TIDE_ADD_NODAL = True
OBC_TIDE_NODAL_REF_DATE = 1980,7,2
OBC_RADIATION_MAX = 1.0 ! [nondim] default = 1.0
! === module MOM_boundary_update ===
! === module MOM_tracer_registry ===
! === module segment_tracer_registry_init ===
! === 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.
! === module MOM_restart ===
PARALLEL_RESTARTFILES = True ! [Boolean] default = False
! If true, each processor writes its own restart file, otherwise a single
! restart file is generated
! === module MOM_tracer_flow_control ===
! === module MOM_coord_initialization ===
COORD_CONFIG = "gprime" !
! This specifies how layers are to be defined:
! ALE or none - used to avoid defining layers in ALE mode
! file - read coordinate information from the file
! specified by (COORD_FILE).
! BFB - Custom coords for buoyancy-forced basin case
! based on SST_S, T_BOT and DRHO_DT.
! linear - linear based on interfaces not layers
! layer_ref - linear based on layer densities
! ts_ref - use reference temperature and salinity
! ts_range - use range of temperature and salinity
! (T_REF and S_REF) to determine surface density
! and GINT calculate internal densities.
! gprime - use reference density (RHO_0) for surface
! density and GINT calculate internal densities.
! ts_profile - use temperature and salinity profiles
! (read from COORD_FILE) to set layer densities.
! USER - call a user modified routine.
GINT = 0.0098 ! [m s-2]
! The reduced gravity across internal interfaces.
REGRIDDING_COORDINATE_MODE = "Z*" ! 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
! SLIGHT - stretched coordinates above continuous isopycnal
! ADAPTIVE - optimize for smooth neutral density surfaces
ALE_COORDINATE_CONFIG = "FILE:vgrid_75_2m.nc,dz" ! 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 = 10.067100048065186, 10.118700981140137, 10.139101028442383, 10.217899322509766, 10.276897430419922, 10.408500671386719, 10.541099548339844, 10.774101257324219, 11.046302795410156, 11.472900390625, 12.010498046875, 12.801902770996094, 13.838088989257812, 15.307113647460938, 17.258697509765625, 19.95050048828125, 23.514297485351562, 28.2908935546875, 34.482696533203125, 42.4569091796875, 52.3572998046875, 64.36129760742188, 78.25607299804688, 93.720703125, 109.98895263671875, 126.30145263671875, 141.72174072265625, 155.66082763671875, 167.62060546875, 177.565185546875, 185.495361328125, 191.73095703125, 196.4637451171875, 200.0712890625, 202.7197265625, 204.714111328125, 206.140869140625, 207.21923828125, 207.96875, 208.547119140625, 208.93408203125, 209.24560546875, 209.438720703125, 209.6123046875, 209.7021484375, 209.802734375, 209.8408203125, 209.9013671875, 2*209.912109375 ! [m]
! The distribution of vertical resolution for the target
! grid used for Eulerian-like coordinates. For example,
! in z-coordinate mode, the parameter is a list of level
! thicknesses (in m). In sigma-coordinate mode, the list
! is of non-dimensional fractions of the water column.
MIN_THICKNESS = 1.0E-02 ! [m] default = 0.001
! When regridding, this is the minimum layer thickness allowed.
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)
! PPM_H4 (3rd-order accurate)
! PPM_IH4 (3rd-order accurate)
! PQM_IH4IH3 (4th-order accurate)
! PQM_IH6IH5 (5th-order accurate)
! === module MOM_grid ===
! Parameters providing information about the lateral grid.
! === module MOM_state_initialization ===
OBC_SEGMENT_001_DATA = "U=file:obcs.nc(u),V=file:obcs.nc(v),SSH=file:obcs.nc(zeta),TEMP=file:obcs.nc(temp),SALT=file:obcs.nc(salt),Uamp=file:tu1.nc(uamp),Uphase=file:tu1.nc(uphase),Vamp=file:tu1.nc(vamp),Vphase=file:tu1.nc(vphase),SSHamp=file:tz1.nc(zamp),SSHphase=file:tz1.nc(zphase)" !
OBC_SEGMENT_002_DATA = "U=file:obcs.nc(u),V=file:obcs.nc(v),SSH=file:obcs.nc(zeta),TEMP=file:obcs.nc(temp),SALT=file:obcs.nc(salt),Uamp=file:tu2.nc(uamp),Uphase=file:tu2.nc(uphase),Vamp=file:tu2.nc(vamp),Vphase=file:tu2.nc(vphase),SSHamp=file:tz2.nc(zamp),SSHphase=file:tz2.nc(zphase)" !
OBC_SEGMENT_003_DATA = "U=file:obcs.nc(u),V=file:obcs.nc(v),SSH=file:obcs.nc(zeta),TEMP=file:obcs.nc(temp),SALT=file:obcs.nc(salt),Uamp=file:tu3.nc(uamp),Uphase=file:tu3.nc(uphase),Vamp=file:tu3.nc(vamp),Vphase=file:tu3.nc(vphase),SSHamp=file:tz3.nc(zamp),SSHphase=file:tz3.nc(zphase)" !
OBC_SEGMENT_004_DATA = "U=file:obcs.nc(u),V=file:obcs.nc(v),SSH=file:obcs.nc(zeta),TEMP=file:obcs.nc(temp),SALT=file:obcs.nc(salt),Uamp=file:tu4.nc(uamp),Uphase=file:tu4.nc(uphase),Vamp=file:tu4.nc(vamp),Vphase=file:tu4.nc(vphase),SSHamp=file:tz4.nc(zamp),SSHphase=file:tz4.nc(zphase)" !
THICKNESS_CONFIG = "coord" !
! A string that determines how the initial layer thicknesses are specified for a
! new run:
! file - read interface heights from the file specified
! thickness_file - read thicknesses from the file specified
! by (THICKNESS_FILE).
! coord - determined by ALE coordinate.
! uniform - uniform thickness layers evenly distributed
! between the surface and MAXIMUM_DEPTH.
! list - read a list of positive interface depths.
! DOME - use a slope and channel configuration for the
! DOME sill-overflow test case.
! ISOMIP - use a configuration for the
! ISOMIP test case.
! benchmark - use the benchmark test case thicknesses.
! Neverland - use the Neverland test case thicknesses.
! search - search a density profile for the interface
! densities. This is not yet implemented.
! circle_obcs - the circle_obcs test case is used.
! DOME2D - 2D version of DOME initialization.
! adjustment2d - 2D lock exchange thickness ICs.
! sloshing - sloshing gravity thickness ICs.
! seamount - no motion test with seamount ICs.
! dumbbell - sloshing channel ICs.
! soliton - Equatorial Rossby soliton.
! rossby_front - a mixed layer front in thermal wind balance.
! USER - call a user modified routine.
THICKNESS_FILE = "init.nc" !
! The name of the thickness file.
ADJUST_THICKNESS = True ! [Boolean] default = False
! If true, all mass below the bottom removed if the
! topography is shallower than the thickness input file
! would indicate.
TS_CONFIG = "file" !
! A string that determines how the initial tempertures and salinities are
! specified for a new run:
! file - read velocities from the file specified
! by (TS_FILE).
! fit - find the temperatures that are consistent with
! the layer densities and salinity S_REF.
! TS_profile - use temperature and salinity profiles
! (read from TS_FILE) to set layer densities.
! benchmark - use the benchmark test case T & S.
! linear - linear in logical layer space.
! DOME2D - 2D DOME initialization.
! ISOMIP - ISOMIP initialization.
! adjustment2d - 2d lock exchange T/S ICs.
! sloshing - sloshing mode T/S ICs.
! seamount - no motion test with seamount ICs.
! dumbbell - sloshing channel ICs.
! rossby_front - a mixed layer front in thermal wind balance.
! SCM_CVMix_tests - used in the SCM CVMix tests.
! USER - call a user modified routine.
TS_FILE = "init.nc" !
! The initial condition file for temperature.
TEMP_IC_VAR = "temp" ! default = "PTEMP"
! The initial condition variable for potential temperature.
SALT_IC_VAR = "salt" ! default = "SALT"
! The initial condition variable for salinity.
TEMP_SALT_INIT_VERTICAL_REMAP_ONLY = True ! [Boolean] default = False
DEPRESS_INITIAL_SURFACE = True ! [Boolean] default = False
SURFACE_HEIGHT_IC_FILE = "init.nc" !
SURFACE_HEIGHT_IC_VAR = "ssh"
VELOCITY_CONFIG = "file" ! default = "zero"
! A string that determines how the initial velocities
! are specified for a new run:
! file - read velocities from the file specified
! by (VELOCITY_FILE).
! zero - the fluid is initially at rest.
! uniform - the flow is uniform (determined by
! parameters INITIAL_U_CONST and INITIAL_V_CONST).
! rossby_front - a mixed layer front in thermal wind balance.
! soliton - Equatorial Rossby soliton.
! USER - call a user modified routine.
VELOCITY_FILE = "init.nc"
! === module MOM_diag_mediator ===
! === 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 = 1.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_BGSRC = 1.0E-13 ! [W kg-1] default = 0.0
! A background energy source for 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.
RESOLN_SCALED_KHTR = True ! [Boolean] default = False
! If true, the epipycnal tracer diffusivity is scaled away when the first
! baroclinic deformation radius is well resolved.
KHTR_SLOPE_CFF = 0.25 ! [nondim] default = 0.0
! The nondimensional coefficient in the Visbeck formula for the epipycnal tracer
! 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.
INTERPOLATE_RES_FN = False ! [Boolean] default = True
! If true, interpolate the resolution function to the velocity points from the
! thickness points; otherwise interpolate the wave speed and calculate the
! resolution function independently at each point.
GILL_EQUATORIAL_LD = True ! [Boolean] default = False
! If true, uses Gill's definition of the baroclinic equatorial deformation
! radius, otherwise, if false, use Pedlosky's definition. These definitions
! differ by a factor of 2 in front of the beta term in the denominator. Gill's
! is the more appropriate definition.
! === 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.
PRANDTL_TURB = 1.0 ! [nondim] default = 0.0
! The turbulent Prandtl number applied to shear
! instability
HBBL = 10.0 ! [m]
! The thickness of a bottom boundary layer with a viscosity of KVBBL 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.
BBL_USE_EOS = True ! [Boolean] default = False
! If true, use the equation of state in determining the properties of the bottom
! boundary layer. Otherwise use the layer target potential densities.
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 ===
! === 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.
ETA_TOLERANCE_AUX = 0.001 ! [m] default = 1.0E-06
! The tolerance for free-surface height discrepancies between the barotropic
! solution and the sum of the layer thicknesses when calculating the auxiliary
! corrected velocities. By default, this is the same as ETA_TOLERANCE, but can
! be made larger for efficiency.
! === module MOM_CoriolisAdv ===
CORIOLIS_SCHEME = "SADOURNY75_ENERGY" ! default = "SADOURNY75_ENERGY"
! CORIOLIS_SCHEME selects the discretization for the Coriolis terms. Valid
! values are:
! SADOURNY75_ENERGY - Sadourny, 1975; energy cons.
! ARAKAWA_HSU90 - Arakawa & Hsu, 1990
! SADOURNY75_ENSTRO - Sadourny, 1975; enstrophy cons.
! ARAKAWA_LAMB81 - Arakawa & Lamb, 1981; En. + Enst.
! ARAKAWA_LAMB_BLEND - A blend of Arakawa & Lamb with
! Arakawa & Hsu and Sadourny energy
CORIOLIS_EN_DIS = True !
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_PressureForce ===
! === module MOM_PressureForce_AFV ===
MASS_WEIGHT_IN_PRESSURE_GRADIENT = True ! [Boolean] default = False
! If true, use mass weighting when interpolating T/S for integrals near the
! bathymetry in AFV pressure gradient calculations.
! === module MOM_hor_visc ===
LAPLACIAN = True ! [Boolean] default = False
! If true, use a Laplacian horizontal viscosity.
SMAGORINSKY_AH = True ! [Boolean] default = False
! If true, use a biharmonic Smagorinsky nonlinear eddy viscosity.
SMAG_BI_CONST = 0.015 ! [nondim] default = 0.0
! The nondimensional biharmonic Smagorinsky constant, typically 0.015 - 0.06.
! === 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 = 10.0 ! [m s-1] default = 3.0E+08
! The maximum velocity allowed before the velocity components are truncated.
! === module MOM_PointAccel ===
! === 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.9 ! [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 = False ! [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 = 500.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_USE_PBL_MLD = True ! [Boolean] default = False
! If true, the MLE parameterization will use the mixed-layer depth provided by
! the active PBL parameterization. If false, MLE will estimate a MLD based on a
! density difference with the surface using the parameter MLE_DENSITY_DIFF.
MLE_MLD_DECAY_TIME = 2.592E+06 ! [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_diabatic_driver ===
! The following parameters are used for diabatic processes.
ENERGETICS_SFC_PBL = True ! [Boolean] default = False
! If true, use an implied energetics planetary boundary layer scheme to
! determine the diffusivity and viscosity in the surface boundary layer.
IGNORE_FLUXES_OVER_LAND = True ! [Boolean] default = False
! If true, the model does not check if fluxes are being applied over land
! points. This is needed when the ocean is coupled with ice shelves and sea ice,
! since the sea ice mask needs to be different than the ocean mask to avoid sea
! ice formation under ice shelves. This flag only works when use_ePBL = True.
! === module MOM_CVMix_KPP ===
! This is the MOM wrapper to CVMix:KPP
! See http://cvmix.github.io/
! === module MOM_tidal_mixing ===
! Vertical Tidal Mixing Parameterization
! === module MOM_CVMix_conv ===
! Parameterization of enhanced mixing due to convection via CVMix
! === module MOM_entrain_diffusive ===
! === 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.
BBL_EFFIC = 0.025 ! [nondim] default = 0.2
! The efficiency with which the energy extracted by bottom drag drives BBL
! diffusion. This is only used if BOTTOMDRAGLAW is true.
SIMPLE_TKE_TO_KD = True ! [Boolean] default = False
! If true, uses a simple estimate of Kd/TKE that will work for arbitrary
! vertical coordinates. If false, calculates Kd/TKE and bounds based on exact
! energetics for an isopycnal layer-formulation.
HENYEY_IGW_BACKGROUND = True ! [Boolean] default = False
! If true, use a latitude-dependent scaling for the near surface background
! diffusivity, as described in Harrison & Hallberg, JPO 2008.
N2_FLOOR_IOMEGA2 = 0.0 ! [nondim] default = 1.0
! The floor applied to N2(k) scaled by Omega^2:
! If =0., N2(k) is simply positive definite.
! If =1., N2(k) > Omega^2 everywhere.
! === 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-08
! The minimum diapycnal diffusivity.
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.
INT_TIDE_DISSIPATION = False ! [Boolean] default = False
! If true, use an internal tidal dissipation scheme to
! drive diapycnal mixing, along the lines of St. Laurent
! et al. (2002) and Simmons et al. (2004).
INT_TIDE_DECAY_SCALE = 300.3003003003003 ! [m] default = 0.0
! The decay scale away from the bottom for tidal TKE with
! the new coding when INT_TIDE_DISSIPATION is used.
KAPPA_ITIDES = 6.28319E-04 ! [m-1] default = 6.283185307179586E-04
! A topographic wavenumber used with INT_TIDE_DISSIPATION.
! The default is 2pi/10 km, as in St.Laurent et al. 2002.
KAPPA_H2_FACTOR = 0.84 ! [nondim] default = 1.0
! A scaling factor for the roughness amplitude with nINT_TIDE_DISSIPATION.
TKE_ITIDE_MAX = 0.1 ! [W m-2] default = 1000.0
! The maximum internal tide energy source availble to mix
! above the bottom boundary layer with INT_TIDE_DISSIPATION.
READ_TIDEAMP = False ! [Boolean] default = False
! If true, read a file (given by TIDEAMP_FILE) containing
! the tidal amplitude with INT_TIDE_DISSIPATION.
TIDEAMP_FILE = "tideamp.nc" ! default = "tideamp.nc"
! The path to the file containing the spatially varying
! tidal amplitudes with INT_TIDE_DISSIPATION.
H2_FILE = "topog.nc" !
! The path to the file containing the sub-grid-scale
! topographic roughness amplitude with INT_TIDE_DISSIPATION.
! === module MOM_kappa_shear ===
! Parameterization of shear-driven turbulence following Jackson, Hallberg and Legg, JPO 2008
USE_JACKSON_PARAM = True ! [Boolean] default = False
! If true, use the Jackson-Hallberg-Legg (JPO 2008) shear mixing
! parameterization.
MAX_RINO_IT = 25 ! [nondim] default = 50
! The maximum number of iterations that may be used to estimate the Richardson
! number driven mixing.
! === module MOM_CVMix_shear ===
! Parameterization of shear-driven turbulence via CVMix (various options)
! === module MOM_CVMix_ddiff ===
! Parameterization of mixing due to double diffusion processes via CVMix
! === 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.
DO_RIVERMIX = True ! [Boolean] default = False
! If true, apply additional mixing wherever there is runoff, so that it is mixed
! down to RIVERMIX_DEPTH if the ocean is that deep.
RIVERMIX_DEPTH = 10.0 ! [m] default = 0.0
! The depth to which rivers are mixed if DO_RIVERMIX is defined.
! === module MOM_energetic_PBL ===
! === module MOM_regularize_layers ===
! === module MOM_opacity ===
PEN_SW_SCALE = 10.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 ===
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.
! === module MOM_neutral_diffusion ===
! This module implements neutral diffusion of tracers
! === module MOM_sum_output ===
MAXTRUNC = 100000 ! [truncations save_interval-1] default = 0
! The run will be stopped, and the day set to a very large value if the velocity
! is truncated more than MAXTRUNC times between energy saves. Set MAXTRUNC to 0
! to stop if there is any truncation of velocities.
! === Sponge options ===
SPONGE = True ! [Boolean] default = False
! If true, sponges may be applied anywhere in the domain.
! The exact location and properties of those sponges are
! specified via SPONGE_CONFIG.
SPONGE_DAMPING_FILE = "nep_10k_damp.nc"
! Name of file containing sponge damping rates.
SPONGE_STATE_FILE = "nep_10k_soda_mnClim_1980.nc"
! Name of the file with the state to damp towards.
SPONGE_PTEMP_VAR = "temp" ! default = "PTEMP"
! The name of the potential temperature variable in SPONGE_STATE_FILE.
SPONGE_SALT_VAR = "salt" ! default = "SALT"
! The name of the salinity variable in SPONGE_STATE_FILE.
SPONGE_UV = True ! [Boolean] default = False
! Apply sponges in u and v, in addition to tracers.
PONGE_UV_DAMPING_FILE = "nep_10k_damp.nc"
! Name of file containing sponge damping rates.
SPONGE_UV_STATE_FILE = "nep_10k_soda_mnClim_1980.nc"
! The name of the file with the state to damp UV toward.
SPONGE_U_VAR = "u" ! default = "UVEL"
! The name of the zonal velocity variable in SPONGE_UV_STATE_FILE.
SPONGE_V_VAR = "v" ! default = "VVEL"
! The name of the vertical velocity variable in SPONGE_UV_STATE_FILE.
SPONGE_IDAMP_VAR = "Idamp" ! default = "Idamp"
! The name of the inverse damping rate variable in SPONGE_DAMPING_FILE.
SPONGE_IDAMP_U_var = "Idamp_u" ! default = "Idamp"
! The name of the inverse damping rate variable in SPONGE_UV_DAMPING_FILE for
! the velocities.
SPONGE_IDAMP_V_var = "Idamp_v" ! default = "Idamp"
! The name of the inverse damping rate variable in SPONGE_UV_DAMPING_FILE for
! the velocities.
INTERPOLATE_SPONGE_TIME_SPACE = True ! [of sponge restoring data.] default = False
! Set True if using the newer sponging code which performs on-the-fly regridding
! in lat-lon-time.
! === module MOM_sponge ===
HOR_REGRID_2018_ANSWERS = False ! [Boolean] default = False
! If true, use the order of arithmetic for horizonal regridding that recovers
! the answers from the end of 2018 and retain a bug in the 3-dimensional mask
! returned in certain cases. Otherwise, use rotationally symmetric forms of the
! same expressions and initialize the mask properly.
SPONGE_DATA_ONGRID = True ! [Boolean] default = False
! When defined, the incoming sponge data are assumed to be on the model grid
! Also
TIDES = True
TIDE_M2 = True
TIDE_S2 = True
TIDE_N2 = True
TIDE_K2 = True
TIDE_K1 = True
TIDE_O1 = True
TIDE_P1 = True
TIDE_Q1 = True
TIDE_MM = True
TIDE_MF = True
TIDE_SAL_SCALAR_VALUE = 0.094
TIDE_USE_SAL_SCALAR = True
TIDE_REF_DATE = 1980,1,1
TIDE_USE_EQ_PHASE = True
! === module ocean_model_init ===
! === module MOM_surface_forcing ===
MAX_P_SURF = 0.0 ! [Pa] default = -1.0
! The maximum surface pressure that can be exerted by the atmosphere and
! floating sea-ice or ice shelves. This is needed because the FMS coupling
! structure does not limit the water that can be frozen out of the ocean and the
! ice-ocean heat fluxes are treated explicitly. No limit is applied if a
! negative value is used.
CD_TIDES = 0.0018 ! [nondim] default = 1.0E-04
! The drag coefficient that applies to the tides.
! === module MOM_restart ===
! === module MOM_file_parser ===