/* 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 benchmark.

   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. */

!SYMMETRIC_MEMORY_ = False      !   [Boolean]
                                ! If defined, the velocity point data domain includes
                                ! every face of the thickness points. In other words,
                                ! some arrays are larger than others, depending on where
                                ! they are on the staggered grid.  Also, the starting
                                ! index of the velocity-point arrays is usually 0, not 1.
                                ! This can only be set at compile time.
!STATIC_MEMORY_ = False         !   [Boolean]
                                ! If STATIC_MEMORY_ is defined, the principle variables
                                ! will have sizes that are statically determined at
                                ! compile time.  Otherwise the sizes are not determined
                                ! until run time. The STATIC option is substantially
                                ! faster, but does not allow the PE count to be changed
                                ! at run time.  This can only be set at compile time.
NIHALO = 4                      ! default = 2
                                ! The number of halo points on each side in the
                                ! x-direction.  With STATIC_MEMORY_ this is set as NIHALO_
                                ! in MOM_memory.h at compile time; without STATIC_MEMORY_
                                ! the default is NIHALO_ in MOM_memory.h (if defined) or 2.
NJHALO = 4                      ! default = 2
                                ! The number of halo points on each side in the
                                ! y-direction.  With STATIC_MEMORY_ this is set as NJHALO_
                                ! in MOM_memory.h at compile time; without STATIC_MEMORY_
                                ! the default is NJHALO_ in MOM_memory.h (if defined) or 2.
NIGLOBAL = 10                   !
                                ! 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 = 8                    !
                                ! 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.
!NIPROC = 12                    !
                                ! The number of processors in the x-direction. With
                                ! STATIC_MEMORY_ this is set in MOM_memory.h at compile time.
!NJPROC = 6                     !
                                ! The number of processors in the x-direction. With
                                ! STATIC_MEMORY_ this is set in MOM_memory.h at compile time.
!LAYOUT = 12, 6                 !
                                ! The processor layout that was acutally used.
IO_LAYOUT = 1, 1                ! default = 0
                                ! The processor layout to be used, or 0,0 to automatically
                                ! set the io_layout to be the same as the layout.

! === module MOM_grid ===
! Parameters providing information about the vertical grid.
NK = 8                          !   [nondim]
                                ! The number of model layers.

USE_REGRIDDING = True           !   [Boolean] default = False
                                ! If True, use the ALE algorithm (regridding/remapping). If False, use the

! === module MOM_verticalGrid ===
! Parameters providing information about the vertical grid.

! === module MOM ===
THICKNESSDIFFUSE = True         !   [Boolean] default = False
                                ! If true, interfaces or isopycnal surfaces are diffused,
                                ! depending on the value of FULL_THICKNESSDIFFUSE.
THICKNESSDIFFUSE_FIRST = True   !   [Boolean] default = False
                                ! If true, do thickness diffusion before dynamics.
                                ! This is only used if THICKNESSDIFFUSE is true.
MIXEDLAYER_RESTRAT = True       !   [Boolean] default = False
                                ! If true, a density-gradient dependent re-stratifying
                                ! flow is imposed in the mixed layer.
                                ! This is only used if BULKMIXEDLAYER is true.
USE_POROUS_BARRIER = False      !   [Boolean] default = False
                                ! If true, use porous barrier to constrain the widths and face areas at the
                                ! edges of the grid cells.
DT = 3600.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 = 7200.0               !   [s] default = 900.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.
                                ! By default DT_THERM is set to DT.
