MOM6
mom_set_visc::set_visc_cs Type Reference

Detailed Description

Control structure for MOM_set_visc.

Definition at line 44 of file MOM_set_viscosity.F90.

Collaboration diagram for mom_set_visc::set_visc_cs:
[legend]

Public variables and constants

real hbbl
 The static bottom boundary layer thickness [H ~> m or kg m-2]. More...
 
real cdrag
 The quadratic drag coefficient. More...
 
real c_smag
 The Laplacian Smagorinsky coefficient for calculating the drag in channels. More...
 
real drag_bg_vel
 An assumed unresolved background velocity for calculating the bottom drag [L T-1 ~> m s-1]. More...
 
real bbl_thick_min
 The minimum bottom boundary layer thickness [H ~> m or kg m-2]. This might be Kv / (cdrag * drag_bg_vel) to give Kv as the minimum near-bottom viscosity. More...
 
real htbl_shelf
 A nominal thickness of the surface boundary layer for use in calculating the near-surface velocity [H ~> m or kg m-2]. More...
 
real htbl_shelf_min
 The minimum surface boundary layer thickness [H ~> m or kg m-2]. More...
 
real kv_bbl_min
 The minimum viscosity in the bottom boundary layer [Z2 T-1 ~> m2 s-1]. More...
 
real kv_tbl_min
 The minimum viscosity in the top boundary layer [Z2 T-1 ~> m2 s-1]. More...
 
logical bottomdraglaw
 If true, the bottom stress is calculated with a drag law 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 whether linear_drag is true. More...
 
logical bbl_use_eos
 If true, use the equation of state in determining the properties of the bottom boundary layer. More...
 
logical linear_drag
 If true, the drag law is cdrag*DRAG_BG_VEL*u. More...
 
logical channel_drag
 If true, the drag is exerted directly on each layer according to what fraction of the bottom they overlie. More...
 
logical rino_mix
 If true, use Richardson number dependent mixing. More...
 
logical dynamic_viscous_ml
 If true, use a bulk Richardson number criterion to determine the mixed layer thickness for viscosity. More...
 
real bulk_ri_ml
 The bulk mixed layer used to determine the thickness of the viscous mixed layer. Nondim. More...
 
real omega
 The Earth's rotation rate [T-1 ~> s-1]. More...
 
real ustar_min
 A minimum value of ustar to avoid numerical problems [Z T-1 ~> m s-1]. If the value is small enough, this should not affect the solution. More...
 
real tke_decay
 The ratio of the natural Ekman depth to the TKE decay scale, nondimensional. More...
 
real omega_frac
 When setting the decay scale for turbulence, use this fraction of the absolute rotation rate blended with the local value of f, as sqrt((1-of)*f^2 + of*4*omega^2). More...
 
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. More...
 
logical debug
 If true, write verbose checksums for debugging purposes. More...
 
type(ocean_obc_type), pointer obc => NULL()
 Open boundaries control structure. More...
 
type(diag_ctrl), pointer diag => NULL()
 A structure that is used to regulate the timing of diagnostic output. More...
 
integer id_bbl_thick_u = -1
 Diagnostics handles. More...
 
integer id_kv_bbl_u = -1
 Diagnostics handles. More...
 
integer id_bbl_thick_v = -1
 Diagnostics handles. More...
 
integer id_kv_bbl_v = -1
 Diagnostics handles. More...
 
integer id_ray_u = -1
 Diagnostics handles. More...
 
integer id_ray_v = -1
 Diagnostics handles. More...
 
integer id_nkml_visc_u = -1
 Diagnostics handles. More...
 
integer id_nkml_visc_v = -1
 Diagnostics handles. More...
 

Variables and constants

◆ answers_2018

logical mom_set_visc::set_visc_cs::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.

Definition at line 84 of file MOM_set_viscosity.F90.

84  logical :: answers_2018 !< If true, use the order of arithmetic and expressions that recover the

◆ bbl_thick_min

real mom_set_visc::set_visc_cs::bbl_thick_min

The minimum bottom boundary layer thickness [H ~> m or kg m-2]. This might be Kv / (cdrag * drag_bg_vel) to give Kv as the minimum near-bottom viscosity.

Definition at line 51 of file MOM_set_viscosity.F90.

51  real :: BBL_thick_min !< The minimum bottom boundary layer thickness [H ~> m or kg m-2].

◆ bbl_use_eos

