MOM6
mom_lateral_mixing_coeffs::varmix_cs Type Reference

Detailed Description

Variable mixing coefficients.

Definition at line 26 of file MOM_lateral_mixing_coeffs.F90.

Collaboration diagram for mom_lateral_mixing_coeffs::varmix_cs:
[legend]

Public variables and constants

logical use_variable_mixing
 If true, use the variable mixing. More...
 
logical resoln_scaled_kh
 If true, scale away the Laplacian viscosity when the deformation radius is well resolved. More...
 
logical resoln_scaled_khth
 If true, scale away the thickness diffusivity when the deformation radius is well resolved. More...
 
logical depth_scaled_khth
 If true, KHTH is scaled away when the depth is shallower than a reference depth. More...
 
logical resoln_scaled_khtr
 If true, scale away the tracer diffusivity when the deformation radius is well resolved. More...
 
logical interpolate_res_fn
 If true, interpolate the resolution function to the velocity points from the thickness points; otherwise interpolate the wave speed and calculate the resolution function independently at each point. More...
 
logical use_stored_slopes
 If true, stores isopycnal slopes in this structure. More...
 
logical resoln_use_ebt
 If true, uses the equivalent barotropic wave speed instead of first baroclinic wave for calculating the resolution fn. More...
 
logical khth_use_ebt_struct
 If true, uses the equivalent barotropic structure as the vertical structure of thickness diffusivity. More...
 
logical calculate_cg1
 If true, calls wave_speed() to calculate the first baroclinic wave speed and populate CScg1. This parameter is set depending on other parameters. More...
 
logical calculate_rd_dx
 If true, calculates Rd/dx and populate CSRd_dx_h. This parameter is set depending on other parameters. More...
 
logical calculate_res_fns
 If true, calculate all the resolution factors. This parameter is set depending on other parameters. More...
 
logical calculate_depth_fns
 If true, calculate all the depth factors. This parameter is set depending on other parameters. More...
 
logical calculate_eady_growth_rate
 If true, calculate all the Eady growth rate. This parameter is set depending on other parameters. More...
 
real, dimension(:,:), pointer sn_u => NULL()
 S*N at u-points [T-1 ~> s-1]. More...
 
real, dimension(:,:), pointer sn_v => NULL()
 S*N at v-points [T-1 ~> s-1]. More...
 
real, dimension(:,:), pointer l2u => NULL()
 Length scale^2 at u-points [L2 ~> m2]. More...
 
real, dimension(:,:), pointer l2v => NULL()
 Length scale^2 at v-points [L2 ~> m2]. More...
 
real, dimension(:,:), pointer cg1 => NULL()
 The first baroclinic gravity wave speed [L T-1 ~> m s-1]. More...
 
real, dimension(:,:), pointer res_fn_h => NULL()
 Non-dimensional function of the ratio the first baroclinic. More...
 
real, dimension(:,:), pointer res_fn_q => NULL()
 Non-dimensional function of the ratio the first baroclinic. More...
 
real, dimension(:,:), pointer res_fn_u => NULL()
 Non-dimensional function of the ratio the first baroclinic. More...
 
real, dimension(:,:), pointer res_fn_v => NULL()
 Non-dimensional function of the ratio the first baroclinic. More...
 
real, dimension(:,:), pointer depth_fn_u => NULL()
 Non-dimensional function of the ratio of the depth to. More...
 
real, dimension(:,:), pointer depth_fn_v => NULL()
 Non-dimensional function of the ratio of the depth to. More...
 
real, dimension(:,:), pointer beta_dx2_h => NULL()
 The magnitude of the gradient of the Coriolis parameter. More...
 
real, dimension(:,:), pointer beta_dx2_q => NULL()
 The magnitude of the gradient of the Coriolis parameter. More...
 
real, dimension(:,:), pointer beta_dx2_u => NULL()
 The magnitude of the gradient of the Coriolis parameter. More...
 
real, dimension(:,:), pointer beta_dx2_v => NULL()
 The magnitude of the gradient of the Coriolis parameter. More...
 
