MOM6
mom_vert_friction::vertvisc_cs Type Reference

Detailed Description

Definition at line 32 of file MOM_vert_friction.F90.

Collaboration diagram for mom_vert_friction::vertvisc_cs:
[legend]

Public variables and constants

real hmix
 The mixed layer thickness in m. More...
 
real hmix_stress
 The mixed layer thickness over which the wind stress is applied with direct_stress, in m. More...
 
real kvml
 The mixed layer vertical viscosity in m2 s-1. More...
 
real kv
 The interior vertical viscosity in m2 s-1. More...
 
real hbbl
 The static bottom boundary layer thickness, in m. More...
 
real kvbbl
 The vertical viscosity in the bottom boundary layer, in m2 s-1. More...
 
real maxvel
 Velocity components greater than maxvel, in m s-1, are truncated. More...
 
logical cfl_based_trunc
 If true, base truncations on CFL numbers, not absolute velocities. More...
 
real cfl_trunc
 Velocity components will be truncated when they are large enough that the corresponding CFL number exceeds this value, nondim. More...
 
real cfl_report
 The value of the CFL number that will cause the accelerations to be reported, nondim. CFL_report will often equal CFL_trunc. More...
 
real truncramptime
 The time-scale over which to ramp up the value of CFL_trunc from CFL_truncS to CFL_truncE. More...
 
real cfl_truncs
 The start value of CFL_trunc. More...
 
real cfl_trunce
 The end/target value of CFL_trunc. More...
 
logical cflrampingisactivated = .false.
 True if the ramping has been initialized. More...
 
type(time_type) rampstarttime
 The time at which the ramping of CFL_trunc starts. More...
 
real, dimension(:, :, :), allocatable a_u
 The u-drag coefficient across an interface, in m s-1. More...
 
real, dimension(:, :, :), allocatable h_u
 The effective layer thickness at u-points, m or kg m-2. More...
 
real, dimension(:, :, :), allocatable a_v
 The v-drag coefficient across an interface, in m s-1. More...
 
real, dimension(:, :, :), allocatable h_v
 The effective layer thickness at v-points, m or kg m-2. More...
 
logical split
 If true, use the split time stepping scheme. 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 channel_drag
 If true, the drag is exerted directly on each layer according to what fraction of the bottom they overlie. More...
 
logical harmonic_visc
 If true, the harmonic mean thicknesses are used to calculate the viscous coupling between layers except near the bottom. Otherwise the arithmetic mean thickness is used except near the bottom. More...
 
real harm_bl_val
 A scale to determine when water is in the boundary layers based solely on harmonic mean thicknesses for the purpose of determining the extent to which the thicknesses used in the viscosities are upwinded. More...
 
logical direct_stress
 If true, the wind stress is distributed over the topmost Hmix_stress of fluid and KVML may be very small. More...
 
logical dynamic_viscous_ml
 If true, use the results from a dynamic calculation, perhaps based on a bulk Richardson number criterion, to determine the mixed layer thickness for viscosity. More...
 
logical debug
 If true, write verbose checksums for debugging purposes. More...
 
integer nkml
 The number of layers in the mixed layer. More...
 
integer, pointer ntrunc
 The number of times the velocity has been truncated since the last call to write_energy. More...
 
type(diag_ctrl), pointer diag
 A structure that is used to regulate the timing of diagnostic output. More...
 
type(pointaccel_cs), pointer pointaccel_csp => NULL()
 
real, dimension(:,:), pointer a1_shelf_u => NULL()
 The surface coupling coefficient under ice shelves in m s-1. Retained to determine stress under shelves. More...
 
real, dimension(:,:), pointer a1_shelf_v => NULL()
 The surface coupling coefficient under ice shelves in m s-1. Retained to determine stress under shelves. More...
 
character(len=200) u_trunc_file
 The complete path to files in which a column's worth of accelerations are written when velocity truncations occur. More...
 
character(len=200) v_trunc_file
 The complete path to files in which a column's worth of accelerations are written when velocity truncations occur. More...
 
integer id_du_dt_visc = -1
 Diagnostic identifiers. More...
 
integer id_dv_dt_visc = -1
 Diagnostic identifiers. More...
 
integer id_au_vv = -1
 Diagnostic identifiers. More...
 
integer id_av_vv = -1
 Diagnostic identifiers. More...
 
integer id_h_u = -1
 Diagnostic identifiers. More...
 
integer id_h_v = -1
 Diagnostic identifiers. More...
 
integer id_hml_u = -1
 Diagnostic identifiers. More...
 