DTBT_RESET_PERIOD = -.98        !   [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
                                ! dynamic, DTBT will be set at least every forcing time
                                ! step, and if 0, 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
                                ! the accumulated heat deficit is returned in the
                                ! surface state.  FRAZIL is only used if
                                ! ENABLE_THERMODYNAMICS is true.
C_P = 3925.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.
SAVE_INITIAL_CONDS = True       !   [Boolean] default = False
                                ! If true, write the initial conditions to a file given
                                ! by IC_OUTPUT_FILE.
IC_OUTPUT_FILE = "GOLD_IC"      ! default = "MOM_IC"
                                ! The file into which to write the initial conditions.

! === module MOM_tracer_registry ===

! === 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 ===
INPUTDIR = "INPUT"              ! default = "."
                                ! The directory in which input files are found.
COORD_CONFIG = "ALE"            !
                                ! This specifies how layers are to be defined:
                                !     file - read coordinate information from the file
                                !       specified by (COORD_FILE).
                                !     linear - linear based on interfaces not layesrs.
                                !     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.
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
REMAPPING_SCHEME = "PPM_IH4"    ! 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_init ===
GRID_CONFIG = "spherical"       !
                                ! 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.
SOUTHLAT = -21.0                !   [degrees]
                                ! The southern latitude of the domain.
LENLAT = 42.0                   !   [degrees]
                                ! The latitudinal length of the domain.
LENLON = 90.0                   !   [degrees]
                                ! The longitudinal length of the domain.
TOPO_CONFIG = "halfpipe"        !
                                ! 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.
                                !     DOME - use a slope and channel configuration for the
                                !       DOME sill-overflow test case.
                                !     DOME2D - use a shelf and slope configuration for the
                                !       DOME2D gravity current/overflow test case.
                                !     seamount - Gaussian bump for spontaneous motion test case.
                                !     USER - call a user modified routine.

! === module benchmark_initialize_topography ===
MINIMUM_DEPTH = 1.0             !   [m] default = 0.0
                                ! The minimum depth of the ocean.
MAXIMUM_DEPTH = 4500.0          !   [m]
                                ! The maximum depth of the ocean.
THICKNESS_CONFIG = "uniform"    !
                                ! 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).
                                !     uniform - uniform thickness layers evenly distributed
                                !       between the surface and MAXIMUM_DEPTH.
                                !     DOME - use a slope and channel configuration for the
                                !       DOME sill-overflow test case.
                                !     benchmark - use the benchmark 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 - TBD AJA.
                                !     sloshing - TBD AJA.
                                !     seamount - TBD AJA.
                                !     USER - call a user modified routine.
TS_CONFIG = "benchmark"         !
                                ! 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.
                                !     adjustment2d - TBD AJA.
                                !     sloshing - TBD AJA.
                                !     seamount - TBD AJA.
                                !     USER - call a user modified routine.

! === 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.
MEKE_KHTH_FAC = 0.5             !   [nondim] default = 0.0
                                ! A factor that maps MEKE%Kh to KhTh.
MEKE_KHTR_FAC = 0.5             !   [nondim] default = 0.0
                                ! A factor that maps MEKE%Kh to KhTr.
MEKE_KHMEKE_FAC = 1.0           !   [nondim] default = 0.0
                                ! A factor that maps MEKE%Kh to Kh for MEKE itself.
