MOM6
|
Control structure for horizontal viscosity.
Definition at line 29 of file MOM_hor_visc.F90.
Public variables and constants | |
logical | laplacian |
Use a Laplacian horizontal viscosity if true. | |
logical | biharmonic |
Use a biharmonic horizontal viscosity if true. | |
logical | no_slip |
If true, no slip boundary conditions are used. Otherwise free slip boundary conditions are assumed. The implementation of the free slip boundary conditions on a C-grid is much cleaner than the no slip boundary conditions. The use of free slip b.c.s is strongly encouraged. The no slip b.c.s are not implemented with the biharmonic viscosity. | |
logical | bound_kh |
If true, the Laplacian coefficient is locally limited to guarantee stability. | |
logical | better_bound_kh |
If true, use a more careful bounding of the Laplacian viscosity to guarantee stability. | |
logical | bound_ah |
If true, the biharmonic coefficient is locally limited to guarantee stability. | |
logical | better_bound_ah |
If true, use a more careful bounding of the biharmonic viscosity to guarantee stability. | |
real | bound_coef |
The nondimensional coefficient of the ratio of the viscosity bounds to the theoretical maximum for stability without considering other terms [nondim]. The default is 0.8. | |
logical | smagorinsky_kh |
If true, use Smagorinsky nonlinear eddy viscosity. KH is the background value. | |
logical | smagorinsky_ah |
If true, use a biharmonic form of Smagorinsky nonlinear eddy viscosity. AH is the background. | |
logical | leith_kh |
If true, use 2D Leith nonlinear eddy viscosity. KH is the background value. | |
logical | modified_leith |
If true, use extra component of Leith viscosity to damp divergent flow. To use, still set Leith_Kh=.TRUE. | |
logical | use_beta_in_leith |
If true, includes the beta term in the Leith viscosity. | |
logical | leith_ah |
If true, use a biharmonic form of 2D Leith nonlinear eddy viscosity. AH is the background. | |
logical | use_qg_leith_visc |
If true, use QG Leith nonlinear eddy viscosity. KH is the background value. | |
logical | bound_coriolis |
If true & SMAGORINSKY_AH is used, the biharmonic viscosity is modified to include a term that scales quadratically with the velocity shears. | |
logical | use_kh_bg_2d |
Read 2d background viscosity from a file. | |
real | kh_bg_min |
The minimum value allowed for Laplacian horizontal viscosity [m2 T-1 ~> m2 s-1]. The default is 0.0. | |
logical | use_land_mask |
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 to maintain answers with legacy experiments but should be changed to True for new experiments. | |
logical | anisotropic |
If true, allow anisotropic component to the viscosity. | |
real | kh_aniso |
The anisotropic viscosity [m2 T-1 ~> m2 s-1]. | |
logical | dynamic_aniso |
If true, the anisotropic viscosity is recomputed as a function of state. This is set depending on ANISOTROPIC_MODE. | |
logical | res_scale_meke |
If true, the viscosity contribution from MEKE is scaled by the resolution function. | |
logical | use_gme |
If true, use GME backscatter scheme. | |
logical | answers_2018 |
If true, use the order of arithmetic and expressions that recover the answers from the end of 2018. Otherwise, use updated and more robust forms of the same expressions. | |
real, dimension(:, :), allocatable | kh_bg_xx |
The background Laplacian viscosity at h points [m2 T-1 ~> m2 s-1]. The actual viscosity may be the larger of this viscosity and the Smagorinsky and Leith viscosities. | |
real, dimension(:, :), allocatable | kh_bg_2d |
The background Laplacian viscosity at h points [m2 T-1 ~> m2 s-1]. The actual viscosity may be the larger of this viscosity and the Smagorinsky and Leith viscosities. | |
real, dimension(:, :), allocatable | ah_bg_xx |
The background biharmonic viscosity at h points [m4 T-1 ~> m4 s-1]. The actual viscosity may be the larger of this viscosity and the Smagorinsky and Leith viscosities. | |
real, dimension(:, :), allocatable | biharm5_const2_xx |
A constant relating the biharmonic viscosity to the square of the velocity shear [m4 s]. This value is set to be the magnitude of the Coriolis terms once the velocity differences reach a value of order 1/2 MAXVEL. | |
real, dimension(:, :), allocatable | reduction_xx |
The amount by which stresses through h points are reduced due to partial barriers. Nondimensional. | |
real, dimension(:, :), allocatable | kh_max_xx |
The maximum permitted Laplacian viscosity [m2 T-1 ~> m2 s-1]. | |
real, dimension(:, :), allocatable | ah_max_xx |
The maximum permitted biharmonic viscosity [m4 T-1 ~> m4 s-1]. | |
real, dimension(:, :), allocatable | n1n2_h |
Factor n1*n2 in the anisotropic direction tensor at h-points. | |
real, dimension(:, :), allocatable | n1n1_m_n2n2_h |
Factor n1**2-n2**2 in the anisotropic direction tensor at h-points. | |
real, dimension(:, :), allocatable | kh_bg_xy |
The background Laplacian viscosity at q points [m2 T-1 ~> m2 s-1]. The actual viscosity may be the larger of this viscosity and the Smagorinsky and Leith viscosities. | |
real, dimension(:, :), allocatable | ah_bg_xy |
The background biharmonic viscosity at q points [m4 T-1 ~> m4 s-1]. The actual viscosity may be the larger of this viscosity and the Smagorinsky and Leith viscosities. | |
real, dimension(:, :), allocatable | biharm5_const2_xy |
A constant relating the biharmonic viscosity to the square of the velocity shear [m4 s]. This value is set to be the magnitude of the Coriolis terms once the velocity differences reach a value of order 1/2 MAXVEL. | |
real, dimension(:, :), allocatable | reduction_xy |
The amount by which stresses through q points are reduced due to partial barriers [nondim]. | |
real, dimension(:, :), allocatable | kh_max_xy |
The maximum permitted Laplacian viscosity [m2 T-1 ~> m2 s-1]. | |
real, dimension(:, :), allocatable | ah_max_xy |
The maximum permitted biharmonic viscosity [m4 T-1 ~> m4 s-1]. | |
real, dimension(:, :), allocatable | n1n2_q |
Factor n1*n2 in the anisotropic direction tensor at q-points. | |
real, dimension(:, :), allocatable | n1n1_m_n2n2_q |
Factor n1**2-n2**2 in the anisotropic direction tensor at q-points. | |
real, dimension(:, :), allocatable | dx2h |
Pre-calculated dx^2 at h points [m2]. | |
real, dimension(:, :), allocatable | dy2h |
Pre-calculated dy^2 at h points [m2]. | |
real, dimension(:, :), allocatable | dx_dyt |
Pre-calculated dx/dy at h points [nondim]. | |
real, dimension(:, :), allocatable | dy_dxt |
Pre-calculated dy/dx at h points [nondim]. | |
real, dimension(:, :), allocatable | dx2q |
Pre-calculated dx^2 at q points [m2]. | |
real, dimension(:, :), allocatable | dy2q |
Pre-calculated dy^2 at q points [m2]. | |
real, dimension(:, :), allocatable | dx_dybu |
Pre-calculated dx/dy at q points [nondim]. | |
real, dimension(:, :), allocatable | dy_dxbu |
Pre-calculated dy/dx at q points [nondim]. | |
real, dimension(:, :), allocatable | idx2dycu |
1/(dx^2 dy) at u points [m-3] | |
real, dimension(:, :), allocatable | idxdy2u |
1/(dx dy^2) at u points [m-3] | |
real, dimension(:, :), allocatable | idx2dycv |
1/(dx^2 dy) at v points [m-3] | |
real, dimension(:, :), allocatable | idxdy2v |
1/(dx dy^2) at v points [m-3] | |
real, dimension(:, :), allocatable | laplac2_const_xx |
Laplacian metric-dependent constants [m2]. | |
real, dimension(:, :), allocatable | biharm5_const_xx |
Biharmonic metric-dependent constants [m5]. | |
real, dimension(:, :), allocatable | laplac3_const_xx |
Laplacian metric-dependent constants [m3]. | |
real, dimension(:, :), allocatable | biharm_const_xx |
Biharmonic metric-dependent constants [m4]. | |
real, dimension(:, :), allocatable | biharm_const2_xx |
Biharmonic metric-dependent constants [T m4 ~> s m4]. | |
real, dimension(:, :), allocatable | laplac2_const_xy |
Laplacian metric-dependent constants [m2]. | |
real, dimension(:, :), allocatable | biharm5_const_xy |
Biharmonic metric-dependent constants [m5]. | |
real, dimension(:, :), allocatable | laplac3_const_xy |
Laplacian metric-dependent constants [m3]. | |
real, dimension(:, :), allocatable | biharm_const_xy |
Biharmonic metric-dependent constants [m4]. | |
real, dimension(:, :), allocatable | biharm_const2_xy |
Biharmonic metric-dependent constants [T m4 ~> s m4]. | |
type(diag_ctrl), pointer | diag => NULL() |
structure to regulate diagnostics | |
integer | id_diffu = -1 |
Diagnostic id. | |
integer | id_diffv = -1 |
Diagnostic id. | |
integer | id_ah_h = -1 |
Diagnostic id. | |
integer | id_ah_q = -1 |
Diagnostic id. | |
integer | id_kh_h = -1 |
Diagnostic id. | |
integer | id_kh_q = -1 |
Diagnostic id. | |
integer | id_gme_coeff_h = -1 |
Diagnostic id. | |
integer | id_gme_coeff_q = -1 |
Diagnostic id. | |
integer | id_vort_xy_q = -1 |
Diagnostic id. | |
integer | id_div_xx_h = -1 |
Diagnostic id. | |
integer | id_frictwork = -1 |
Diagnostic id. | |
integer | id_frictworkintz = -1 |
Diagnostic id. | |
integer | id_frictworkmax = -1 |
Diagnostic id. | |
integer | id_frictwork_diss = -1 |
Diagnostic id. | |
integer | id_frictwork_gme = -1 |
Diagnostic id. | |