real, dimension(:,:), pointer f2_dx2_h => NULL()
 The Coriolis parameter squared times the grid. More...
 
real, dimension(:,:), pointer f2_dx2_q => NULL()
 The Coriolis parameter squared times the grid. More...
 
real, dimension(:,:), pointer f2_dx2_u => NULL()
 The Coriolis parameter squared times the grid. More...
 
real, dimension(:,:), pointer f2_dx2_v => NULL()
 The Coriolis parameter squared times the grid. More...
 
real, dimension(:,:), pointer rd_dx_h => NULL()
 Deformation radius over grid spacing [nondim]. More...
 
real, dimension(:,:,:), pointer slope_x => NULL()
 Zonal isopycnal slope [nondim]. More...
 
real, dimension(:,:,:), pointer slope_y => NULL()
 Meridional isopycnal slope [nondim]. More...
 
real, dimension(:,:,:), pointer n2_u => NULL()
 Brunt-Vaisala frequency at u-points [s-2]. More...
 
real, dimension(:,:,:), pointer n2_v => NULL()
 Brunt-Vaisala frequency at v-points [s-2]. More...
 
real, dimension(:,:,:), pointer ebt_struct => NULL()
 Vertical structure function to scale diffusivities with [nondim]. More...
 
real, dimension(:, :), allocatable laplac3_const_u
 Laplacian metric-dependent constants [L3 ~> m3]. More...
 
real, dimension(:, :), allocatable laplac3_const_v
 Laplacian metric-dependent constants [L3 ~> m3]. More...
 
real, dimension(:, :, :), allocatable kh_u_qg
 QG Leith GM coefficient at u-points [L2 T-1 ~> m2 s-1]. More...
 
real, dimension(:, :, :), allocatable kh_v_qg
 QG Leith GM coefficient at v-points [L2 T-1 ~> m2 s-1]. More...
 
logical use_visbeck
 Use Visbeck formulation for thickness diffusivity. More...
 
integer varmix_ktop
 Top layer to start downward integrals. More...
 
real visbeck_l_scale
 Fixed length scale in Visbeck formula. More...
 
real res_coef_khth
 A non-dimensional number that determines the function of resolution, used for thickness and tracer mixing, as: F = 1 / (1 + (Res_coef_khth*Ld/dx)^Res_fn_power) More...
 
real res_coef_visc
 A non-dimensional number that determines the function of resolution, used for lateral viscosity, as: F = 1 / (1 + (Res_coef_visc*Ld/dx)^Res_fn_power) More...
 
real depth_scaled_khth_h0
 The depth above which KHTH is linearly scaled away [Z ~> m]. More...
 
real depth_scaled_khth_exp
 The exponent used in the depth dependent scaling function for KHTH [nondim]. More...
 
real kappa_smooth
 A diffusivity for smoothing T/S in vanished layers [Z2 T-1 ~> m2 s-1]. More...
 
integer res_fn_power_khth
 The power of dx/Ld in the KhTh resolution function. Any positive integer power may be used, but even powers and especially 2 are coded to be more efficient. More...
 
integer res_fn_power_visc
 The power of dx/Ld in the Kh resolution function. Any positive integer power may be used, but even powers and especially 2 are coded to be more efficient. More...
 
real visbeck_s_max
 Upper bound on slope used in Eady growth rate [nondim]. More...
 
logical use_qg_leith_gm
 If true, uses the QG Leith viscosity as the GM coefficient. More...
 
logical use_beta_in_qg_leith
 If true, includes the beta term in the QG Leith GM coefficient. More...
 
type(wave_speed_cs), pointer wave_speed_csp => NULL()
 Wave speed control structure. More...
 
type(group_pass_type) pass_cg1
 For group halo pass. More...
 
logical debug
 If true, write out checksums of data for debugging. More...
 
integer id_sn_u =-1
 Diagnostic identifier. More...
 
integer id_sn_v =-1
 Diagnostic identifier. More...
 
integer id_l2u =-1
 Diagnostic identifier. More...
 
