Initialize the ocean_adv_vel_diag module containing subroutines
diagnosing advection velocity related properties of the simulation.
ocean_adv_vel_diagnostics
DESCRIPTION
Call diagnostics related to the velocity.
remapping_check
DESCRIPTION
Compute remapping error. This error will be roundoff only for model
grids where the tracer and velocity grid cell distances are
linearly related. The spherical version of MOM satisfies the
appropriate relation, and so should maintain roundoff for the
remapping error. 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.
cfl_check1
DESCRIPTION
Perform the first of two CFL checks for vertical velocity component.
Vectorized version from Russell.Fiedler@csiro.au computes cfl
values at a single latitude. The location of the maximum at this
latitude is calculated via the maxloc() intrinsic. The maximum
value for this processor is then updated if necessary.
cfl_check2
DESCRIPTION
Perform the second of two vertical CFL checks.
Bring the model down if too many large Courant numbers detected.
maximum_bottom_w
DESCRIPTION
Compute maximum vertical velocity on the bottom of tracer and velocity cells.
The vertical velocity at bottom of a column of tracer cells should be roundoff.
For flat bottom simulations, the vertical velocity on the bottom of the
velocity cell column should also be roundoff. For simulations with topography,
the vertical velocity on the bottom of a velocity cell column will not vanish
due to the effects of topography.
max_continuity_error
DESCRIPTION
Compute continuity error. Should be roundoff if all is working well.
transport_on_s
DESCRIPTION
Compute transports on s-levels (defined by same k-level)
and send to diag_manager.
transport_on_nrho
DESCRIPTION
Classify horizontal transport according to neutral density classes.
NOTE: This diagnostic works with transport through cell faces.
To get transport_on_nrho, a binning must be done, rather than
a remapping (as done for trans_rho_gm).
code history:
2002: Stephen.Griffies
Zhi.Liang
Alexander.Pletzer
2007: updated algorithm with weighting as done in the paper
Lee, Nurser, Coward, and de Cuevas, 2007:
"Eddy advective and diffusive transports of heat and salt
in the Southern Ocean" JPO, vol 37, pages 1376-1393
2010: updated by Rusty.Benson for optimization.
2010: Corrected weighting by Stephen.Griffies
2010: Removed the weighting in favor of a strait rebinning
approach. The weighting approach was
unnecessary, and added more cost to the scheme.
transport_on_rho
DESCRIPTION
Classify horizontal transport according to potential density classes.
Diagnostic makes sense when potrho is monotonically increasing with
depth, although the algorithm does not explicitly make this assumption.
NOTE: This diagnostic works with transport through cell faces.
To get transport_on_rho, a binning must be done, rather than
a remapping (as done for trans_rho_gm).
Code history
2002: Stephen.Griffies
Zhi.Liang
Alexander.Pletzer
2007: updated algorithm with weighting as done in the paper
Lee, Nurser, Coward, and de Cuevas, 2007:
"Eddy advective and diffusive transports of heat and salt
in the Southern Ocean" JPO, vol 37, pages 1376-1393
2010: updated by Rusty.Benson for optimization.
corrected weigthing by Stephen.Griffies
2010: Removed the weighting in favor of a strait rebinning
approach. The weighting approach was
unnecessary, and added more cost to the scheme.
transport_on_theta
DESCRIPTION
Classify horizontal transport of mass according to potential
temperature classes. This diagnostic is useful to deduce the
heat that is transported between potential temperature classes.
Diagnostic makes sense when theta is monotonically decreasing
with depth, although the algorithm does not explicitly make
this assumption.
NOTE: This diagnostic works with transport through cell faces.
To get transport_on_theta, a binning must be done, rather than
a remapping (as done for trans_rho_gm).
Code history
2002: Stephen.Griffies
Zhi.Liang
Alexander.Pletzer
2007: updated algorithm with weighting as done in the paper
Lee, Nurser, Coward, and de Cuevas, 2007:
"Eddy advective and diffusive transports of heat and salt
in the Southern Ocean" JPO, vol 37, pages 1376-1393
2010: updated by Rusty.Benson for optimization.
corrected weigthing by Stephen.Griffies
2010: Removed the weighting in favor of a strait rebinning
approach. The weighting approach was
unnecessary, and added more cost to the scheme.
vertical_reynolds_check
DESCRIPTION
This subroutine computes the Reynolds number associated with vertical
friction visc_cbt and vertical velocity wrho_bt. This check is
appropriate for either Bgrid or Cgrid.
NAMELIST
&ocean_adv_vel_diag_nml
max_cfl_value
Critical value for Courant number, above which the model will be brought down.
[real, units: dimensionless]
large_cfl_value
Large value for Courant number, above which will write some diagnostics.
[real, units: dimensionless]
verbose_cfl
For printing out lots of information about regions of large Courant numbers.
[logical]
diag_step
Number of time steps between which compute the diagnostics.
[integer, units: dimensionless]