logical mom_set_visc::set_visc_cs::bbl_use_eos

If true, use the equation of state in determining the properties of the bottom boundary layer.

Definition at line 64 of file MOM_set_viscosity.F90.

64  logical :: BBL_use_EOS !< If true, use the equation of state in determining

◆ bottomdraglaw

logical mom_set_visc::set_visc_cs::bottomdraglaw

If true, the bottom stress is calculated with a drag law 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 whether linear_drag is true.

Definition at line 59 of file MOM_set_viscosity.F90.

59  logical :: bottomdraglaw !< If true, the bottom stress is calculated with a

◆ bulk_ri_ml

real mom_set_visc::set_visc_cs::bulk_ri_ml

The bulk mixed layer used to determine the thickness of the viscous mixed layer. Nondim.

Definition at line 73 of file MOM_set_viscosity.F90.

73  real :: bulk_Ri_ML !< The bulk mixed layer used to determine the

◆ c_smag

real mom_set_visc::set_visc_cs::c_smag

The Laplacian Smagorinsky coefficient for calculating the drag in channels.

Definition at line 47 of file MOM_set_viscosity.F90.

47  real :: c_Smag !< The Laplacian Smagorinsky coefficient for

◆ cdrag

real mom_set_visc::set_visc_cs::cdrag

The quadratic drag coefficient.

Definition at line 46 of file MOM_set_viscosity.F90.

46  real :: cdrag !< The quadratic drag coefficient.

◆ channel_drag

logical mom_set_visc::set_visc_cs::channel_drag

If true, the drag is exerted directly on each layer according to what fraction of the bottom they overlie.

Definition at line 67 of file MOM_set_viscosity.F90.

67  logical :: Channel_drag !< If true, the drag is exerted directly on each

◆ debug

logical mom_set_visc::set_visc_cs::debug

If true, write verbose checksums for debugging purposes.

Definition at line 87 of file MOM_set_viscosity.F90.

87  logical :: debug !< If true, write verbose checksums for debugging purposes.

◆ diag

type(diag_ctrl), pointer mom_set_visc::set_visc_cs::diag => NULL()

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

Definition at line 89 of file MOM_set_viscosity.F90.

89  type(diag_ctrl), pointer :: diag => null() !< A structure that is used to

◆ drag_bg_vel

real mom_set_visc::set_visc_cs::drag_bg_vel

An assumed unresolved background velocity for calculating the bottom drag [L T-1 ~> m s-1].

Definition at line 49 of file MOM_set_viscosity.F90.

49  real :: drag_bg_vel !< An assumed unresolved background velocity for

◆ dynamic_viscous_ml

logical mom_set_visc::set_visc_cs::dynamic_viscous_ml

If true, use a bulk Richardson number criterion to determine the mixed layer thickness for viscosity.

Definition at line 71 of file MOM_set_viscosity.F90.

71  logical :: dynamic_viscous_ML !< If true, use a bulk Richardson number criterion to

◆ hbbl

real mom_set_visc::set_visc_cs::hbbl

The static bottom boundary layer thickness [H ~> m or kg m-2].

Definition at line 45 of file MOM_set_viscosity.F90.

45  real :: Hbbl !< The static bottom boundary layer thickness [H ~> m or kg m-2]

◆ htbl_shelf

real mom_set_visc::set_visc_cs::htbl_shelf

A nominal thickness of the surface boundary layer for use in calculating the near-surface velocity [H ~> m or kg m-2].

Definition at line 54 of file MOM_set_viscosity.F90.

54  real :: Htbl_shelf !< A nominal thickness of the surface boundary layer for use

◆ htbl_shelf_min

real mom_set_visc::set_visc_cs::htbl_shelf_min

The minimum surface boundary layer thickness [H ~> m or kg m-2].

Definition at line 56 of file MOM_set_viscosity.F90.

56  real :: Htbl_shelf_min !< The minimum surface boundary layer thickness [H ~> m or kg m-2].

◆ id_bbl_thick_u

integer mom_set_visc::set_visc_cs::id_bbl_thick_u = -1

Diagnostics handles.

Definition at line 92 of file MOM_set_viscosity.F90.

92  integer :: id_bbl_thick_u = -1, id_kv_bbl_u = -1

◆ id_bbl_thick_v

integer mom_set_visc::set_visc_cs::id_bbl_thick_v = -1

Diagnostics handles.

Definition at line 93 of file MOM_set_viscosity.F90.