integer id_l2v =-1
 Diagnostic identifier. More...
 
integer id_res_fn = -1
 Diagnostic identifier. More...
 
integer id_n2_u =-1
 Diagnostic identifier. More...
 
integer id_n2_v =-1
 Diagnostic identifier. More...
 
integer id_s2_u =-1
 Diagnostic identifier. More...
 
integer id_s2_v =-1
 Diagnostic identifier. More...
 
integer id_rd_dx =-1
 Diagnostic identifier. More...
 
integer id_kh_u_qg = -1
 Diagnostic identifier. More...
 
integer id_kh_v_qg = -1
 Diagnostic identifier. More...
 
type(diag_ctrl), pointer diag
 A structure that is used to regulate the timing of diagnostic output. More...
 

Variables and constants

◆ beta_dx2_h

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::beta_dx2_h => NULL()

The magnitude of the gradient of the Coriolis parameter.

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ beta_dx2_q

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::beta_dx2_q => NULL()

The magnitude of the gradient of the Coriolis parameter.

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ beta_dx2_u

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::beta_dx2_u => NULL()

The magnitude of the gradient of the Coriolis parameter.

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ beta_dx2_v

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::beta_dx2_v => NULL()

The magnitude of the gradient of the Coriolis parameter.

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ calculate_cg1

logical mom_lateral_mixing_coeffs::varmix_cs::calculate_cg1

If true, calls wave_speed() to calculate the first baroclinic wave speed and populate CScg1. This parameter is set depending on other parameters.

Definition at line 46 of file MOM_lateral_mixing_coeffs.F90.

46  logical :: calculate_cg1 !< If true, calls wave_speed() to calculate the first

◆ calculate_depth_fns

logical mom_lateral_mixing_coeffs::varmix_cs::calculate_depth_fns

If true, calculate all the depth factors. This parameter is set depending on other parameters.

Definition at line 53 of file MOM_lateral_mixing_coeffs.F90.

53  logical :: calculate_depth_fns !< If true, calculate all the depth factors.

◆ calculate_eady_growth_rate

logical mom_lateral_mixing_coeffs::varmix_cs::calculate_eady_growth_rate

If true, calculate all the Eady growth rate. This parameter is set depending on other parameters.

Definition at line 55 of file MOM_lateral_mixing_coeffs.F90.

55  logical :: calculate_Eady_growth_rate !< If true, calculate all the Eady growth rate.

◆ calculate_rd_dx

logical mom_lateral_mixing_coeffs::varmix_cs::calculate_rd_dx

If true, calculates Rd/dx and populate CSRd_dx_h. This parameter is set depending on other parameters.

Definition at line 49 of file MOM_lateral_mixing_coeffs.F90.

49  logical :: calculate_Rd_dx !< If true, calculates Rd/dx and populate CS%Rd_dx_h.

◆ calculate_res_fns

logical mom_lateral_mixing_coeffs::varmix_cs::calculate_res_fns

If true, calculate all the resolution factors. This parameter is set depending on other parameters.

Definition at line 51 of file MOM_lateral_mixing_coeffs.F90.

51  logical :: calculate_res_fns !< If true, calculate all the resolution factors.

◆ cg1

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::cg1 => NULL()

The first baroclinic gravity wave speed [L T-1 ~> m s-1].

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ debug

logical mom_lateral_mixing_coeffs::varmix_cs::debug

If true, write out checksums of data for debugging.

Definition at line 149 of file MOM_lateral_mixing_coeffs.F90.

149  logical :: debug !< If true, write out checksums of data for debugging

◆ depth_fn_u

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::depth_fn_u => NULL()

Non-dimensional function of the ratio of the depth to.

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ depth_fn_v

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::depth_fn_v => NULL()

Non-dimensional function of the ratio of the depth to.

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ depth_scaled_khth

logical mom_lateral_mixing_coeffs::varmix_cs::depth_scaled_khth

If true, KHTH is scaled away when the depth is shallower than a reference depth.