integer id_hml_v = -1
 Diagnostic identifiers. More...
 
integer id_ray_u = -1
 Diagnostic identifiers. More...
 
integer id_ray_v = -1
 Diagnostic identifiers. More...
 
integer id_taux_bot = -1
 Diagnostic identifiers. More...
 
integer id_tauy_bot = -1
 Diagnostic identifiers. More...
 

Variables and constants

◆ a1_shelf_u

real, dimension(:,:), pointer mom_vert_friction::vertvisc_cs::a1_shelf_u => NULL()

The surface coupling coefficient under ice shelves in m s-1. Retained to determine stress under shelves.

Definition at line 70 of file MOM_vert_friction.F90.

70  real, pointer, dimension(:,:) :: &
71  a1_shelf_u => null(), &
72  a1_shelf_v => null()

◆ a1_shelf_v

real, dimension(:,:), pointer mom_vert_friction::vertvisc_cs::a1_shelf_v => NULL()

The surface coupling coefficient under ice shelves in m s-1. Retained to determine stress under shelves.

Definition at line 70 of file MOM_vert_friction.F90.

◆ a_u

real, dimension( : , : , : ), allocatable mom_vert_friction::vertvisc_cs::a_u

The u-drag coefficient across an interface, in m s-1.

Definition at line 59 of file MOM_vert_friction.F90.

59  real allocable_, dimension(NIMEMB_PTR_,NJMEM_,NK_INTERFACE_) :: &
60  a_u !< The u-drag coefficient across an interface, in m s-1.

◆ a_v

real, dimension( : , : , : ), allocatable mom_vert_friction::vertvisc_cs::a_v

The v-drag coefficient across an interface, in m s-1.

Definition at line 63 of file MOM_vert_friction.F90.

63  real allocable_, dimension(NIMEM_,NJMEMB_PTR_,NK_INTERFACE_) :: &
64  a_v !< The v-drag coefficient across an interface, in m s-1.

◆ bottomdraglaw

logical mom_vert_friction::vertvisc_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 76 of file MOM_vert_friction.F90.

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

◆ cfl_based_trunc

logical mom_vert_friction::vertvisc_cs::cfl_based_trunc

If true, base truncations on CFL numbers, not absolute velocities.

Definition at line 44 of file MOM_vert_friction.F90.

44  logical :: cfl_based_trunc !< If true, base truncations on CFL numbers, not

◆ cfl_report

real mom_vert_friction::vertvisc_cs::cfl_report

The value of the CFL number that will cause the accelerations to be reported, nondim. CFL_report will often equal CFL_trunc.

Definition at line 49 of file MOM_vert_friction.F90.

49  real :: cfl_report !< The value of the CFL number that will cause the

◆ cfl_trunc

real mom_vert_friction::vertvisc_cs::cfl_trunc

Velocity components will be truncated when they are large enough that the corresponding CFL number exceeds this value, nondim.

Definition at line 46 of file MOM_vert_friction.F90.

46  real :: cfl_trunc !< Velocity components will be truncated when they

◆ cfl_trunce

real mom_vert_friction::vertvisc_cs::cfl_trunce

The end/target value of CFL_trunc.

Definition at line 55 of file MOM_vert_friction.F90.

55  real :: cfl_trunce !< The end/target value of CFL_trunc

◆ cfl_truncs

real mom_vert_friction::vertvisc_cs::cfl_truncs

The start value of CFL_trunc.

Definition at line 54 of file MOM_vert_friction.F90.

54  real :: cfl_truncs !< The start value of CFL_trunc

◆ cflrampingisactivated

logical mom_vert_friction::vertvisc_cs::cflrampingisactivated = .false.

True if the ramping has been initialized.

Definition at line 56 of file MOM_vert_friction.F90.

56  logical :: cflrampingisactivated = .false. !< True if the ramping has been initialized

◆ channel_drag

logical mom_vert_friction::vertvisc_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 81 of file MOM_vert_friction.F90.

81  logical :: channel_drag !< If true, the drag is exerted directly on each

◆ debug

logical mom_vert_friction::vertvisc_cs::debug

If true, write verbose checksums for debugging purposes.

Definition at line 98 of file MOM_vert_friction.F90.

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

◆ diag

type(diag_ctrl), pointer mom_vert_friction::vertvisc_cs::diag

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

Definition at line 109 of file MOM_vert_friction.F90.

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

◆ direct_stress

logical mom_vert_friction::vertvisc_cs::direct_stress