MEKE_VISCOSITY_COEFF_KU = 1.0   !   [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_RHINES = 0.15        !   [nondim] default = 0.05
                                ! If positive, is a coefficient weighting the Rhines scale in the expression for
                                ! mixing length used in MEKE-derived diffusivity.
MEKE_ALPHA_EADY = 0.15          !   [nondim] default = 0.05
                                ! If positive, is a coefficient weighting the Eady length scale in the
                                ! expression for mixing length used in MEKE-derived diffusivity.

! === 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.
USE_VISBECK = False             !   [Boolean] default = False
                                ! If true, use the Visbeck et al. (1997) formulation for
                                ! thickness diffusivity.
RESOLN_SCALED_KH = False        !   [Boolean] default = False
                                ! If true, the Laplacian lateral viscosity is scaled away
                                ! when the first baroclinic deformation radius is well
                                ! resolved.
RESOLN_SCALED_KHTH = False      !   [Boolean] default = False
                                ! If true, the interface depth diffusivity is scaled away
                                ! when the first baroclinic deformation radius is well
                                ! resolved.
RESOLN_SCALED_KHTR = False      !   [Boolean] default = False
                                ! If true, the epipycnal tracer diffusivity is scaled
                                ! away when the first baroclinic deformation radius is
                                ! well resolved.
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

! === module MOM_wave_speed ===
ETA_TOLERANCE = 1.0E-06         !   [m] default = 1.1E-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 x
                                ! than about 10^-15*MAXIMUM_DEPTH.
VELOCITY_TOLERANCE = 0.001      !   [m s-1] default = 3.0E+08
                                ! The tolerance for barotropic velocity discrepancies
                                ! between the barotropic solution and  the sum of the
                                ! layer thicknesses.
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.
PGF_STANLEY_T2_DET_COEFF = -1.0 !   [nondim] default = -1.0
                                ! The coefficient correlating SGS temperature variance with the mean temperature
                                ! gradient in the deterministic part of the Stanley form of the Brankart
                                ! correction. Negative values disable the scheme.

! === 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
KH_VEL_SCALE = 0.05
SMAGORINSKY_KH = True           !   [Boolean] default = False
SMAG_LAP_CONST = 0.06           !   [nondim] default = 0.0
AH_VEL_SCALE = 0.05             !   [m s-1] default = 0.0
                                ! The velocity scale which is multiplied by the cube of
                                ! the grid spacing to calculate the Laplacian viscosity.
                                ! The final viscosity is the largest of this scaled
                                ! viscosity, the Smagorinsky viscosity and AH.
SMAGORINSKY_AH = True           !   [Boolean] default = False
                                ! If true, use a biharmonic Smagorinsky nonlinear eddy
                                ! viscosity.
SMAG_BI_CONST = 0.06            !   [nondim] default = 0.0
                                ! The nondimensional biharmonic Smagorinsky constant,
                                ! typically 0.015 - 0.06.

! === module MOM_vert_friction ===
ENERGETICS_SFC_PBL = True
DO_GEOTHERMAL = True
GEOTHERMAL_SCALE = 0.05
USE_NEUTRAL_DIFFUSION = True
DYNAMIC_VISCOUS_ML = True       !   [Boolean] default = False
                                ! If true, use a bulk Richardson number criterion to
                                ! determine the mixed layer thickness for viscosity.
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.
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.
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.
CHANNEL_DRAG = True             !   [Boolean] default = False
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.
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_set_visc ===
USE_JACKSON_PARAM = True        !   [Boolean] default = False
                                ! If true, use the Jackson-Hallberg-Legg (JPO 2008)
                                ! shear mixing parameterization.
ML_OMEGA_FRAC = 1.0             !   [nondim] default = 0.0
                                ! When setting the decay scale for turbulence, use this
                                ! fraction of the absolute rotation rate blended with the
                                ! local value of f, as sqrt((1-of)*f^2 + of*4*omega^2).
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.

! === 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 0.1*MAXVEL to be accommodated.
!BT x-halo = 0                  !
                                ! The barotropic x-halo size that is actually used.
!BT y-halo = 0                  !
                                ! The barotropic y-halo size that is actually used.
NONLINEAR_BT_CONTINUITY = True  !   [Boolean] default = False
                                ! If true, use nonlinear transports in the barotropic
                                ! continuity equation.  This does not apply if
                                ! USE_BT_CONT_TYPE is true.
BT_PROJECT_VELOCITY = True      !   [Boolean] default = False
                                ! If true, step the barotropic velocity first and project
                                ! out the velocity tendancy 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.
BT_THICK_SCHEME = "FROM_BT_CONT" ! default = "HYBRID"
                                ! A string describing the scheme that is used to set the
                                ! open face areas used for barotropic transport and the
                                ! relative weights of the accelerations. Valid values are:
                                !    ARITHMETIC - arithmetic mean layer thicknesses
                                !    HARMONIC - harmonic mean layer thicknesses
                                !    HYBRID (the default) - use arithmetic means for
                                !       layers above the shallowest bottom, the harmonic
                                !       mean for layers below, and a weighted average for
                                !       layers that straddle that depth
                                !    FROM_BT_CONT - use the average thicknesses kept
                                !       in the h_u and h_v fields of the BT_cont_type
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_thickness_diffuse ===
KHTH = 1.0                      !   [m2 s-1] default = 0.0
                                ! The background horizontal thickness diffusivity.
KHTH_MAX = 900.0                !   [m2 s-1] default = 0.0
                                ! The maximum horizontal thickness diffusivity.
STANLEY_PRM_DET_COEFF = -1.0    !   [nondim] default = -1.0
                                ! The coefficient correlating SGS temperature variance with the mean temperature
                                ! gradient in the deterministic part of the Stanley parameterization. Negative
                                ! values disable the scheme.

! === module MOM_mixed_layer_restrat ===
FOX_KEMPER_ML_RESTRAT_COEF = 5.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)