Definition at line 32 of file MOM_lateral_mixing_coeffs.F90.

32  logical :: Depth_scaled_KhTh !< If true, KHTH is scaled away when the depth is

◆ depth_scaled_khth_exp

real mom_lateral_mixing_coeffs::varmix_cs::depth_scaled_khth_exp

The exponent used in the depth dependent scaling function for KHTH [nondim].

Definition at line 123 of file MOM_lateral_mixing_coeffs.F90.

123  real :: depth_scaled_khth_exp !< The exponent used in the depth dependent scaling function for KHTH [nondim]

◆ depth_scaled_khth_h0

real mom_lateral_mixing_coeffs::varmix_cs::depth_scaled_khth_h0

The depth above which KHTH is linearly scaled away [Z ~> m].

Definition at line 122 of file MOM_lateral_mixing_coeffs.F90.

122  real :: depth_scaled_khth_h0 !< The depth above which KHTH is linearly scaled away [Z ~> m]

◆ diag

type(diag_ctrl), pointer mom_lateral_mixing_coeffs::varmix_cs::diag

A structure that is used to regulate the timing of diagnostic output.

Definition at line 143 of file MOM_lateral_mixing_coeffs.F90.

143  type(diag_ctrl), pointer :: diag !< A structure that is used to regulate the

◆ ebt_struct