If true, the wind stress is distributed over the topmost Hmix_stress of fluid and KVML may be very small.

Definition at line 92 of file MOM_vert_friction.F90.

92  logical :: direct_stress !< If true, the wind stress is distributed over the

◆ dynamic_viscous_ml

logical mom_vert_friction::vertvisc_cs::dynamic_viscous_ml

If true, use the results from a dynamic calculation, perhaps based on a bulk Richardson number criterion, to determine the mixed layer thickness for viscosity.

Definition at line 94 of file MOM_vert_friction.F90.

94  logical :: dynamic_viscous_ml !< If true, use the results from a dynamic

◆ h_u

real, dimension( : , : , : ), allocatable mom_vert_friction::vertvisc_cs::h_u

The effective layer thickness at u-points, m or kg m-2.

Definition at line 61 of file MOM_vert_friction.F90.

61  real allocable_, dimension(NIMEMB_PTR_,NJMEM_,NKMEM_) :: &
62  h_u !< The effective layer thickness at u-points, m or kg m-2.

◆ h_v

real, dimension( : , : , : ), allocatable mom_vert_friction::vertvisc_cs::h_v

The effective layer thickness at v-points, m or kg m-2.

Definition at line 65 of file MOM_vert_friction.F90.

65  real allocable_, dimension(NIMEM_,NJMEMB_PTR_,NKMEM_) :: &
66  h_v !< The effective layer thickness at v-points, m or kg m-2.

◆ harm_bl_val

real mom_vert_friction::vertvisc_cs::harm_bl_val

A scale to determine when water is in the boundary layers based solely on harmonic mean thicknesses for the purpose of determining the extent to which the thicknesses used in the viscosities are upwinded.

Definition at line 88 of file MOM_vert_friction.F90.

88  real :: harm_bl_val !< A scale to determine when water is in the boundary

◆ harmonic_visc

logical mom_vert_friction::vertvisc_cs::harmonic_visc

If true, the harmonic mean thicknesses are used to calculate the viscous coupling between layers except near the bottom. Otherwise the arithmetic mean thickness is used except near the bottom.

Definition at line 84 of file MOM_vert_friction.F90.

84  logical :: harmonic_visc !< If true, the harmonic mean thicknesses are used

◆ hbbl

real mom_vert_friction::vertvisc_cs::hbbl

The static bottom boundary layer thickness, in m.

Definition at line 38 of file MOM_vert_friction.F90.

38  real :: hbbl !< The static bottom boundary layer thickness, in m.

◆ hmix

real mom_vert_friction::vertvisc_cs::hmix

The mixed layer thickness in m.

Definition at line 33 of file MOM_vert_friction.F90.

33  real :: hmix !< The mixed layer thickness in m.

◆ hmix_stress

real mom_vert_friction::vertvisc_cs::hmix_stress

The mixed layer thickness over which the wind stress is applied with direct_stress, in m.

Definition at line 34 of file MOM_vert_friction.F90.

34  real :: hmix_stress !< The mixed layer thickness over which the wind

◆ id_au_vv

integer mom_vert_friction::vertvisc_cs::id_au_vv = -1

Diagnostic identifiers.

Definition at line 114 of file MOM_vert_friction.F90.

◆ id_av_vv

integer mom_vert_friction::vertvisc_cs::id_av_vv = -1

Diagnostic identifiers.

Definition at line 114 of file MOM_vert_friction.F90.

◆ id_du_dt_visc

integer mom_vert_friction::vertvisc_cs::id_du_dt_visc = -1

Diagnostic identifiers.

Definition at line 114 of file MOM_vert_friction.F90.

114  integer :: id_du_dt_visc = -1, id_dv_dt_visc = -1, id_au_vv = -1, id_av_vv = -1

◆ id_dv_dt_visc

integer mom_vert_friction::vertvisc_cs::id_dv_dt_visc = -1

Diagnostic identifiers.

Definition at line 114 of file MOM_vert_friction.F90.

◆ id_h_u

integer mom_vert_friction::vertvisc_cs::id_h_u = -1

Diagnostic identifiers.

Definition at line 115 of file MOM_vert_friction.F90.

115  integer :: id_h_u = -1, id_h_v = -1, id_hml_u = -1 , id_hml_v = -1

◆ id_h_v

integer mom_vert_friction::vertvisc_cs::id_h_v = -1

Diagnostic identifiers.

Definition at line 115 of file MOM_vert_friction.F90.

◆ id_hml_u

integer mom_vert_friction::vertvisc_cs::id_hml_u = -1

