Module ocean_advection_velocity_mod
OVERVIEW
Advection velocity components for tracer and momenta transport, with
options for B-grid or C-grid.
The module computes the horizontal and vertical components to the
advection velocity on the face of tracer and velocity cells.
Options are provided for either the B-grid or C-grid.
The three velocity components are related by continuity.
All components are density weighted, and the
horizontal components are thickness weighted.
Some diagnostics related to fluid mass transport
classified according to both depth and density classes
are also computed.
OTHER MODULES USED
axis_utils_mod
constants_mod
diag_manager_mod
fms_mod
fms_io_mod
mpp_domains_mod
mpp_mod
ocean_domains_mod
ocean_operators_mod
ocean_parameters_mod
ocean_types_mod
ocean_workspace_mod
ocean_obc_mod
ocean_util_mod
PUBLIC INTERFACE
PUBLIC ROUTINES
-
ocean_advection_velocity_init
-
DESCRIPTION
-
Initialize the advection velocity module
-
ocean_advection_velocity
-
DESCRIPTION
-
Compute thickness weighted and density weighted advection velocity
components for the B-grid on the T-cells and U-cells.
-
check_vert_cfl_blobs
-
DESCRIPTION
-
This routine is useful to check for strong vertical motions in the
presence of Lagrangian blobs. The CFL check is the same as in the
module ocean_adv_vel_diag.F90, but we have more local control here
so it is useful in the development stages of the blobs.
-
read_advect_velocity
-
DESCRIPTION
-
For reading in the advection velocity components. Assume that
the advection velocity components read in from a file are in units
of meter/sec and placed on the T-cell faces, as in a C-grid ocean model.
This routine assumes that the read-in velocity components already
have the proper masking.
The main application of this routine is for developing idealized
test cases for tracer advection.
-
inflow_nboundary_init
-
DESCRIPTION
-
Initialize the advection velocity used for specifying a nonzero
southward inflow introduced to the domain from the northern boundary.
-
ocean_advection_velocity_end
-
DESCRIPTION
-
Write a restart if necessary
NAMELIST
&ocean_advection_velocity_nml
-
debug_this_module
For debugging.
[logical]
-
inflow_nboundary
For adding an inflow velocity from the northern boundary.
Default is inflow_nboundary=.false.
[logical]
-
read_advection_velocity
For reading in a file with specified zonal, meridional,
and vertical components to the advection velocity.
The file should have velocity at the east face of T-cell,
north face, and bottom, just as on a C-grid. The units
should be m/s for each component. MOM then multiplies
but the appropriate thickness and density factors to
generate transport for use in the model.
Default read_zonal_advection_velocity=.false.
[logical]
-
constant_advection_velocity
When reading in the advection velocity components, we
may choose to keep them constant in time. This facilitates
idealized tests of tracer advection.
Default constant_advection_velocity=.false.
[logical]
-
max_advection_velocity
This is a check value used to determine if the time steps will result in
linearly stable advection. If set to a number < 0, then model will estimate the
value as a function of maximum grid size.
Note that this time step check is not rigorous, and it depends on the details of
the advection scheme. Nonetheless, it provides some useful warning for setting the
time steps in the model.
[real, units: meter/sec]
REFERENCES
-
R.C. Pacanowski and S.M. Griffies
The MOM3 Manual (1999)
-
S.M. Griffies, M.J. Harrison, R.C. Pacanowski, and A. Rosati
A Technical Guide to MOM4 (2003)
-
S.M. Griffies: Elements of MOM (2012)
NOTES
The expressions for the horizontal components for tracer advection
allow for a proper conversion between pressure work and buoyancy.
The B-grid remapping operators are derived from considerations of linear
interpolation and volume conservation. A "remapping error" is
computed to determine consistency between the tracer and velocity
grid advection velocities. This error is roundoff only for cases
where the horizontal tracer and velocity grids are linearly related,
as is the case for the spherical coordinate version of MOM. The
tripolar version of MOM does not have tracer and velocity grids
related linearly, and so the "remapping error" is nontrivial. The
significance of this error is unclear. No adverse effects have been
identified.
The vertical velocity components for both the tracer and velocity cells
are diagnosed via continuity (either volume or mass conservation depending
on the use of the Boussinesq or non-Boussinesq versions of MOM).