This module contains the physical core of GETM. All three-dimensional equations are iterated here, which are currently the equations for
The vertical grid for GETM, i.e. the layer thicknesses in all U-, V- and T-points, are defined in the routine coordinates, see section 8.5.4 on page 8.5.4.
The grid-related vertical velocity is calculated directly from
the layer-integrated continuity equation (25) which here done
in the routine ww_momentum described on page
.
The physics of the horizontal momentum equations is given in section 3.1.1, and their transformation to general vertical coordinates in section 4.2. Their numerical treatment will be discussed in the routines for the individual terms, see below. The forcing terms of the horizontal momentum equations are calculated in various routines, such as uv_advect_3d for the three-dimensional advection (which in turn calls advection_3d in case that higher order positive definite advection schemes are chosen for the momentum equation), uv_diffusion_3d.F90 for the horizontal diffusion, bottom_friction_3d for the bottom friction applied to the lowest layer, and internal_pressure for the calculation of the internal pressure gradients.
The major tracer equations in any ocean model are those for potential temperature and salinity. They are calculated in the routines do_temperature and do_salinity. A further hard-coded tracer equation is the suspended matter equation, see do_spm.
In the near future (the present text is typed in February 2006),
a general interface to the biogeochemical module of GOTM
(also not yet released) will be available.
This allow to add tracer equations of arbitrary complexity to GETM, ranging
from completely passive tracer equations to complex ecosystem models
such as ERSEM (Baretta et al. (1995)). The interfacing between this
so-called GOTM-BIO to GETM is made in a similar manner than the interfacing
between GETM and the GOTM turbulence module described in
gotm on page .
The basic structure of GOTM-BIO has been recently presented by
Burchard et al. (2006).
Some more details about the tracer equations currently included in
GETM is given in section 8.2.
The entire turbulence model, which basically provides eddy viscosity
and eddy diffusivity
is provided from the General
Ocean Turbulence Model (GOTM, see Umlauf et al. (2005) for the
source code documentation and http://www.gotm.net download of
source code, docomentation and test scenarios). The turbulence module
of GOTM (which is a complete one-dimensional water column model) is coupled
to GETM via the interfacing routine gotm described in section
gotm on page
. Major input to the turbulence model
are the shear squared
and the buoyancy
frequency squared
with the buoyancy
from (4).
Those are calculated and interpolated to the T-points where the
turbulence model columns are located in the routine ss_nn
described on page
.
The surface and bottom stresses which need to be passed to the turbulence
module as well, are interpolated to T-points in the routine
stresses_3d, see page .
The module rivers (see section 8.12 on page
) organises the riverine input of fresh water
from any number of rivers.
Three-dimensional boundary conditions for temperature and salinity
are provided by means of the module bdy-3d, see section
8.11 described on page .
The remaining routines in the module 3d deal with the coupling of the
external and the internal mode. The basic idea of the mode splitting
has already been discussed in section 5.1.
The consistency of the two modes is given through the so-called
slow terms, which are mode interaction terms resulting from
subtracting vertically integrated equations with parameterised
advection, diffusion, bottom friction and internal pressure
gradient from vertically integrated equations with explicit vertical resolution
of these processes. These slow terms which are updated every macro
time step only (that is why we call them slow terms) need to be considered
for the external mode included in module 2d.
Those slow terms are calculated here in the 3d module at the end
of integrate_3d and in the routine slow_bottom_friction,
and they are added together in slow_terms,
see the descriptions in sections 8.4.3,
8.13.10 and 8.13.11
on pages ,
,
and
, respectively.
One other important measure of coupling the two modes is to
add to all calculated - and
-velocity profiles the difference
between their vertical integral and the time-average of the
vertically integrated transport from the previous set of micro time
steps. This shifting is done in the routines uu_momentum_3d and
vv_momentum_3d and the time-average of the
vertically integrated transport is updated in the 2d module
in the routine m2d and divided by the number of
micro time steps per macro time step in start_macro.
Further basic calculations performed in start_macro
(see description in section 8.13.3
on page
) are the updates of
the old and new sea surface elevations with respect to
the actual macro time step.
The routine stop_macro (see description in section 8.13.12
on page
)
which called at the end of each macro time step
simply resets the variables for the time-averaged transports to zero.