Module ocean_bihcst_friction_mod
OVERVIEW
Thickness weighted and density weighted time tendency for velocity
from horizontal biharmonic friction
This module computes the thickness and density weighted time tendency
for horizontal velocity arising from horizontal biharmonic friction.
The viscosity used to determine the strength of the tendency
can be a general function of space yet it is constant in time.
A namelist option exists that determines this viscosity
as a local function of the grid spacing.
OTHER MODULES USED
constants_mod
diag_manager_mod
fms_mod
mpp_domains_mod
mpp_mod
ocean_domains_mod
ocean_obc_mod
ocean_operators_mod
ocean_parameters_mod
ocean_types_mod
ocean_util_mod
ocean_workspace_mod
PUBLIC INTERFACE
PUBLIC ROUTINES
-
ocean_bihcst_friction_init
-
DESCRIPTION
-
Initialize the horizontal biharmonic friction module by
registering fields for diagnostic output and performing some
numerical checks to see that viscosity is set appropriately.
-
bihcst_friction
-
DESCRIPTION
-
This subroutine computes the thickness weighted acceleration on
horizontal velocity arising from horizontal biharmonic friction.
-
delsq_velocity
-
DESCRIPTION
-
Subroutine computes the laplacian operator acting on velocity.
-
bihcst_viscosity_check
-
DESCRIPTION
-
Subroutine to perform linear stability check for the biharmonic
operator given a value for the horizontal biharmonic viscosity.
-
bihcst_reynolds_check
-
DESCRIPTION
-
Subroutine to compute the biharmonic grid Reynolds number. Large
Reynolds numbers indicate regions where solution may experience
some grid noise due to lack of enough horizontal friction.
NAMELIST
&ocean_bihcst_friction_nml
-
use_this_module
Must be true to use this module. Default is false.
[logical]
-
debug_this_module
For debugging by printing checksums.
[logical]
-
abih
This is the value for the space-time constant biharmonic viscosity.
[real, units: m^4/sec]
-
velocity_mix_micom
If .true., then the viscosity is set according to a velocity scale times
the cube of the grid spacing. It is based on an approach recommended by
Eric Chassignet that is used in the Miami Isopycnal Model.
[logical]
-
vel_micom
Velocity scale that is used for computing the MICOM viscosity.
[real, units: m/sec]
-
eq_vel_micom
Velocity scale that is used for computing the MICOM viscosity within a latitude
band surrounding the equator. This is useful for some models of enhanced equatorial
resolution that can maintain numerical integrity in this region with less friction
than outside the tropical band.
[real, units: m/sec]
-
eq_lat_micom
Equatorial latitude band (degrees) within which the MICOM viscosity is set according
to eq_vel_micom.
[real]
REFERENCES
-
R. J. Murray and C.J.C. Reason,
A curvilinear version of the Bryan-Cox ocean model
Journal Computational Physics (2002), vol 171, pages 1-46
-
Elements of MOM (2012), S.M. Griffies
NOTES
The numerical implementation requires one call to mpp_update_domains if
running the model with halo=1.
This scheme has been found to be faster than the Smagorinsky viscosity
scheme. However, the algorithm here is less robust since it
contains null modes in the terms associated with the sphericity
of the earth. Hence, there may be flow configurations that are
not dissipated.
The model can generally run with both Laplacian and biharmonic friction
enabled at the same time. Such has been found useful for some eddying
ocean simulations.
The numerical implementation in mom4p1 and mom5 does not include the sink due
to partial bottom cells. This sink was implemented in mom2 and mom3
and mom4. It is not known how relevant this sink is.