|
MOM6
|
Control structure for containing KPP parameters/data.
Definition at line 68 of file MOM_CVMix_KPP.F90.
Public variables and constants | |
| real | ri_crit |
| Critical bulk Richardson number (defines OBL depth) | |
| real | vonkarman |
| von Karman constant (dimensionless) | |
| real | cs |
| Parameter for computing velocity scale function (dimensionless) | |
| real | cs2 |
| Parameter for multiplying by non-local term. | |
| logical | enhance_diffusion |
| If True, add enhanced diffusivity at base of boundary layer. | |
| character(len=10) | interptype |
| Type of interpolation to compute bulk Richardson number. | |
| character(len=10) | interptype2 |
| Type of interpolation to compute diff and visc at OBL_depth. | |
| logical | computeekman |
| If True, compute Ekman depth limit for OBLdepth. | |
| logical | computemoninobukhov |
| If True, compute Monin-Obukhov limit for OBLdepth. | |
| logical | passivemode |
| If True, makes KPP passive meaning it does NOT alter the diffusivity. | |
| real | deepobloffset |
| If non-zero, is a distance from the bottom that the OBL can not penetrate through [m]. | |
| real | minobldepth |
| If non-zero, is a minimum depth for the OBL [m]. | |
| real | surf_layer_ext |
| Fraction of OBL depth considered in the surface layer [nondim]. | |
| real | minvtsqr |
| Min for the squared unresolved velocity used in Rib CVMix calculation [m2 s-2]. | |
| logical | fixedobldepth |
| If True, will fix the OBL depth at fixedOBLdepth_value. | |
| real | fixedobldepth_value |
| value for the fixed OBL depth when fixedOBLdepth==True. | |
| logical | debug |
| If True, calculate checksums and write debugging information. | |
| character(len=30) | matchtechnique |
| Method used in CVMix for setting diffusivity and NLT profile functions. | |
| integer | nlt_shape |
| MOM6 over-ride of CVMix NLT shape function. | |
| logical | applynonlocaltrans |
| If True, apply non-local transport to heat and scalars. | |
| integer | n_smooth |
| Number of times smoothing operator is applied on OBLdepth. | |
| logical | deepen_only |
| If true, apply OBLdepth smoothing at a cell only if the OBLdepth gets deeper. | |
| logical | kppzerodiffusivity |
| If True, will set diffusivity and viscosity from KPP to zero for testing purposes. | |
| logical | kppisadditive |
| If True, will add KPP diffusivity to initial diffusivity. If False, will replace initial diffusivity wherever KPP diffusivity is non-zero. | |
| real | min_thickness |
| A minimum thickness used to avoid division by small numbers in the vicinity of vanished layers. | |
| logical | correctsurflayeravg |
| If true, applies a correction to the averaging of surface layer properties. | |
| real | surflayerdepth |
| A guess at the depth of the surface layer (which should 0.1 of OBLdepth) [m]. | |
| integer | sw_method |
| Sets method for using shortwave radiation in surface buoyancy flux. | |
| logical | lt_k_enhancement |
| Flags if enhancing mixing coefficients due to LT. | |
| integer | lt_k_shape |
| Integer for constant or shape function enhancement. | |
| integer | lt_k_method |
| Integer for mixing coefficients LT method. | |
| real | kpp_k_enh_fac |
| Factor to multiply by K if Method is CONSTANT. | |
| logical | lt_vt2_enhancement |
| Flags if enhancing Vt2 due to LT. | |
| integer | lt_vt2_method |
| Integer for Vt2 LT method. | |
| real | kpp_vt2_enh_fac |
| Factor to multiply by VT2 if Method is CONSTANT. | |
| logical | stokes_mixing |
| Flag if model is mixing down Stokes gradient This is relavent for which current to use in RiB. | |
| type(cvmix_kpp_params_type), pointer | kpp_params => NULL() |
| CVMix parameters. | |
| type(diag_ctrl), pointer | diag => NULL() |
| Pointer to diagnostics control structure. | |
| integer | id_obldepth = -1 |
| Diagnostic handles. | |
| integer | id_bulkri = -1 |
| Diagnostic handles. | |
| integer | id_n = -1 |
| Diagnostic handles. | |
| integer | id_n2 = -1 |
| Diagnostic handles. | |
| integer | id_ws = -1 |
| Diagnostic handles. | |
| integer | id_vt2 = -1 |
| Diagnostic handles. | |
| integer | id_bulkuz2 = -1 |
| Diagnostic handles. | |
| integer | id_bulkdrho = -1 |
| Diagnostic handles. | |
| integer | id_ustar = -1 |
| Diagnostic handles. | |
| integer | id_buoyflux = -1 |
| Diagnostic handles. | |
| integer | id_qminussw = -1 |
| Diagnostic handles. | |
| integer | id_nets = -1 |
| Diagnostic handles. | |
| integer | id_sigma = -1 |
| Diagnostic handles. | |
| integer | id_kv_kpp = -1 |
| Diagnostic handles. | |
| integer | id_kt_kpp = -1 |
| Diagnostic handles. | |
| integer | id_ks_kpp = -1 |
| Diagnostic handles. | |
| integer | id_tsurf = -1 |
| Diagnostic handles. | |
| integer | id_ssurf = -1 |
| Diagnostic handles. | |
| integer | id_usurf = -1 |
| Diagnostic handles. | |
| integer | id_vsurf = -1 |
| Diagnostic handles. | |
| integer | id_kd_in = -1 |
| Diagnostic handles. | |
| integer | id_nltt = -1 |
| Diagnostic handles. | |
| integer | id_nlts = -1 |
| Diagnostic handles. | |
| integer | id_nlt_dsdt = -1 |
| Diagnostic handles. | |
| integer | id_nlt_dtdt = -1 |
| Diagnostic handles. | |
| integer | id_nlt_temp_budget = -1 |
| Diagnostic handles. | |
| integer | id_nlt_saln_budget = -1 |
| Diagnostic handles. | |
| integer | id_enhk = -1 |
| Diagnostic handles. | |
| integer | id_enhvt2 = -1 |
| Diagnostic handles. | |
| integer | id_enhw = -1 |
| Diagnostic handles. | |
| integer | id_la_sl = -1 |
| Diagnostic handles. | |
| integer | id_obldepth_original = -1 |
| Diagnostic handles. | |
| real, dimension(:,:), allocatable | obldepth |
| Depth (positive) of OBL [m]. | |
| real, dimension(:,:), allocatable | obldepth_original |
| Depth (positive) of OBL [m] without smoothing. | |
| real, dimension(:,:), allocatable | kobl |
| Level (+fraction) of OBL extent. | |
| real, dimension(:,:), allocatable | obldepthprev |
| previous Depth (positive) of OBL [m] | |
| real, dimension(:,:), allocatable | la_sl |
| Langmuir number used in KPP. | |
| real, dimension(:,:,:), allocatable | drho |
| Bulk difference in density [kg m-3]. | |
| real, dimension(:,:,:), allocatable | uz2 |
| Square of bulk difference in resolved velocity [m2 s-2]. | |
| real, dimension(:,:,:), allocatable | bulkri |
| Bulk Richardson number for each layer (dimensionless) | |
| real, dimension(:,:,:), allocatable | sigma |
| Sigma coordinate (dimensionless) | |
| real, dimension(:,:,:), allocatable | ws |
| Turbulent velocity scale for scalars [m s-1]. | |
| real, dimension(:,:,:), allocatable | n |
| Brunt-Vaisala frequency [s-1]. | |
| real, dimension(:,:,:), allocatable | n2 |
| Squared Brunt-Vaisala frequency [s-2]. | |
| real, dimension(:,:,:), allocatable | vt2 |
| Unresolved squared turbulence velocity for bulk Ri [m2 s-2]. | |
| real, dimension(:,:,:), allocatable | kt_kpp |
| Temp diffusivity from KPP [m2 s-1]. | |
| real, dimension(:,:,:), allocatable | ks_kpp |
| Scalar diffusivity from KPP [m2 s-1]. | |
| real, dimension(:,:,:), allocatable | kv_kpp |
| Viscosity due to KPP [m2 s-1]. | |
| real, dimension(:,:), allocatable | tsurf |
| Temperature of surface layer [degC]. | |
| real, dimension(:,:), allocatable | ssurf |
| Salinity of surface layer [ppt]. | |
| real, dimension(:,:), allocatable | usurf |
| i-velocity of surface layer [m s-1] | |
| real, dimension(:,:), allocatable | vsurf |
| j-velocity of surface layer [m s-1] | |
| real, dimension(:,:,:), allocatable | enhk |
| Enhancement for mixing coefficient. | |
| real, dimension(:,:,:), allocatable | enhvt2 |
| Enhancement for Vt2. | |