Module ocean_rivermix_mod
OVERVIEW
Tracer source from discharging river with depth or
mixing rivers with depth.
Compute thickness weighted tendency [tracer*rho*meter/sec]
associated with discharge of river tracer content
over a user defined column of ocean points. Points are
selected based on whether river flow into a point is nonzero.
Contribution added to tracer source array.
OTHER MODULES USED
axis_utils_mod
constants_mod
diag_manager_mod
fms_mod
mpp_domains_mod
mpp_mod
ocean_domains_mod
ocean_parameters_mod
ocean_types_mod
ocean_workspace_mod
PUBLIC INTERFACE
PUBLIC DATA
None.
PUBLIC ROUTINES
-
ocean_rivermix_init
-
DESCRIPTION
- Initial set up for mixing of tracers at runoff points.
-
rivermix
-
DESCRIPTION
- This subroutine computes one or all of the following:
(1) Thickness weighted and rho weighted tracer source associated
with river tracer content discharged into a vertical column of ocean
tracer cells. This is done if river_discharge=.true.
(2) Enhance vertical diffusivity at river mouths.
This is done if river_diffuse_temp=.true. or
river_diffuse_salt=.true.
Doing one or both are useful for models with fine vertical
resolution, where discharging river content to top cell
is often not numerically suitable nor physically relevant.
-
river_discharge_tracer
-
DESCRIPTION
- Compute thickness weighted tracer source [tracer*m/s]
associated with the discharge of tracer from a river over
a vertical column whose thickness is set by River_insertion_thickness
and whose horizontal location is given by the river array.
Jan 2005: converted to mass weighting for use with non-Boussinesq
pressure-like coodinates.
This subroutine is maintained for legacy purposes.
-
runoff_calving_discharge_tracer
-
DESCRIPTION
- Compute thickness weighted tracer source [tracer*m/s]
associated with the discharge of tracer from runoff or calving over
a vertical column whose thickness is set by either runoff_insertion_thickness
or calving_insertion_thickness, and whose horizontal location is given
by the runoff or calving array.
Jan 2005: converted to mass weighting for use with non-Boussinesq
pressure-like coodinates.
Feb 2009: now use calving_tracer_flux and runoff_tracer_flux, as the
land model carries information about the tracer content in the
liquid and solid runoff.
-
river_kappa
-
DESCRIPTION
- This subroutine enhances the vertical diffusivity kappa over
a vertical column whose thickness is set by river_diffusion_thickness
and whose horizontal location is given by the rmask array.
Note that rmask can be > 0 even if river=0 in the case when
use virtual salt flux.
The enhanced diffusivity is maximum at the top cell and is linearly
interpolated to the normal diffusivity at the depth set by
river_diffusion_thickness
-
river_diagnostics
-
DESCRIPTION
- For sending some diagnostics.
NAMELIST
&ocean_rivermix_nml
-
use_this_module
Must be true to enable this module. Default=.true., since
this is the only way that tracer in river water enters the ocean.
[logical]
-
discharge_combine_runoff_calve
Set discharge_combine_runoff_calve=.true. to discharge combined tracer carried
by liquid and solid runoff. This approach is sensible when ocean
assigns a tracer content to the liquid and solid runoff fields.
The alternative is to have a land model that provides information about
the tracer coming into the ocean from land water, in which case it is
preferable to set discharge_combine_runoff_calve=.false., so to do the runoff
and calving separately.
Default discharge_combine_runoff_calve=.true.
[logical]
-
river_insertion_thickness
Thickness of the column over which to insert tracers from
rivers. Default river_insertion_thickness=0.0 (all in top).
[real, units: meter]
-
runoff_insertion_thickness
Thickness of the column over which to insert tracers carried by
liquid runoff. Default runoff_insertion_thickness=0.0 (all in top).
[real, units: meter]
-
calving_insertion_thickness
Thickness of the column over which to insert tracers carried by
solid runoff. Default calving_insertion_thickness=0.0 (all in top).
[real, units: meter]
-
river_diffusion_thickness
Thickness of the column over which to diffuse tracers from
rivers.
[real, units: meter]
-
river_diffusivity
Vertical diffusivity enhancement at river mouths which is applied
to a depth of river_diffusion_thickness, with linear tapering to zero
enhancement from the ocean surface to river_diffusion_thickness.
[real, units: m^2/s]
-
river_diffuse_temp
Logical to determine if enhance vertical diffusion of temp at river mouths
[logical]
-
river_diffuse_salt
Logical to determine if enhance vertical diffusion of salt and all other
passive tracers at river mouths
[logical]
-
debug_this_module
For debugging
[logical]
-
debug_all_in_top_cell
For debugging, by placing all in top cell, regardless value of
river_insertion_thickness.
[logical]
-
debug_this_module_heat
For debugging, print global sum of heating rate by river water.
[logical]
DATA SETS
None.
ERROR MESSAGES
None.
REFERENCES
- S.M. Griffies, M.J. Harrison, R. C. Pacanowski, and A. Rosati
A Guide to MOM4 (2003)
NOAA/Geophysical Fluid Dynamics Laboratory
COMPILER SPECIFICS
None.
PRECOMPILER OPTIONS
None.
LOADER OPTIONS
None.
TEST PROGRAM
None.
KNOWN BUGS
None.
NOTES
Algorithm ensures total tracer is conserved. Note that volume/mass is
modified by river water within the eta-equation using the big leap-frog.
FUTURE PLANS
None.