Diagnostic identifiers.

Definition at line 115 of file MOM_vert_friction.F90.

◆ id_hml_v

integer mom_vert_friction::vertvisc_cs::id_hml_v = -1

Diagnostic identifiers.

Definition at line 115 of file MOM_vert_friction.F90.

◆ id_ray_u

integer mom_vert_friction::vertvisc_cs::id_ray_u = -1

Diagnostic identifiers.

Definition at line 116 of file MOM_vert_friction.F90.

116  integer :: id_ray_u = -1, id_ray_v = -1, id_taux_bot = -1, id_tauy_bot = -1

◆ id_ray_v

integer mom_vert_friction::vertvisc_cs::id_ray_v = -1

Diagnostic identifiers.

Definition at line 116 of file MOM_vert_friction.F90.

◆ id_taux_bot

integer mom_vert_friction::vertvisc_cs::id_taux_bot = -1

Diagnostic identifiers.

Definition at line 116 of file MOM_vert_friction.F90.

◆ id_tauy_bot

integer mom_vert_friction::vertvisc_cs::id_tauy_bot = -1

Diagnostic identifiers.

Definition at line 116 of file MOM_vert_friction.F90.

◆ kv

real mom_vert_friction::vertvisc_cs::kv

The interior vertical viscosity in m2 s-1.

Definition at line 37 of file MOM_vert_friction.F90.

37  real :: kv !< The interior vertical viscosity in m2 s-1.

◆ kvbbl

real mom_vert_friction::vertvisc_cs::kvbbl

The vertical viscosity in the bottom boundary layer, in m2 s-1.

Definition at line 39 of file MOM_vert_friction.F90.

39  real :: kvbbl !< The vertical viscosity in the bottom boundary

◆ kvml

real mom_vert_friction::vertvisc_cs::kvml

The mixed layer vertical viscosity in m2 s-1.

Definition at line 36 of file MOM_vert_friction.F90.

36  real :: kvml !< The mixed layer vertical viscosity in m2 s-1.

◆ maxvel

real mom_vert_friction::vertvisc_cs::maxvel

Velocity components greater than maxvel, in m s-1, are truncated.

Definition at line 42 of file MOM_vert_friction.F90.

42  real :: maxvel !< Velocity components greater than maxvel,

◆ nkml

integer mom_vert_friction::vertvisc_cs::nkml

The number of layers in the mixed layer.

Definition at line 99 of file MOM_vert_friction.F90.

99  integer :: nkml !< The number of layers in the mixed layer.

◆ ntrunc

integer, pointer mom_vert_friction::vertvisc_cs::ntrunc

The number of times the velocity has been truncated since the last call to write_energy.

Definition at line 100 of file MOM_vert_friction.F90.

100  integer, pointer :: ntrunc !< The number of times the velocity has been

◆ pointaccel_csp

type(pointaccel_cs), pointer mom_vert_friction::vertvisc_cs::pointaccel_csp => NULL()

Definition at line 119 of file MOM_vert_friction.F90.

119  type(pointaccel_cs), pointer :: pointaccel_csp => null()

◆ rampstarttime

type(time_type) mom_vert_friction::vertvisc_cs::rampstarttime

The time at which the ramping of CFL_trunc starts.

Definition at line 57 of file MOM_vert_friction.F90.

57  type(time_type) :: rampstarttime !< The time at which the ramping of CFL_trunc starts

◆ split

logical mom_vert_friction::vertvisc_cs::split

If true, use the split time stepping scheme.

Definition at line 75 of file MOM_vert_friction.F90.

75  logical :: split !< If true, use the split time stepping scheme.

◆ truncramptime

real mom_vert_friction::vertvisc_cs::truncramptime

The time-scale over which to ramp up the value of CFL_trunc from CFL_truncS to CFL_truncE.

Definition at line 52 of file MOM_vert_friction.F90.

52  real :: truncramptime !< The time-scale over which to ramp up the value of

◆ u_trunc_file

character(len=200) mom_vert_friction::vertvisc_cs::u_trunc_file

The complete path to files in which a column's worth of accelerations are written when velocity truncations occur.

Definition at line 105 of file MOM_vert_friction.F90.

105  character(len=200) :: u_trunc_file

◆ v_trunc_file

character(len=200) mom_vert_friction::vertvisc_cs::v_trunc_file

The complete path to files in which a column's worth of accelerations are written when velocity truncations occur.

Definition at line 106 of file MOM_vert_friction.F90.

106  character(len=200) :: v_trunc_file

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