! === module MOM_diabatic_driver ===
! The following parameters are used for diabatic processes.
RECLAIM_FRAZIL = False          !   [Boolean] default = True
                                ! If true, try to use any frazil heat deficit to cool any
                                ! overlying layers down to the freezing point, thereby
                                ! avoiding the creation of thin ice when the SST is above
                                ! the freezing point.
KD = 2.0E-05                    !   [m2 s-1]
                                ! The background diapycnal diffusivity of density in the
                                ! interior. Zero or the molecular value, ~1e-7 m2 s-1,
                                ! may be used.

! === module MOM_KPP ===
! This is the MOM wrapper to CVmix:KPP
! See http://code.google.com/p/cvmix/
KPP%
%KPP

! === module MOM_diffConvection ===
! This module implements enhanced diffusivity as a
! function of static stability, N^2.
CONVECTION%
%CONVECTION

! === module MOM_entrain_diffusive ===
MAX_ENT_IT = 20                 ! default = 5
                                ! The maximum number of iterations that may be used to
                                ! calculate the interior diapycnal entrainment.
TOLERANCE_ENT = 1.0E-05         !   [m] default = 1.341640786499874E-05
                                ! The tolerance with which to solve for entrainment values.

! === module MOM_kappa_shear ===
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_mixed_layer ===
BULK_RI_ML = 0.05               !   [nondim]
                                ! The efficiency with which mean kinetic energy released
                                ! by mechanically forced entrainment of the mixed layer
                                ! is converted to turbulent kinetic energy.
ABSORB_ALL_SW = True            !   [Boolean] default = False
                                ! If true,  all shortwave radiation is absorbed by the
                                ! ocean, instead of passing through to the bottom mud.
MSTAR = 0.3                     !   [units=nondim] default = 1.2
                                ! The ratio of the friction velocity cubed to the TKE
                                ! input to the mixed layer.
TKE_DECAY = 10.0                !   [nondim] default = 2.5
                                ! TKE_DECAY relates the vertical rate of decay of the
                                ! TKE available for mechanical entrainment to the natural
                                ! Ekman depth.
HMIX_MIN = 2.0                  !   [m] default = 0.0
                                ! The minimum mixed layer depth if the mixed layer depth
                                ! is determined dynamically.
LIMIT_BUFFER_DETRAIN = True     !   [Boolean] default = False
                                ! If true, limit the detrainment from the buffer layers
                                ! to not be too different from the neighbors.
DEPTH_LIMIT_FLUXES = 0.1        !   [m] default = 0.2
                                ! The surface fluxes are scaled away when the total ocean
                                ! depth is less than DEPTH_LIMIT_FLUXES.
CORRECT_ABSORPTION_DEPTH = True !   [Boolean] default = False
                                ! If true, the depth at which penetrating shortwave
                                ! radiation is absorbed is corrected by moving some of
                                ! the heating upward in the water column.

! === module MOM_regularize_layers ===

! === 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 ===

! === module MOM_tracer_hor_diff ===
KHTR = 1.0                      !   [m2 s-1] default = 0.0
                                ! The background along-isopycnal tracer diffusivity.
KHTR_MAX = 900.0                !   [m2 s-1] default = 0.0
                                ! The maximum along-isopycnal tracer diffusivity.
ML_KHTR_SCALE = 0.0             !   [nondim] default = 1.0
                                ! With Diffuse_ML_interior, the ratio of the truly
                                ! horizontal diffusivity in the mixed layer to the
                                ! epipycnal diffusivity.  The valid range is 0 to 1.

! === module MOM_surface_forcing ===
BUOY_CONFIG = "linear"          !
                                ! The character string that indicates how buoyancy forcing
                                ! is specified. Valid options include (file), (zero),
                                ! (linear), (USER), and (NONE).
WIND_CONFIG = "gyres"           !
                                ! The character string that indicates how wind forcing
                                ! is specified. Valid options include (file), (2gyre),
                                ! (1gyre), (gyres), (zero), and (USER).
TAUX_SIN_AMP = 0.1              !   [Pa] default = 0.0
                                ! With the gyres wind_config, the sine amplitude in the
                                ! zonal wind stress profile:
                                !   B in taux = A + B*sin(n*pi*y/L) + C*cos(n*pi*y/L).
TAUX_N_PIS = 1.0                !   [nondim] default = 0.0
                                ! With the gyres wind_config, the number of gyres in
                                ! the zonal wind stress profile:
                                !   n in taux = A + B*sin(n*pi*y/L) + C*cos(n*pi*y/L).
RESTOREBUOY = True              !   [Boolean] default = False
                                ! If true, the buoyancy fluxes drive the model back
                                ! toward some specified surface state with a rate
                                ! given by FLUXCONST.
FLUXCONST = 0.5                 !   [m day-1]
                                ! The constant that relates the restoring surface fluxes
                                ! to the relative surface anomalies (akin to a piston
                                ! velocity).  Note the non-MKS units.
SST_NORTH = 27.0                !   [deg C] default = 0.0
                                ! With buoy_config linear, the sea surface temperature
                                ! at the northern end of the domain toward which to
                                ! to restore.
SST_SOUTH = 3.0                 !   [deg C] default = 0.0
                                ! With buoy_config linear, the sea surface temperature
                                ! at the southern end of the domain toward which to
                                ! to restore.

! === module MOM_sum_output ===
MAXTRUNC = 5000                 !   [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.
MAXCPU = 2.88E+04               !   [wall-clock seconds] default = -1.0
                                ! The maximum amount of cpu time per processor for which
                                ! MOM should run before saving a restart file and
                                ! quitting with a return value that indicates that a
                                ! further run is required to complete the simulation.
                                ! If automatic restarts are not desired, use a negative
                                ! value for MAXCPU.  MAXCPU has units of wall-clock
                                ! seconds, so the actual CPU time used is larger by a
                                ! factor of the number of processors used.

! === module MOM_main (MOM_driver) ===
DT_FORCING = 10800.0            !   [s] default = 900.0
                                ! The time step for changing forcing, coupling with other
                                ! components, or potentially writing certain diagnostics.
                                ! The default value is given by DT.
DAYMAX = 1.0                    !   [days]
                                ! The final time of the whole simulation, in units of
                                ! TIMEUNIT seconds.  This also sets the potential end
                                ! time of the present run segment if the end time is
                                ! not set (as it was here) via ocean_solo_nml in input.nml.
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 non-time-stamped
                                ! restart file is saved at the end of the run segment
                                ! for any non-negative value.
RESTINT = 365.0                 !   [days] default = 0.0
                                ! The interval between saves of the restart file in units
                                ! of TIMEUNIT.  Use 0 (the default) to not save
                                ! incremental restart files at all.
ENERGYSAVEDAYS = 0.5            !   [days] default = 3600.0
                                ! The interval in units of TIMEUNIT between saves of the
                                ! energies of the run and other globally summed diagnostics.
DIAG_AS_CHKSUM = True
DEBUG = True
USE_GM_WORK_BUG = False
USE_PSURF_IN_EOS = False        !   [Boolean] default = False
GRID_ROTATION_ANGLE_BUGS = True !   [Boolean] default = True
REMAP_UV_USING_OLD_ALG = True   !   [Boolean] default = True
USE_LAND_MASK_FOR_HVISC = False !   [Boolean] default = False
KAPPA_SHEAR_ITER_BUG = True     !   [Boolean] default = True
KAPPA_SHEAR_ALL_LAYER_TKE_BUG = True !   [Boolean] default = True
USE_MLD_ITERATION = False       !   [Boolean] default = False
PEN_SW_ABSORB_MINTHICK = 0.001  !   [m] default = 0.001
GUST_CONST = 0.02               !   [Pa] default = 0.02
FIX_USTAR_GUSTLESS_BUG = False  !   [Boolean] default = False