93  integer :: id_bbl_thick_v = -1, id_kv_bbl_v = -1

◆ id_kv_bbl_u

integer mom_set_visc::set_visc_cs::id_kv_bbl_u = -1

Diagnostics handles.

Definition at line 92 of file MOM_set_viscosity.F90.

◆ id_kv_bbl_v

integer mom_set_visc::set_visc_cs::id_kv_bbl_v = -1

Diagnostics handles.

Definition at line 93 of file MOM_set_viscosity.F90.

◆ id_nkml_visc_u

integer mom_set_visc::set_visc_cs::id_nkml_visc_u = -1

Diagnostics handles.

Definition at line 95 of file MOM_set_viscosity.F90.

95  integer :: id_nkml_visc_u = -1, id_nkml_visc_v = -1

◆ id_nkml_visc_v

integer mom_set_visc::set_visc_cs::id_nkml_visc_v = -1

Diagnostics handles.

Definition at line 95 of file MOM_set_viscosity.F90.

◆ id_ray_u

integer mom_set_visc::set_visc_cs::id_ray_u = -1

Diagnostics handles.

Definition at line 94 of file MOM_set_viscosity.F90.

94  integer :: id_Ray_u = -1, id_ray_v = -1

◆ id_ray_v

integer mom_set_visc::set_visc_cs::id_ray_v = -1

Diagnostics handles.

Definition at line 94 of file MOM_set_viscosity.F90.

◆ kv_bbl_min

real mom_set_visc::set_visc_cs::kv_bbl_min

The minimum viscosity in the bottom boundary layer [Z2 T-1 ~> m2 s-1].

Definition at line 57 of file MOM_set_viscosity.F90.

57  real :: KV_BBL_min !< The minimum viscosity in the bottom boundary layer [Z2 T-1 ~> m2 s-1].

◆ kv_tbl_min

real mom_set_visc::set_visc_cs::kv_tbl_min

The minimum viscosity in the top boundary layer [Z2 T-1 ~> m2 s-1].

Definition at line 58 of file MOM_set_viscosity.F90.

58  real :: KV_TBL_min !< The minimum viscosity in the top boundary layer [Z2 T-1 ~> m2 s-1].

◆ linear_drag

logical mom_set_visc::set_visc_cs::linear_drag

If true, the drag law is cdrag*DRAG_BG_VEL*u.

Definition at line 66 of file MOM_set_viscosity.F90.

66  logical :: linear_drag !< If true, the drag law is cdrag*DRAG_BG_VEL*u.

◆ obc

type(ocean_obc_type), pointer mom_set_visc::set_visc_cs::obc => NULL()

Open boundaries control structure.

Definition at line 88 of file MOM_set_viscosity.F90.

88  type(ocean_OBC_type), pointer :: OBC => null() !< Open boundaries control structure

◆ omega

real mom_set_visc::set_visc_cs::omega

The Earth's rotation rate [T-1 ~> s-1].

Definition at line 75 of file MOM_set_viscosity.F90.

75  real :: omega !< The Earth's rotation rate [T-1 ~> s-1].

◆ omega_frac

real mom_set_visc::set_visc_cs::omega_frac

When setting the decay scale for turbulence, use this fraction of the absolute rotation rate blended with the local value of f, as sqrt((1-of)*f^2 + of*4*omega^2).

Definition at line 81 of file MOM_set_viscosity.F90.

81  real :: omega_frac !< When setting the decay scale for turbulence, use

◆ rino_mix

logical mom_set_visc::set_visc_cs::rino_mix

If true, use Richardson number dependent mixing.

Definition at line 70 of file MOM_set_viscosity.F90.

70  logical :: RiNo_mix !< If true, use Richardson number dependent mixing.

◆ tke_decay

real mom_set_visc::set_visc_cs::tke_decay

The ratio of the natural Ekman depth to the TKE decay scale, nondimensional.

Definition at line 79 of file MOM_set_viscosity.F90.

79  real :: TKE_decay !< The ratio of the natural Ekman depth to the TKE

◆ ustar_min

real mom_set_visc::set_visc_cs::ustar_min

A minimum value of ustar to avoid numerical problems [Z T-1 ~> m s-1]. If the value is small enough, this should not affect the solution.

Definition at line 76 of file MOM_set_viscosity.F90.

76  real :: ustar_min !< A minimum value of ustar to avoid numerical

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