/* 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 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. */ REPORT_UNUSED_PARAMS = True ! [Boolean] default = False ! If true, report any parameter lines that are not used in the run. FATAL_UNUSED_PARAMS = False ! [Boolean] default = False ! If true, kill the run if there are any unused parameters. CALCULATE_APE = False ! [Boolean] default = True ! If true, calculate the available potential energy of ! the interfaces. Setting this to false reduces the ! memory footprint of high-PE-count models dramatically. REENTRANT_X = False ! [Boolean] default = True ! If true, the domain is zonally reentrant. REENTRANT_Y = False ! [Boolean] default = False ! If true, the domain is meridionally reentrant. TRIPOLAR_N = False ! [Boolean] default = False ! Use tripolar connectivity at the northern edge of the ! domain. With TRIPOLAR_N, NIGLOBAL must be even. !SYMMETRIC_MEMORY_ = True ! [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 = 262 ! HYCOM: idm=263 ! 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 = 192 ! HYCOM: jdm=193 ! 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 = 8 ! ! The number of processors in the x-direction. With ! STATIC_MEMORY_ this is set in MOM_memory.h at compile time. !NJPROC = 8 ! ! The number of processors in the x-direction. With ! STATIC_MEMORY_ this is set in MOM_memory.h at compile time. !LAYOUT = 8,8 ! ! The processor layout that was acutally used. ! === module MOM_grid === ! Parameters providing information about the vertical grid. NK = 41 ! [nondim]; HYCOM: kdm=41 ! The number of model layers. ! === module MOM_verticalGrid === ! Parameters providing information about the vertical grid. ! === module MOM_main (MOM_driver) === !RESTINT = 3.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. ! === module MOM_state_initialization === SPONGE = True ! If SPONGE is defined, sponges may be applied ! anywhere in the domain. The exact location and ! properties of those sponges are specified from ! MOM_initialization.F90. SPONGE_CONFIG = "file" ! default = "file" ! A string that sets how the sponges are configured: ! file - read sponge properties from the file ! specified by (SPONGE_FILE). ! ISOMIP - apply ale sponge in the ISOMIP case ! DOME - use a slope and channel configuration for the ! DOME sill-overflow test case. ! BFB - Sponge at the southern boundary of the domain ! for buoyancy-forced basin case. ! USER - call a user modified routine. SPONGE_DAMPING_FILE = "Sponge_rmu.nc" ! The name of the file with the sponge damping rates. SPONGE_STATE_FILE = "53X_archm.sponge_mask.nc" ! The name of the file with the state to damp toward. SPONGE_PTEMP_VAR = "ptemp" ! default = "PTEMP" ! The name of the potential temperature variable in SPONGE_STATE_FILE. SPONGE_SALT_VAR = "salinity" ! default = "SALT" ! The name of the salinity variable in SPONGE_STATE_FILE. SPONGE_ETA_VAR = "interface_depth" ! default = "ETA" ! The name of the interface height variable in SPONGE_STATE_FILE. SPONGE_UV_STATE_FILE = "53X_archm.sponge_mask.nc" ! The name of the file with the state to damp UV toward. SPONGE_U_VAR = "water_u" ! default = "u" ! The name of the u-vel variable in SPONGE_STATE_FILE. SPONGE_V_VAR = "water_v" ! default = "v" ! The name of the v-vel variable in SPONGE_STATE_FILE. ! SPONGE_IDAMP_VAR = "rmu" ! default = "IDAMP" ! The name of the inverse damping rate variable in SPONGE_DAMPING_FILE. INTERPOLATE_SPONGE_TIME_SPACE = True ! Set True if using the newer sponging code which ! performs on-the-fly regridding in lat-lon-time. ! of sponge restoring data. ! === module MOM_sponge === SPONGE_UV = True ! [Boolean] default = False ! Apply sponges in u and v, in addition to tracers. ! === Open Boundaries === OBC_NUMBER_OF_SEGMENTS = 3 ! [Integer] The number of open boundary segments. OBC_SEGMENT_001 = "J=0,I=0:N,FLATHER" OBC_SEGMENT_002 = "I=N,J=0:N,FLATHER" OBC_SEGMENT_003 = "J=N,I=N:0,FLATHER" OBC_SEGMENT_001_DATA = "U=file:obc_south.nc(u11),V=file:obc_south.nc(v11),SSH=file:obc_south.nc(ssh),TEMP=file:obc_south.nc(pt),SALT=file:obc_south.nc(s)" OBC_SEGMENT_002_DATA = "U=file:obc_east.nc(u11),V=file:obc_east.nc(v11),SSH=file:obc_east.nc(ssh),TEMP=file:obc_east.nc(pt),SALT=file:obc_east.nc(s)" OBC_SEGMENT_003_DATA = "U=file:obc_north.nc(u11),V=file:obc_north.nc(v11),SSH=file:obc_north.nc(ssh),TEMP=file:obc_north.nc(pt),SALT=file:obc_north.nc(s)" !OBC_SEGMENT_001_VELOCITY_NUDGING_TIMESCALES = 0.3, 360 !OBC_SEGMENT_002_VELOCITY_NUDGING_TIMESCALES = 0.3, 360 !OBC_SEGMENT_003_VELOCITY_NUDGING_TIMESCALES = 0.3, 360 OBC_TRACER_RESERVOIR_LENGTH_SCALE_OUT = 30000 OBC_TRACER_RESERVOIR_LENGTH_SCALE_IN = 3000 OBC_ZERO_VORTICITY = True ! [Boolean] default = False OBC_FREESLIP_VORTICITY = False !OBC_COMPUTED_VORTICITY = True OBC_FREESLIP_STRAIN = True OBC_ZERO_BIHARMONIC = True MASK_OUTSIDE_OBCS = True ! [Boolean] default = False ! If true, set the areas outside open boundaries to be land. ! === module MOM_oda_incupd === ODA_INCUPD = True ! [Boolean] default = False ! If true, oda incremental updates will be applied ! everywhere in the domain. ODA_INCUPD_FILE = "MOM.Y2015_D015_S00000.inc.nc" ! The name of the file with the T,S,h increments. ODA_TEMPINC_VAR = "pt_inc" ! default = "ptemp_inc" ! The name of the potential temperature inc. variable in ! ODA_INCUPD_FILE. ODA_SALTINC_VAR = "s_inc" ! default = "sal_inc" ! The name of the salinity inc. variable in ! ODA_INCUPD_FILE. ODA_INTDINC_VAR = "p_inc" ! default = "p_inc" ! The name of the int. depth inc. variable in ! ODA_INCUPD_FILE. ODA_INCUPD_UV_FILE = "MOM.Y2015_D015_S00000.inc.nc" ! The name of the file with the U,V increments. ODA_UINC_VAR = "u_inc" ! default = "u_inc" ! The name of the zonal vel. inc. variable in ! ODA_INCUPD_UV_FILE. ODA_VINC_VAR = "v_inc" ! default = "v_inc" ! The name of the meridional vel. inc. variable in ! ODA_INCUPD_UV_FILE. ODA_INCUPD_NHOURS = 3.0 ! default=3.0 ! Number of hours for full update (0=direct insertion). ! === module MOM === DIABATIC_FIRST = False ! [Boolean] default = False ! If true, apply diabatic and thermodynamic processes, ! including buoyancy forcing and mass gain or loss, ! before stepping the dynamics forward. BULKMIXEDLAYER = False ! [Boolean] default = True ! If true, use a Kraus-Turner-like bulk mixed layer ! with transitional buffer layers. Layers 1 through ! NKML+NKBL have variable densities. There must be at ! least NKML+NKBL+1 layers if BULKMIXEDLAYER is true. 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. USE_REGRIDDING = True ! [Boolean] default = False ! If True, use the ALE algorithm (regridding/remapping). ! If False, use the layered isopycnal algorithm. THICKNESSDIFFUSE = False ! [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. DT = 300.0 ! [s]; HYCOM: baclin=180.0 ! 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 = 1200.0 ! [s] default = 300.0; HYCOM: baclin=180.00 ! 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. THERMO_SPANS_COUPLING = False ! [Boolean] default = False ! If true, the MOM will take thermodynamic and tracer ! timesteps that can be longer than the coupling timestep. ! The actual thermodynamic timestep that is used in this ! case is the largest integer multiple of the coupling ! timestep that is less than or equal to DT_THERM. 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.) 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. ! === module MOM_tracer_registry === ! === module MOM_EOS === EQN_OF_STATE = "WRIGHT" ! default = "WRIGHT"; HYCOM: TEOS10 17-term sigma-2 ! EQN_OF_STATE determines which ocean equation of state ! should be used. Currently, the valid choices are ! "LINEAR", "UNESCO", "WRIGHT", "NEMO" and "TEOS10". TFREEZE_FORM = "LINEAR" ! default = "LINEAR" ! TFREEZE_FORM determines which expression should be ! used for the freezing point. Currently, the valid ! choices are "LINEAR", "MILLERO_78", "TEOS10" 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. PARALLEL_RESTARTFILES = True ! [Boolean] default = False ! If true, each processor writes its own restart file, ! otherwise a single restart file is generated RESTART_CHECKSUMS_REQUIRED = False ! [Boolean] default = True ! If true, require the restart checksums to match and error out otherwise. ! === module MOM_tracer_flow_control === USE_IDEAL_AGE_TRACER = False ! [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 = "file" ! ! 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. COORD_FILE = "mom6_vgrid.nc" ! ! The file from which the coordinate densities are read. REGRIDDING_COORDINATE_MODE = "HYCOM1" ! default = "LAYER"; HYCOM: nhybrd=41 ! Coordinate mode for vertical regridding. ! Choose among the following possibilities: ! LAYER - Isopycnal or stacked shallow water layers ! Z* - stetched geopotential z* ! SIGMA - terrain following coordinates ! RHO - continuous isopycnal ! HYCOM1 - HyCOM-like hybrid coordinate ! SLIGHT - stretched coordinates above continuous isopycnal REGRID_COMPRESSIBILITY_FRACTION = 0.01 ! [not defined] default = 0.0 ! When interpolating potential density profiles we can add ! some artificial compressibility solely to make homogenous ! regions appear stratified. ALE_COORDINATE_CONFIG = "HYBRID:mom6_vgrid.nc,sigma2,dz" ! default = "UNIFORM" ! Determines how to specify the coordinate ! resolution. Valid options are: ! PARAM - use the vector-parameter ALE_RESOLUTION ! UNIFORM - 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,Z ! 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 ! 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. ! HYBRID target densities for itnerfaces BOUNDARY_EXTRAPOLATION = True ! [Boolean] default = False ! When defined, a proper high-order reconstruction ! scheme is used within boundary cells rather ! than PCM. E.g., if PPM is used for remapping, a ! PPM reconstruction will also be used within ! boundary cells. REMAPPING_SCHEME = "PPM_H4" ! default = "PLM"; HYCOM: hybmap=3 ! 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) REMAP_AFTER_INITIALIZATION = False ! [Boolean] default = True ! If true, applies regridding and remapping immediately after ! initialization so that the state is ALE consistent. This is a ! legacy step and should not be needed if the initialization is ! consistent with the coordinate mode. ! === 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 = "regional.mom6.nc" ! default "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. ! 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. ! Phillips - ACC-like idealized topography used in the Phillips config. ! USER - call a user modified routine. TOPO_FILE = "depth_GOMb0.08_09m11_mom6.nc" ! default = "topog.nc" ! The file from which the bathymetry is read. MAXIMUM_DEPTH = 8200.0 ! [m] ! The maximum depth of the ocean. MINIMUM_DEPTH = 3.0 ! [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 depper than MASKING_DEPTH are rounded to MINIMUM_DEPTH. MASKING_DEPTH = -9999.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. CHANNEL_CONFIG = "none" ! default = "none" ! A parameter that determines which set of channels are ! restricted to specific widths. Options are: ! none - All channels have the grid width. ! global_1deg - Sets 16 specific channels appropriate ! for a 1-degree model, as used in CM2G. ! list - Read the channel locations and widths from a ! text file, like MOM_channel_list in the MOM_SIS ! test case. ! file - Read open face widths everywhere from a ! NetCDF file on the model grid. SAVE_INITIAL_CONDS = True ! [Boolean] default = False ! If true, write the initial conditions to a file given by IC_OUTPUT_FILE. IC_OUTPUT_FILE = "MOM_IC.nc" ! default = "MOM_IC" ! The file into which to write the initial conditions. WRITE_GEOM = 0 ! 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_grid_init === INIT_LAYERS_FROM_Z_FILE = True ! [Boolean] default = False ! If true, intialize the layer thicknesses, temperatures, ! and salnities from a Z-space file on a latitude- ! longitude grid. !INIT_UV_FROM_Z_FILE = True ! [Boolean] default = False ! ! If true, initialize the UV from a Z-space file on a ! latitude-longitude grid TEMP_SALT_Z_INIT_FILE = "53X_archm.2015010109_tsuv_filled.nc" ! default = "temp_salt_z.nc" ! The name of the z-space input file used to initialize ! the layer thicknesses, temperatures and salinities. !UV_Z_INIT_FILE = "53X_archm.2015010109_tsuv_filled.nc" ! default = "uv_z.nc" ! ! The name of the z-space input file used to initialize ! u-vel (U) and v-vel (V). Z_INIT_FILE_PTEMP_VAR = "ptemp" ! default = "ptemp" ! The name of the potential temperature variable in ! TEMP_SALT_Z_INIT_FILE. Z_INIT_FILE_SALT_VAR = "salinity" ! default = "salt" ! The name of the salinity variable in ! TEMP_SALT_Z_INIT_FILE. !Z_INIT_FILE_U_VAR = "water_u" ! default = "u" ! ! The name of the z-space input file used to initialize u-vel, only. !Z_INIT_FILE_V_VAR = "water_v" ! default = "v" ! ! The name of the z-space input file used to initialize v-vel, only. Z_INIT_ALE_REMAPPING = True ! [Boolean] default = False ! If True, then remap straight to model coordinate from file. Z_INIT_HOMOGENIZE = False ! [Boolean] default = False ! If True, then horizontally homogenize the interpolated ! initial conditions. Z_INIT_REMAPPING_SCHEME = "PPM_IH4" ! default = "PPM_IH4" ! The remapping scheme to use if using Z_INIT_ALE_REMAPPING ! is True. Z_INIT_REMAP_GENERAL = True ! [Boolean] default = False ! If false, only initializes to z* coordinates. ! If true, allows initialization directly to general coordinates. Z_INIT_REMAP_FULL_COLUMN = True ! [Boolean] default = True ! If false, only reconstructs profiles for valid data points. ! If true, inserts vanished layers below the valid data. Z_INIT_REMAP_OLD_ALG = False ! [Boolean] default = True ! If false, uses the preferred remapping algorithm for initialization. ! If true, use an older, less robust algorithm for remapping. ! === module MOM_MEKE === USE_MEKE = False ! [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. ! === module MOM_wave_speed === ! === 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 = 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. KHTR_SLOPE_CFF = 0.0 ! [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. ! === module MOM_set_visc === DEFAULT_2018_ANSWERS = False ! [Boolean] default = True ! This sets the default value for the various _2018_ANSWERS parameters. BOTTOMDRAGLAW = True ! [Boolean] default = True ! If true, the bottom stress is calculated with a drag ! law of the form c_drag*|u|*u. The velocity magnitude ! may be an assumed value or it may be based on the ! actual velocity in the bottommost HBBL, depending on ! LINEAR_DRAG. CHANNEL_DRAG = False ! [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.25 ! [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. CDRAG = 0.0025 ! [nondim] default = 0.003; HYCOM: cb=2.5e-3 ! CDRAG is the drag coefficient relating the magnitude of ! the velocity field to the bottom stress. CDRAG is only ! used if BOTTOMDRAGLAW is defined. DRAG_BG_VEL = 0.0 ! [m s-1] default = 0.0; HYCOM: cbar=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_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_MAX = 10.0 ! [m] default = 0.0 ! The maximum bottom boundary layer thickness that can be ! used with BOTTOMDRAGLAW. Zero to disable. BBL_THICK_MIN = 10.0 ! [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. BBL_EFFIC = 0.01 ! [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. ETA_TOLERANCE = 1.0E-06 ! [m] default = 3.75E-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. 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. CORIOLIS_SCHEME = "SADOURNY75_ENSTRO" ! default = "SADOURNY75_ENERGY"; HYCOM: momtyp=2 ! 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 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. MASS_WEIGHT_IN_PRESSURE_GRADIENT = True ! [Boolean] default = False ! If true, use mass weighting when interpolation T/S for ! top/bottom integrals in AFV pressure gradient calculation. ! === module MOM_CoriolisAdv === NOSLIP = False ! [Boolean] default = False; HYCOM: slip=1.0 (noslip) ! If true, no slip boundary conditions are used; otherwise ! free slip boundary conditions are assumed. The ! implementation of the free slip BCs on a C-grid is much ! cleaner than the no slip BCs. The use of free slip BCs ! is strongly encouraged, and no slip BCs are not used with ! the biharmonic viscosity. ! === module MOM_hor_visc === LAPLACIAN = True ! [Boolean] default = False ! If true, use a Laplacian horizontal viscosity. KH = 0.0 ! [m2 s-1] default = 0.0 ! The background Laplacian horizontal viscosity. KH_BG_MIN = 0.0 ! [m2 s-1] default = 0.0 ! The minimum value allowed for Laplacian horizontal viscosity, KH. KH_VEL_SCALE = 0.00286 ! [m s-1] default = 0.0; HYCOM: veldf2=0.00286 ! The velocity scale which is multiplied by the grid ! spacing to calculate the Laplacian viscosity. ! The final viscosity is the largest of this scaled ! viscosity, the Smagorinsky and Leith viscosities, and KH. SMAGORINSKY_KH = True ! [Boolean] default = False ! If true, use a Smagorinsky nonlinear eddy viscosity. SMAG_LAP_CONST = 0.05 ! [nondim] default = 0.0; HYCOM: visco2=0.05 ! The nondimensional Laplacian Smagorinsky constant, ! often 0.15. BIHARMONIC = True ! [Boolean] default = True ! If true, use a biharmonic horizontal viscosity. ! BIHARMONIC may be used with LAPLACIAN. AH = 0.0 ! [m4 s-1] default = 0.0 ! The background biharmonic horizontal viscosity. AH_VEL_SCALE = 0.02 ! [m s-1] default = 0.0; HYCOM: veldf4=0.02 ! The velocity scale which is multiplied by the cube of ! the grid spacing to calculate the biharmonic viscosity. ! The final viscosity is the largest of this scaled ! viscosity, the Smagorinsky and Leith viscosities, and AH. SMAGORINSKY_AH = False ! [Boolean] default = False ! If true, use a biharmonic Smagorinsky nonlinear eddy ! viscosity. USE_LAND_MASK_FOR_HVISC = True ! [Boolean] default = False ! If true, use Use the land mask for the computation of thicknesses ! at velocity locations. This eliminates the dependence on arbitrary ! values over land or outside of the domain. Default is False in order to ! maintain answers with legacy experiments but should be changed to True ! for new experiments. ! === module MOM_vert_friction === DIRECT_STRESS = True ! [Boolean] default = False ! If true, the wind stress is distributed over the ! topmost HMIX_STRESS of fluid (like in HYCOM), and KVML ! may be set to a very small value. U_TRUNC_FILE = "" ! 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 = "" ! 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. HMIX_FIXED = 0.9 ! [m] ! The prescribed depth over which the near-surface ! viscosity and diffusivity are elevated when the bulk ! mixed layer is not used. HMIX_STRESS = 0.9 ! [m] ! The depth over which the wind stress is applied if ! DIRECT_STRESS is true. KV = 0.3E-04 ! [m2 s-1]; HYCOM: difmiw=0.3e-4 ! The background kinematic viscosity in the interior. ! The molecular value, ~1e-6 m2 s-1, may be used. KVML = 0.3E-04 ! [m2 s-1] default = KV; ! The kinematic viscosity in the mixed layer. A typical ! value is ~1e-2 m2 s-1. KVML is not used if ! BULKMIXEDLAYER is true. The default is set by KV. MAXVEL = 6.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 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. DYNAMIC_SURFACE_PRESSURE = True ! [Boolean] default = False ! If true, add a dynamic pressure due to a viscous ice ! shelf, for instance. 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; HYCOM: batrop=6.428571 ! 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 = 0.0 ! [m2 s-1] default = 0.0 ! The background horizontal thickness diffusivity. KHTH_MAX_CFL = 0.1 ! [nondimensional] default = 0.8 ! The maximum value of the local diffusive CFL ratio that ! is permitted for the thickness diffusivity. 1.0 is the ! marginally unstable value in a pure layered model, but ! much smaller numbers (e.g. 0.1) seem to work better for ! ALE-based models. ! === 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. ! This is only used if BULKMIXEDLAYER is true. 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. ! === module MOM_diabatic_driver === ! The following parameters are used for diabatic processes. RECLAIM_FRAZIL = True ! [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. ML_RADIATION = False ! [Boolean] default = False ! If true, allow a fraction of TKE available from wind ! work to penetrate below the base of the mixed layer ! with a vertical decay scale determined by the minimum ! of: (1) The depth of the mixed layer, (2) an Ekman ! length scale. KD = 1.0E-05 ! [m2 s-1]; HYCOM: difsiw=0.1e-4 ! 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. PRANDTL_BKGND = 3.0 ! [nondim] default = 1.0; HYCOM: difmiw=0.3e-4 ! Turbulent Prandtl number used to convert vertical background diffusivities ! into viscosities. ! === module MOM_KPP === ! This is the MOM wrapper to CVmix:KPP ! See http://code.google.com/p/cvmix/ USE_KPP = True ! [Boolean] default = False; HYCOM: mlflag=1 ! If true, turns on the [CVmix] KPP scheme of Large et al., 1984, ! to calculate diffusivities and non-local transport in the OBL. KPP% APPLY_NONLOCAL_TRANSPORT = True ! [Boolean] default = True; HYCOM: nonloc=T ! If True, applies the non-local transport to heat and scalars. ! If False, calculates the non-local transport and tendencies but ! purely for diagnostic purposes. RI_CRIT = 0.25 ! [nondim] default = 0.3; HYCOM: ricr=0.25 ! Critical bulk Richardson number used to define depth of the ! surface Ocean Boundary Layer (OBL). ENHANCE_DIFFUSION = True ! [Boolean] default = True; HYCOM: True ! If True, adds enhanced diffusion at the based of the boundary layer. INTERP_TYPE = "quadratic" ! default = "cubic"; HYCOM: hblflg=2 (quadratric) ! Type of interpolation to use to determine the OBL depth. ! Allowed types are: linear, quadratic, cubic. COMPUTE_EKMAN = True ! [Boolean] default = False; HYCOM: True ! If True, limit OBL depth to be no deeper than Ekman depth. COMPUTE_MONIN_OBUKHOV = True ! [Boolean] default = False; HYCOM: True ! If True, limit the OBL depth to be no deeper than ! Monin-Obukhov depth. CS = 98.96 ! [nondim] default = 98.96; HYCOM: cs=98.96 ! Parameter for computing velocity scale function. DEEP_OBL_OFFSET = 0.0 ! [m] default = 0.0 ! If non-zero, the distance above the bottom to which the OBL is clipped ! if it would otherwise reach the bottom. The smaller of this and 0.1D is used. KPP_IS_ADDITIVE = False ! [Boolean] default = False ! If true, adds KPP diffusivity to the existing diffusivity. If false, replaces exisiting diffusivity with KPP diffusivity wherever the latter is non-zero. NLT_SHAPE = "CVMix" ! default = "CVMix" ! The shape of the nonlocal transport (or redistribution of surface ! forcing. Allowed values are: ! CVMix - Uses the profile from CVmix ! LINEAR - A linear profile, 1-sigma ! PARABOLIC - A paroblic profile, (1-sigma)^2 ! CUBIC - A cubic profile, (1-sigma)^2(1+2*sigma) ! CUBIC_LMD - The original KPP profile MATCH_TECHNIQUE = "ParabolicNonLocal" ! 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 CVMix_ZERO_H_WORK_AROUND = 0.001! [m] default = 0.0 ! A minimum thickness used to avoid division by small numbers in the vicinity ! of vanished layers. This is independent of MIN_THICKNESS used in other parts of MOM. %KPP ! === module MOM_CVMix_conv === ! Parameterization of enhanced mixing due to convection via CVMix USE_CVMix_CONVECTION = False ! [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_entrain_diffusive === ! === module MOM_regularize_layers === HMIX_MIN = 2.0 ! [m] default = 0.0 ! The minimum mixed layer depth if the mixed layer depth ! is determined dynamically. ! === module MOM_diabatic_aux === ! The following parameters are used for auxiliary diabatic processes. PRESSURE_DEPENDENT_FRAZIL = False ! [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_kappa_shear === ! Parameterization of shear-driven turbulence following Jackson, Hallberg and Legg, JPO 2008 USE_JACKSON_PARAM = False ! [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. USE_LIMITED_PATM_SSH = True ! If defined, return the full sea surface height ! with the correction for the atmospheric (and ! sea-ice) pressure limited by max_p_surf, instead ! of the full atmospheric pressure. ! === module MOM_CVMix_shear === ! Parameterization of shear-driven turbulence via CVMix (various options) USE_LMD94 = True ! [Boolean] default = False; HYCOM: shinst=T ! If true, use the Large-McWilliams-Doney (JGR 1994) ! shear mixing parameterization. USE_PP81 = False ! [Boolean] default = False ! If true, use the Pacanowski and Philander (JPO 1981) ! shear mixing parameterization. NU_ZERO = 50.0e-4 ! [nondim] default = 0.005; HYCOM: difs0=50.0e-4 ! Leading coefficient in KPP shear mixing. RI_ZERO = 0.7 ! [nondim] default = 0.7; HYCOM: rinfty=0.7 ! Critical Richardson for KPP shear mixing, NOTE this the internal mixing and this is not for setting the boundary layer depth. KPP_EXP = 3.0 ! [nondim] default = 3.0 ! Exponent of unitless factor of diffusivities, for KPP internal shear mixing scheme. BOTTOM_SKIP_SHEAR = 10.0 ! [m] default = 0.0; ! Thickness above the bottom where shear viscosity is not applied ! (set to zero to disable). ! === 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. ! === module MOM_opacity === VAR_PEN_SW = True ! [Boolean] default = False; HYCOM: jerlv0=-1 ! If true, use one of the CHL_A schemes specified by ! OPACITY_SCHEME to determine the e-folding depth of ! incoming short wave radiation. OPACITY_SCHEME = "MANIZZA_05" ! default = "MANIZZA_05" ! This character string specifies how chlorophyll ! concentrations are translated into opacities. Currently ! valid options include: ! MANIZZA_05 - Use Manizza et al., GRL, 2005. ! MOREL_88 - Use Morel, JGR, 1988. CHL_FROM_FILE = True ! [Boolean] default = True ! If true, chl_a is read from a file. CHL_FILE = "chl_mom6.nc" ! ! CHL_FILE is the file containing chl_a concentrations in ! the variable CHL_A. It is used when VAR_PEN_SW and ! CHL_FROM_FILE are true. BLUE_FRAC_SW = 0.5 ! [nondim] default = 0.5 ! The fraction of the penetrating shortwave radiation ! that is in the blue band. PEN_SW_NBANDS = 3 ! default = 1 ! The number of bands of penetrating shortwave radiation. OPACITY_LAND_VALUE = 10.0 ! [m-1] default = 10.0 ! The value to use for opacity over land. The default is ! 10 m-1 - a value for muddy water. ! === 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) ! === module MOM_tracer_hor_diff === KHTR = 35.0 ! [m2 s-1] default = 0.0; HYCOM: temdf2=0.005 ! The background along-isopycnal tracer diffusivity. ! === 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_CONTINUOUS = True ! [Boolean] default = True ! If true, uses a continuous reconstruction of T and S when finding neutral ! surfaces along which diffusion will happen. If false, a PPM discontinuous ! reconstruction of T and S is done which results in a higher order routine but ! exacts a higher computational cost. ! === module ocean_model_init === RESTART_CONTROL = -1 ! 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 = "C" ! default = "B" ! 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'. ENERGYSAVEDAYS = 1.0 ! [days] default = 1.0 ! The interval in units of TIMEUNIT between saves of the ! energies of the run and other globally summed diagnostics. 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. FLUXCONST = 0.5 ! [m day-1]; HYCOM: thkmls=15.0 [m/30days] ! 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 = "sss_mom6.nc" ! default = "salt_restore.nc" ! A file in which to find the surface salinity to use for restoring. SALT_RESTORE_VARIABLE = "SSS" ! default = "salt" ! The name of the surface salinity variable to read from SALT_RESTORE_FILE for restoring salinity. SRESTORE_AS_SFLUX = False ! [Boolean] default = False; HYCOM: True ! If true, the restoring of salinity is applied as a salt ! flux instead of as a freshwater flux. MAX_DELTA_SRESTORE = 999.0 ! [PSU or g kg-1] default = 999.0 ! The maximum salinity difference used in restoring terms. MASK_SRESTORE_UNDER_ICE = False ! [Boolean] default = False; HYCOM: False ! If true, disables SSS restoring under sea-ice based on a frazil ! criteria (SST<=Tf). Only used when RESTORE_SALINITY is True. GUST_CONST = 0.0 ! [Pa] default = 0.02 ! The background gustiness in the winds. ! === 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. ADJUST_NET_FRESH_WATER_TO_ZERO = True ! [Boolean] default = False; HYCOM: False ! If true, adjusts the net fresh-water forcing seen ! by the ocean (including restoring) to zero. ADJUST_NET_SRESTORE_TO_ZERO = False ! [Boolean] default = True; HYCOM: False ! If true, adjusts the salinity restoring seen to zero ! whether restoring is via a salt flux or virtual precip. USE_NET_FW_ADJUSTMENT_SIGN_BUG = False ! [Boolean] default = True ! If true, use the wrong sign for the adjustment to ! the net fresh-water. CD_TIDES = 0.0 ! [nondim] default = 1.0E-04 ! The drag coefficient that applies to the tides. USE_RIGID_SEA_ICE = True ! [Boolean] default = False ! If true, sea-ice is rigid enough to exert a ! nonhydrostatic pressure that resist vertical motion. SEA_ICE_RIGID_MASS = 100.0 ! [kg m-2] default = 1000.0 ! The mass of sea-ice per unit area at which the sea-ice ! starts to exhibit rigidity TIDES = False ! default = False. If true, apply tidal momentum forcing. ! === 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.