real, dimension(:,:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::ebt_struct => NULL()

Vertical structure function to scale diffusivities with [nondim].

Definition at line 93 of file MOM_lateral_mixing_coeffs.F90.

◆ f2_dx2_h

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::f2_dx2_h => NULL()

The Coriolis parameter squared times the grid.

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ f2_dx2_q

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::f2_dx2_q => NULL()

The Coriolis parameter squared times the grid.

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ f2_dx2_u

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::f2_dx2_u => NULL()

The Coriolis parameter squared times the grid.

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ f2_dx2_v

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::f2_dx2_v => NULL()

The Coriolis parameter squared times the grid.

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ id_kh_u_qg

integer mom_lateral_mixing_coeffs::varmix_cs::id_kh_u_qg = -1

Diagnostic identifier.

Definition at line 142 of file MOM_lateral_mixing_coeffs.F90.

◆ id_kh_v_qg

integer mom_lateral_mixing_coeffs::varmix_cs::id_kh_v_qg = -1

Diagnostic identifier.

Definition at line 142 of file MOM_lateral_mixing_coeffs.F90.

◆ id_l2u

integer mom_lateral_mixing_coeffs::varmix_cs::id_l2u =-1

Diagnostic identifier.

Definition at line 140 of file MOM_lateral_mixing_coeffs.F90.

◆ id_l2v

integer mom_lateral_mixing_coeffs::varmix_cs::id_l2v =-1

Diagnostic identifier.

Definition at line 140 of file MOM_lateral_mixing_coeffs.F90.

◆ id_n2_u

integer mom_lateral_mixing_coeffs::varmix_cs::id_n2_u =-1

Diagnostic identifier.

Definition at line 141 of file MOM_lateral_mixing_coeffs.F90.

141  integer :: id_N2_u=-1, id_n2_v=-1, id_s2_u=-1, id_s2_v=-1

◆ id_n2_v

integer mom_lateral_mixing_coeffs::varmix_cs::id_n2_v =-1

Diagnostic identifier.

Definition at line 141 of file MOM_lateral_mixing_coeffs.F90.

◆ id_rd_dx

integer mom_lateral_mixing_coeffs::varmix_cs::id_rd_dx =-1

Diagnostic identifier.

Definition at line 142 of file MOM_lateral_mixing_coeffs.F90.

142  integer :: id_Rd_dx=-1, id_kh_u_qg = -1, id_kh_v_qg = -1

◆ id_res_fn

integer mom_lateral_mixing_coeffs::varmix_cs::id_res_fn = -1

Diagnostic identifier.

Definition at line 140 of file MOM_lateral_mixing_coeffs.F90.

◆ id_s2_u

integer mom_lateral_mixing_coeffs::varmix_cs::id_s2_u =-1

Diagnostic identifier.

Definition at line 141 of file MOM_lateral_mixing_coeffs.F90.

◆ id_s2_v

integer mom_lateral_mixing_coeffs::varmix_cs::id_s2_v =-1

Diagnostic identifier.

Definition at line 141 of file MOM_lateral_mixing_coeffs.F90.

◆ id_sn_u

integer mom_lateral_mixing_coeffs::varmix_cs::id_sn_u =-1

Diagnostic identifier.

Definition at line 140 of file MOM_lateral_mixing_coeffs.F90.

140  integer :: id_SN_u=-1, id_sn_v=-1, id_l2u=-1, id_l2v=-1, id_res_fn = -1

◆ id_sn_v

integer mom_lateral_mixing_coeffs::varmix_cs::id_sn_v =-1

Diagnostic identifier.

Definition at line 140 of file MOM_lateral_mixing_coeffs.F90.

◆ interpolate_res_fn

logical mom_lateral_mixing_coeffs::varmix_cs::interpolate_res_fn

If true, interpolate the resolution function to the velocity points from the thickness points; otherwise interpolate the wave speed and calculate the resolution function independently at each point.

Definition at line 36 of file MOM_lateral_mixing_coeffs.F90.

36  logical :: interpolate_Res_fn !< If true, interpolate the resolution function

◆ kappa_smooth

real mom_lateral_mixing_coeffs::varmix_cs::kappa_smooth

A diffusivity for smoothing T/S in vanished layers [Z2 T-1 ~> m2 s-1].

Definition at line 124 of file MOM_lateral_mixing_coeffs.F90.

124  real :: kappa_smooth !< A diffusivity for smoothing T/S in vanished layers [Z2 T-1 ~> m2 s-1]

◆ kh_u_qg

real, dimension( : , : , : ), allocatable mom_lateral_mixing_coeffs::varmix_cs::kh_u_qg

QG Leith GM coefficient at u-points [L2 T-1 ~> m2 s-1].

Definition at line 106 of file MOM_lateral_mixing_coeffs.F90.

106  real ALLOCABLE_, dimension(NIMEMB_PTR_,NJMEM_,NKMEM_) :: &
107  KH_u_QG !< QG Leith GM coefficient at u-points [L2 T-1 ~> m2 s-1]

◆ kh_v_qg

real, dimension( : , : , : ), allocatable mom_lateral_mixing_coeffs::varmix_cs::kh_v_qg

QG Leith GM coefficient at v-points [L2 T-1 ~> m2 s-1].

Definition at line 109 of file MOM_lateral_mixing_coeffs.F90.

109  real ALLOCABLE_, dimension(NIMEM_,NJMEMB_PTR_,NKMEM_) :: &
110  KH_v_QG !< QG Leith GM coefficient at v-points [L2 T-1 ~> m2 s-1]

◆ khth_use_ebt_struct

logical mom_lateral_mixing_coeffs::varmix_cs::khth_use_ebt_struct

If true, uses the equivalent barotropic structure as the vertical structure of thickness diffusivity.

Definition at line 44 of file MOM_lateral_mixing_coeffs.F90.

44  logical :: khth_use_ebt_struct !< If true, uses the equivalent barotropic structure

◆ l2u

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::l2u => NULL()

Length scale^2 at u-points [L2 ~> m2].

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ l2v

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::l2v => NULL()

Length scale^2 at v-points [L2 ~> m2].

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ laplac3_const_u

real, dimension( : , : ), allocatable mom_lateral_mixing_coeffs::varmix_cs::laplac3_const_u

Laplacian metric-dependent constants [L3 ~> m3].

Definition at line 100 of file MOM_lateral_mixing_coeffs.F90.

100  real ALLOCABLE_, dimension(NIMEMB_PTR_,NJMEM_) :: &
101  Laplac3_const_u !< Laplacian metric-dependent constants [L3 ~> m3]

◆ laplac3_const_v

real, dimension( : , : ), allocatable mom_lateral_mixing_coeffs::varmix_cs::laplac3_const_v

Laplacian metric-dependent constants [L3 ~> m3].

Definition at line 103 of file MOM_lateral_mixing_coeffs.F90.

103  real ALLOCABLE_, dimension(NIMEM_,NJMEMB_PTR_) :: &
104  Laplac3_const_v !< Laplacian metric-dependent constants [L3 ~> m3]

◆ n2_u

real, dimension(:,:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::n2_u => NULL()

Brunt-Vaisala frequency at u-points [s-2].

Definition at line 93 of file MOM_lateral_mixing_coeffs.F90.

◆ n2_v

real, dimension(:,:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::n2_v => NULL()

Brunt-Vaisala frequency at v-points [s-2].

Definition at line 93 of file MOM_lateral_mixing_coeffs.F90.

◆ pass_cg1

type(group_pass_type) mom_lateral_mixing_coeffs::varmix_cs::pass_cg1

For group halo pass.

Definition at line 148 of file MOM_lateral_mixing_coeffs.F90.

148  type(group_pass_type) :: pass_cg1 !< For group halo pass

◆ rd_dx_h

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::rd_dx_h => NULL()

Deformation radius over grid spacing [nondim].

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ res_coef_khth

real mom_lateral_mixing_coeffs::varmix_cs::res_coef_khth

A non-dimensional number that determines the function of resolution, used for thickness and tracer mixing, as: F = 1 / (1 + (Res_coef_khth*Ld/dx)^Res_fn_power)

Definition at line 116 of file MOM_lateral_mixing_coeffs.F90.

116  real :: Res_coef_khth !< A non-dimensional number that determines the function

◆ res_coef_visc

real mom_lateral_mixing_coeffs::varmix_cs::res_coef_visc

A non-dimensional number that determines the function of resolution, used for lateral viscosity, as: F = 1 / (1 + (Res_coef_visc*Ld/dx)^Res_fn_power)

Definition at line 119 of file MOM_lateral_mixing_coeffs.F90.

119  real :: Res_coef_visc !< A non-dimensional number that determines the function

◆ res_fn_h

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::res_fn_h => NULL()

Non-dimensional function of the ratio the first baroclinic.

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ res_fn_power_khth

integer mom_lateral_mixing_coeffs::varmix_cs::res_fn_power_khth

The power of dx/Ld in the KhTh resolution function. Any positive integer power may be used, but even powers and especially 2 are coded to be more efficient.

Definition at line 125 of file MOM_lateral_mixing_coeffs.F90.

125  integer :: Res_fn_power_khth !< The power of dx/Ld in the KhTh resolution function. Any

◆ res_fn_power_visc

integer mom_lateral_mixing_coeffs::varmix_cs::res_fn_power_visc

The power of dx/Ld in the Kh resolution function. Any positive integer power may be used, but even powers and especially 2 are coded to be more efficient.

Definition at line 128 of file MOM_lateral_mixing_coeffs.F90.

128  integer :: Res_fn_power_visc !< The power of dx/Ld in the Kh resolution function. Any

◆ res_fn_q

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::res_fn_q => NULL()

Non-dimensional function of the ratio the first baroclinic.

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ res_fn_u

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::res_fn_u => NULL()

Non-dimensional function of the ratio the first baroclinic.

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ res_fn_v

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::res_fn_v => NULL()

Non-dimensional function of the ratio the first baroclinic.

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ resoln_scaled_kh

logical mom_lateral_mixing_coeffs::varmix_cs::resoln_scaled_kh

If true, scale away the Laplacian viscosity when the deformation radius is well resolved.

Definition at line 28 of file MOM_lateral_mixing_coeffs.F90.

28  logical :: Resoln_scaled_Kh !< If true, scale away the Laplacian viscosity

◆ resoln_scaled_khth

logical mom_lateral_mixing_coeffs::varmix_cs::resoln_scaled_khth

If true, scale away the thickness diffusivity when the deformation radius is well resolved.

Definition at line 30 of file MOM_lateral_mixing_coeffs.F90.

30  logical :: Resoln_scaled_KhTh !< If true, scale away the thickness diffusivity

◆ resoln_scaled_khtr

logical mom_lateral_mixing_coeffs::varmix_cs::resoln_scaled_khtr

If true, scale away the tracer diffusivity when the deformation radius is well resolved.

Definition at line 34 of file MOM_lateral_mixing_coeffs.F90.

34  logical :: Resoln_scaled_KhTr !< If true, scale away the tracer diffusivity

◆ resoln_use_ebt

logical mom_lateral_mixing_coeffs::varmix_cs::resoln_use_ebt

If true, uses the equivalent barotropic wave speed instead of first baroclinic wave for calculating the resolution fn.

Definition at line 42 of file MOM_lateral_mixing_coeffs.F90.

42  logical :: Resoln_use_ebt !< If true, uses the equivalent barotropic wave speed instead

◆ slope_x

real, dimension(:,:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::slope_x => NULL()

Zonal isopycnal slope [nondim].

Definition at line 93 of file MOM_lateral_mixing_coeffs.F90.

93  real, dimension(:,:,:), pointer :: &
94  slope_x => null(), & !< Zonal isopycnal slope [nondim]
95  slope_y => null(), & !< Meridional isopycnal slope [nondim]
96  !### These are posted as diagnostics but are never set.
97  n2_u => null(), & !< Brunt-Vaisala frequency at u-points [s-2]
98  n2_v => null(), & !< Brunt-Vaisala frequency at v-points [s-2]
99  ebt_struct => null() !< Vertical structure function to scale diffusivities with [nondim]

◆ slope_y

real, dimension(:,:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::slope_y => NULL()

Meridional isopycnal slope [nondim].

Definition at line 93 of file MOM_lateral_mixing_coeffs.F90.

◆ sn_u

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::sn_u => NULL()

S*N at u-points [T-1 ~> s-1].

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

57  real, dimension(:,:), pointer :: &
58  SN_u => null(), & !< S*N at u-points [T-1 ~> s-1]
59  sn_v => null(), & !< S*N at v-points [T-1 ~> s-1]
60  l2u => null(), & !< Length scale^2 at u-points [L2 ~> m2]
61  l2v => null(), & !< Length scale^2 at v-points [L2 ~> m2]
62  cg1 => null(), & !< The first baroclinic gravity wave speed [L T-1 ~> m s-1].
63  res_fn_h => null(), & !< Non-dimensional function of the ratio the first baroclinic
64  !! deformation radius to the grid spacing at h points [nondim].
65  res_fn_q => null(), & !< Non-dimensional function of the ratio the first baroclinic
66  !! deformation radius to the grid spacing at q points [nondim].
67  res_fn_u => null(), & !< Non-dimensional function of the ratio the first baroclinic
68  !! deformation radius to the grid spacing at u points [nondim].
69  res_fn_v => null(), & !< Non-dimensional function of the ratio the first baroclinic
70  !! deformation radius to the grid spacing at v points [nondim].
71  depth_fn_u => null(), & !< Non-dimensional function of the ratio of the depth to
72  !! a reference depth (maximum 1) at u points [nondim]
73  depth_fn_v => null(), & !< Non-dimensional function of the ratio of the depth to
74  !! a reference depth (maximum 1) at v points [nondim]
75  beta_dx2_h => null(), & !< The magnitude of the gradient of the Coriolis parameter
76  !! times the grid spacing squared at h points [L T-1 ~> m s-1].
77  beta_dx2_q => null(), & !< The magnitude of the gradient of the Coriolis parameter
78  !! times the grid spacing squared at q points [L T-1 ~> m s-1].
79  beta_dx2_u => null(), & !< The magnitude of the gradient of the Coriolis parameter
80  !! times the grid spacing squared at u points [L T-1 ~> m s-1].
81  beta_dx2_v => null(), & !< The magnitude of the gradient of the Coriolis parameter
82  !! times the grid spacing squared at v points [L T-1 ~> m s-1].
83  f2_dx2_h => null(), & !< The Coriolis parameter squared times the grid
84  !! spacing squared at h [L2 T-2 ~> m2 s-2].
85  f2_dx2_q => null(), & !< The Coriolis parameter squared times the grid
86  !! spacing squared at q [L2 T-2 ~> m2 s-2].
87  f2_dx2_u => null(), & !< The Coriolis parameter squared times the grid
88  !! spacing squared at u [L2 T-2 ~> m2 s-2].
89  f2_dx2_v => null(), & !< The Coriolis parameter squared times the grid
90  !! spacing squared at v [L2 T-2 ~> m2 s-2].
91  rd_dx_h => null() !< Deformation radius over grid spacing [nondim]

◆ sn_v

real, dimension(:,:), pointer mom_lateral_mixing_coeffs::varmix_cs::sn_v => NULL()

S*N at v-points [T-1 ~> s-1].

Definition at line 57 of file MOM_lateral_mixing_coeffs.F90.

◆ use_beta_in_qg_leith

logical mom_lateral_mixing_coeffs::varmix_cs::use_beta_in_qg_leith

If true, includes the beta term in the QG Leith GM coefficient.

Definition at line 135 of file MOM_lateral_mixing_coeffs.F90.

135  logical :: use_beta_in_QG_Leith !< If true, includes the beta term in the QG Leith GM coefficient

◆ use_qg_leith_gm

logical mom_lateral_mixing_coeffs::varmix_cs::use_qg_leith_gm

If true, uses the QG Leith viscosity as the GM coefficient.

Definition at line 134 of file MOM_lateral_mixing_coeffs.F90.

134  logical :: use_QG_Leith_GM !< If true, uses the QG Leith viscosity as the GM coefficient

◆ use_stored_slopes

logical mom_lateral_mixing_coeffs::varmix_cs::use_stored_slopes

If true, stores isopycnal slopes in this structure.

Definition at line 41 of file MOM_lateral_mixing_coeffs.F90.

41  logical :: use_stored_slopes !< If true, stores isopycnal slopes in this structure.

◆ use_variable_mixing

logical mom_lateral_mixing_coeffs::varmix_cs::use_variable_mixing

If true, use the variable mixing.

Definition at line 27 of file MOM_lateral_mixing_coeffs.F90.

27  logical :: use_variable_mixing !< If true, use the variable mixing.

◆ use_visbeck

logical mom_lateral_mixing_coeffs::varmix_cs::use_visbeck

Use Visbeck formulation for thickness diffusivity.

Definition at line 113 of file MOM_lateral_mixing_coeffs.F90.

113  logical :: use_Visbeck !< Use Visbeck formulation for thickness diffusivity

◆ varmix_ktop

integer mom_lateral_mixing_coeffs::varmix_cs::varmix_ktop

Top layer to start downward integrals.

Definition at line 114 of file MOM_lateral_mixing_coeffs.F90.

114  integer :: VarMix_Ktop !< Top layer to start downward integrals

◆ visbeck_l_scale

real mom_lateral_mixing_coeffs::varmix_cs::visbeck_l_scale

Fixed length scale in Visbeck formula.

Definition at line 115 of file MOM_lateral_mixing_coeffs.F90.

115  real :: Visbeck_L_scale !< Fixed length scale in Visbeck formula

◆ visbeck_s_max

real mom_lateral_mixing_coeffs::varmix_cs::visbeck_s_max

Upper bound on slope used in Eady growth rate [nondim].

Definition at line 131 of file MOM_lateral_mixing_coeffs.F90.

131  real :: Visbeck_S_max !< Upper bound on slope used in Eady growth rate [nondim].

◆ wave_speed_csp

type(wave_speed_cs), pointer mom_lateral_mixing_coeffs::varmix_cs::wave_speed_csp => NULL()

Wave speed control structure.

Definition at line 147 of file MOM_lateral_mixing_coeffs.F90.

147  type(wave_speed_CS), pointer :: wave_speed_CSp => null() !< Wave speed control structure

The documentation for this type was generated from the following file: