| 
    MOM6
    
   | 
 
Control structure for containing KPP parameters/data.
Definition at line 48 of file MOM_KPP.F90.
Public variables and constants | |
| real | ri_crit | 
| Critical bulk Richardson number (defines OBL depth)  More... | |
| real | vonkarman | 
| von Karman constant (dimensionless)  More... | |
| real | cs | 
| Parameter for computing velocity scale function (dimensionless)  More... | |
| real | cs2 | 
| Parameter for multiplying by non-local term.  More... | |
| logical | enhance_diffusion | 
| If True, add enhanced diffusivity at base of boundary layer.  More... | |
| character(len=10) | interptype | 
| Type of interpolation in determining OBL depth.  More... | |
| logical | computeekman | 
| If True, compute Ekman depth limit for OBLdepth.  More... | |
| logical | computemoninobukhov | 
| If True, compute Monin-Obukhov limit for OBLdepth.  More... | |
| logical | passivemode | 
| If True, makes KPP passive meaning it does NOT alter the diffusivity.  More... | |
| real | deepobloffset | 
| If non-zero, is a distance from the bottom that the OBL can not penetrate through (m)  More... | |
| real | minobldepth | 
| If non-zero, is a minimum depth for the OBL (m)  More... | |
| real | surf_layer_ext | 
| Fraction of OBL depth considered in the surface layer (nondim)  More... | |
| real | minvtsqr | 
| Min for the squared unresolved velocity used in Rib CVMix calculation (m2/s2)  More... | |
| logical | fixedobldepth | 
| If True, will fix the OBL depth at fixedOBLdepth_value.  More... | |
| real | fixedobldepth_value | 
| value for the fixed OBL depth when fixedOBLdepth==True.  More... | |
| logical | debug | 
| If True, calculate checksums and write debugging information.  More... | |
| character(len=30) | matchtechnique | 
| Method used in CVMix for setting diffusivity and NLT profile functions.  More... | |
| integer | nlt_shape | 
| MOM6 over-ride of CVMix NLT shape function.  More... | |
| logical | applynonlocaltrans | 
| If True, apply non-local transport to heat and scalars.  More... | |
| logical | kppzerodiffusivity | 
| If True, will set diffusivity and viscosity from KPP to zero; for testing purposes.  More... | |
| logical | kppisadditive | 
| If True, will add KPP diffusivity to initial diffusivity. If False, will replace initial diffusivity wherever KPP diffusivity is non-zero.  More... | |
| real | min_thickness | 
| A minimum thickness used to avoid division by small numbers in the vicinity of vanished layers.  More... | |
| logical | correctsurflayeravg | 
| If true, applies a correction to the averaging of surface layer properties.  More... | |
| real | surflayerdepth | 
| A guess at the depth of the surface layer (which should 0.1 of OBLdepth) (m)  More... | |
| integer | sw_method | 
| Sets method for using shortwave radiation in surface buoyancy flux.  More... | |
| type(cvmix_kpp_params_type), pointer | kpp_params => NULL() | 
| CVmix parameters.  More... | |
| type(diag_ctrl), pointer | diag => NULL() | 
| integer | id_obldepth = -1 | 
| integer | id_bulkri = -1 | 
| integer | id_n = -1 | 
| integer | id_n2 = -1 | 
| integer | id_ws = -1 | 
| integer | id_vt2 = -1 | 
| integer | id_bulkuz2 = -1 | 
| integer | id_bulkdrho = -1 | 
| integer | id_ustar = -1 | 
| integer | id_buoyflux = -1 | 
| integer | id_qminussw = -1 | 
| integer | id_nets = -1 | 
| integer | id_sigma = -1 | 
| integer | id_kv_kpp = -1 | 
| integer | id_kt_kpp = -1 | 
| integer | id_ks_kpp = -1 | 
| integer | id_tsurf = -1 | 
| integer | id_ssurf = -1 | 
| integer | id_usurf = -1 | 
| integer | id_vsurf = -1 | 
| integer | id_kd_in = -1 | 
| integer | id_nltt = -1 | 
| integer | id_nlts = -1 | 
| integer | id_nlt_dsdt = -1 | 
| integer | id_nlt_dtdt = -1 | 
| integer | id_nlt_temp_budget = -1 | 
| integer | id_nlt_saln_budget = -1 | 
| real, dimension(:,:), allocatable | obldepth | 
| Depth (positive) of OBL (m)  More... | |
| real, dimension(:,:,:), allocatable | drho | 
| Bulk difference in density (kg/m3)  More... | |
| real, dimension(:,:,:), allocatable | uz2 | 
| Square of bulk difference in resolved velocity (m2/s2)  More... | |
| real, dimension(:,:,:), allocatable | bulkri | 
| Bulk Richardson number for each layer (dimensionless)  More... | |
| real, dimension(:,:,:), allocatable | sigma | 
| Sigma coordinate (dimensionless)  More... | |
| real, dimension(:,:,:), allocatable | ws | 
| Turbulent velocity scale for scalars (m/s)  More... | |
| real, dimension(:,:,:), allocatable | n | 
| Brunt-Vaisala frequency (1/s)  More... | |
| real, dimension(:,:,:), allocatable | n2 | 
| Squared Brunt-Vaisala frequency (1/s2)  More... | |
| real, dimension(:,:,:), allocatable | vt2 | 
| Unresolved squared turbulence velocity for bulk Ri (m2/s2)  More... | |
| real, dimension(:,:,:), allocatable | kt_kpp | 
| Temp diffusivity from KPP (m2/s)  More... | |
| real, dimension(:,:,:), allocatable | ks_kpp | 
| Scalar diffusivity from KPP (m2/s)  More... | |
| real, dimension(:,:,:), allocatable | kv_kpp | 
| Viscosity due to KPP (m2/s)  More... | |
| real, dimension(:,:), allocatable | tsurf | 
| Temperature of surface layer (C)  More... | |
| real, dimension(:,:), allocatable | ssurf | 
| Salinity of surface layer (ppt)  More... | |
| real, dimension(:,:), allocatable | usurf | 
| i-velocity of surface layer (m/s)  More... | |
| real, dimension(:,:), allocatable | vsurf | 
| j-velocity of surface layer (m/s)  More... | |
| logical mom_kpp::kpp_cs::applynonlocaltrans | 
If True, apply non-local transport to heat and scalars.
Definition at line 70 of file MOM_KPP.F90.
| real, dimension(:,:,:), allocatable mom_kpp::kpp_cs::bulkri | 
Bulk Richardson number for each layer (dimensionless)
Definition at line 108 of file MOM_KPP.F90.
| logical mom_kpp::kpp_cs::computeekman | 
If True, compute Ekman depth limit for OBLdepth.
Definition at line 58 of file MOM_KPP.F90.
| logical mom_kpp::kpp_cs::computemoninobukhov | 
If True, compute Monin-Obukhov limit for OBLdepth.
Definition at line 59 of file MOM_KPP.F90.
| logical mom_kpp::kpp_cs::correctsurflayeravg | 
If true, applies a correction to the averaging of surface layer properties.
Definition at line 76 of file MOM_KPP.F90.
| real mom_kpp::kpp_cs::cs | 
Parameter for computing velocity scale function (dimensionless)
Definition at line 53 of file MOM_KPP.F90.
| real mom_kpp::kpp_cs::cs2 | 
Parameter for multiplying by non-local term.
Definition at line 54 of file MOM_KPP.F90.
| logical mom_kpp::kpp_cs::debug | 
If True, calculate checksums and write debugging information.
Definition at line 67 of file MOM_KPP.F90.
| real mom_kpp::kpp_cs::deepobloffset | 
If non-zero, is a distance from the bottom that the OBL can not penetrate through (m)
Definition at line 61 of file MOM_KPP.F90.
| type(diag_ctrl), pointer mom_kpp::kpp_cs::diag => NULL() | 
Definition at line 85 of file MOM_KPP.F90.
| real, dimension(:,:,:), allocatable mom_kpp::kpp_cs::drho | 
Bulk difference in density (kg/m3)
Definition at line 106 of file MOM_KPP.F90.
| logical mom_kpp::kpp_cs::enhance_diffusion | 
If True, add enhanced diffusivity at base of boundary layer.
Definition at line 56 of file MOM_KPP.F90.
| logical mom_kpp::kpp_cs::fixedobldepth | 
If True, will fix the OBL depth at fixedOBLdepth_value.
Definition at line 65 of file MOM_KPP.F90.
| real mom_kpp::kpp_cs::fixedobldepth_value | 
value for the fixed OBL depth when fixedOBLdepth==True.
Definition at line 66 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_bulkdrho = -1 | 
Definition at line 89 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_bulkri = -1 | 
Definition at line 86 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_bulkuz2 = -1 | 
Definition at line 89 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_buoyflux = -1 | 
Definition at line 90 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_kd_in = -1 | 
Definition at line 96 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_ks_kpp = -1 | 
Definition at line 93 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_kt_kpp = -1 | 
Definition at line 93 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_kv_kpp = -1 | 
Definition at line 92 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_n = -1 | 
Definition at line 87 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_n2 = -1 | 
Definition at line 87 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_nets = -1 | 
Definition at line 91 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_nlt_dsdt = -1 | 
Definition at line 99 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_nlt_dtdt = -1 | 
Definition at line 100 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_nlt_saln_budget = -1 | 
Definition at line 102 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_nlt_temp_budget = -1 | 
Definition at line 101 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_nlts = -1 | 
Definition at line 98 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_nltt = -1 | 
Definition at line 97 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_obldepth = -1 | 
Definition at line 86 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_qminussw = -1 | 
Definition at line 91 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_sigma = -1 | 
Definition at line 92 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_ssurf = -1 | 
Definition at line 94 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_tsurf = -1 | 
Definition at line 94 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_ustar = -1 | 
Definition at line 90 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_usurf = -1 | 
Definition at line 95 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_vsurf = -1 | 
Definition at line 95 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_vt2 = -1 | 
Definition at line 88 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::id_ws = -1 | 
Definition at line 88 of file MOM_KPP.F90.
| character(len=10) mom_kpp::kpp_cs::interptype | 
Type of interpolation in determining OBL depth.
Definition at line 57 of file MOM_KPP.F90.
| type(cvmix_kpp_params_type), pointer mom_kpp::kpp_cs::kpp_params => NULL() | 
CVmix parameters.
Definition at line 82 of file MOM_KPP.F90.
| logical mom_kpp::kpp_cs::kppisadditive | 
If True, will add KPP diffusivity to initial diffusivity. If False, will replace initial diffusivity wherever KPP diffusivity is non-zero.
Definition at line 72 of file MOM_KPP.F90.
| logical mom_kpp::kpp_cs::kppzerodiffusivity | 
If True, will set diffusivity and viscosity from KPP to zero; for testing purposes.
Definition at line 71 of file MOM_KPP.F90.
| real, dimension(:,:,:), allocatable mom_kpp::kpp_cs::ks_kpp | 
Scalar diffusivity from KPP (m2/s)
Definition at line 115 of file MOM_KPP.F90.
| real, dimension(:,:,:), allocatable mom_kpp::kpp_cs::kt_kpp | 
Temp diffusivity from KPP (m2/s)
Definition at line 114 of file MOM_KPP.F90.
| real, dimension(:,:,:), allocatable mom_kpp::kpp_cs::kv_kpp | 
Viscosity due to KPP (m2/s)
Definition at line 116 of file MOM_KPP.F90.
| character(len=30) mom_kpp::kpp_cs::matchtechnique | 
Method used in CVMix for setting diffusivity and NLT profile functions.
Definition at line 68 of file MOM_KPP.F90.
| real mom_kpp::kpp_cs::min_thickness | 
A minimum thickness used to avoid division by small numbers in the vicinity of vanished layers.
Definition at line 74 of file MOM_KPP.F90.
| real mom_kpp::kpp_cs::minobldepth | 
If non-zero, is a minimum depth for the OBL (m)
Definition at line 62 of file MOM_KPP.F90.
| real mom_kpp::kpp_cs::minvtsqr | 
Min for the squared unresolved velocity used in Rib CVMix calculation (m2/s2)
Definition at line 64 of file MOM_KPP.F90.
| real, dimension(:,:,:), allocatable mom_kpp::kpp_cs::n | 
Brunt-Vaisala frequency (1/s)
Definition at line 111 of file MOM_KPP.F90.
| real, dimension(:,:,:), allocatable mom_kpp::kpp_cs::n2 | 
Squared Brunt-Vaisala frequency (1/s2)
Definition at line 112 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::nlt_shape | 
MOM6 over-ride of CVMix NLT shape function.
Definition at line 69 of file MOM_KPP.F90.
| real, dimension(:,:), allocatable mom_kpp::kpp_cs::obldepth | 
Depth (positive) of OBL (m)
Definition at line 105 of file MOM_KPP.F90.
| logical mom_kpp::kpp_cs::passivemode | 
If True, makes KPP passive meaning it does NOT alter the diffusivity.
Definition at line 60 of file MOM_KPP.F90.
| real mom_kpp::kpp_cs::ri_crit | 
Critical bulk Richardson number (defines OBL depth)
Definition at line 51 of file MOM_KPP.F90.
| real, dimension(:,:,:), allocatable mom_kpp::kpp_cs::sigma | 
Sigma coordinate (dimensionless)
Definition at line 109 of file MOM_KPP.F90.
| real, dimension(:,:), allocatable mom_kpp::kpp_cs::ssurf | 
Salinity of surface layer (ppt)
Definition at line 118 of file MOM_KPP.F90.
| real mom_kpp::kpp_cs::surf_layer_ext | 
Fraction of OBL depth considered in the surface layer (nondim)
Definition at line 63 of file MOM_KPP.F90.
| real mom_kpp::kpp_cs::surflayerdepth | 
A guess at the depth of the surface layer (which should 0.1 of OBLdepth) (m)
Definition at line 77 of file MOM_KPP.F90.
| integer mom_kpp::kpp_cs::sw_method | 
Sets method for using shortwave radiation in surface buoyancy flux.
Definition at line 79 of file MOM_KPP.F90.
| real, dimension(:,:), allocatable mom_kpp::kpp_cs::tsurf | 
Temperature of surface layer (C)
Definition at line 117 of file MOM_KPP.F90.
| real, dimension(:,:), allocatable mom_kpp::kpp_cs::usurf | 
i-velocity of surface layer (m/s)
Definition at line 119 of file MOM_KPP.F90.
| real, dimension(:,:,:), allocatable mom_kpp::kpp_cs::uz2 | 
Square of bulk difference in resolved velocity (m2/s2)
Definition at line 107 of file MOM_KPP.F90.
| real mom_kpp::kpp_cs::vonkarman | 
von Karman constant (dimensionless)
Definition at line 52 of file MOM_KPP.F90.
| real, dimension(:,:), allocatable mom_kpp::kpp_cs::vsurf | 
j-velocity of surface layer (m/s)
Definition at line 120 of file MOM_KPP.F90.
| real, dimension(:,:,:), allocatable mom_kpp::kpp_cs::vt2 | 
Unresolved squared turbulence velocity for bulk Ri (m2/s2)
Definition at line 113 of file MOM_KPP.F90.
| real, dimension(:,:,:), allocatable mom_kpp::kpp_cs::ws | 
Turbulent velocity scale for scalars (m/s)
Definition at line 110 of file MOM_KPP.F90.