Keywords

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

As estuaries are three dimensional and time dependent, numerical models have been developed to overcome the simplifications inherent to the already studied analytical models (simple geometry, steady-state) and calculate estuarine circulation and salinity distributions. These models can be numerically integrated at selected grid points spatially distributed in the system domain; the governing partial differential equations use methods of finite-difference or finite-elements in curvilinear horizontal coordinates or sigma vertical coordinates, respectively.

Numerical models have been developed and published since the end of the 1960s. This method involves replacing the differential partial equations with equivalent finite difference algebraic equations, which are solved numerically. Applications of the solutions of time-dependent numerical equations, allowing the probable distribution of pollutants in coastal regions and estuaries to be determined, have become increasingly more important with the increase in speed and memory capacity of computers.

A technical review and critical appraisal of various aspects of numerical modeling techniques of estuaries were made by a selection of eminent scientists and engineers in the field, and these essays were supplemented by discussions at technical conferences held during the course of the report’s preparation, edited by George H. Ward Jr. and William H. Espey Jr., published in early 1971 (Ward and Espey 1971). Topics discussed included one-, two-, and three-dimensional mathematical models for estuarine hydrodynamics, water quality models of chemical constituents (nitrogen forms) and biological (phytoplankton and zooplankton), and estuarine temperature field related to modeling thermal discharges, and principles and applicability of physical models in estuarine analysis. This report also included a review of solution techniques, with a detailed discussion of finite-difference methods. Scientists who took part in these discussions were D.W. Pritchard, D.R.F. Harleman, M. Rattray Jr, D.J. O’Connor, R.V. Thomann, J.E. Edinger, A.T. Ippen, G.J., Paulik, J.J. Lendertsee, J.A. Harder.

In the finite-difference method, the fluid domain is subdivided into arbitrary elements, for instance, a triangular grid format, enabling better adjustment to the geometric space of the fluid domain, even in complex boundary configurations. Also, as noted by Lendertsee and Critton (1971) (Lendertsee et al. (1973)), many different approximations can generally be made for each term of the partial equations to be solved, resulting in a wide selection of approximations. One approximation may be considered better than another, depending on the scope of the investigation and the processes described by the equation for a particular situation. Useful considerations in the design of numerical computation schemes may also be found in Lendertsee’s article.

As with other numerical investigations of natural phenomena, using a numerical model to simulate an estuarine system only works when the modeler fully understands the model’s limitations and the physical processes involved, and conducts adequate calibration and validation. The complexity of estuaries often requires a grid that will result in a scientific credible, yet computationally feasible model. The grid should provide a compromise between depicting the physical realities of the estuarine system and the computational feasibility. As estuarine channels have irregular shore-lines, islands and shipping channels, numerical models require very small grid sizes to resolve these boundaries in detail; in these environments, curvilinear grids provide a better representation (Ji 2008). Also, as previously seen, estuarine circulation is driven by tides, river discharge, baroclinic pressure gradient force and wind, forming a very complex tri-dimensional system. As such, specification of the open boundary conditions that link the estuarine water mass to the river, coastal sea, bottom and atmosphere, is also required.

12.1 Briefy Outline on Numerical Models

The Princeton Ocean Model (POM) was originally developed at Princeton University by G. Mellor and A.F. Blumberg in collaboration with Dybalysis of Princeton (H.J. Herring and R.C. Patchen). The model incorporates the Mellor-Yamada turbulence scheme developed in early 1970 by George Mellor and Ted Yamada, widely used by oceanic and atmospheric models. At the time, early computer ocean models such as the Bryan–Cox model, which was developed in the late 1960s at the Geophysical Fluid Dynamics Laboratory and later became the Modular Ocean Model (MOM), were mostly aimed at coarse-resolution simulations of the large-scale ocean circulation. Thus, there was a need for a numerical model that could handle high-resolution coastal ocean processes.

The Blumberg–Mellor model (which later became POM) included new features such as free surface to handle tides, sigma vertical coordinates (i.e., terrain-following) to handle complex topographies and shallow regions, a curvilinear grid to better handle coastlines, and a turbulence scheme to handle vertical mixing. In the early 1980s, the model was primarily used to simulate estuaries such as the Hudson–Raritan Estuary (by Leo Oey) and the Delaware Bay (Boris Galperin). At this time, attempts had also been made to use a sigma coordinate model for basin-scale problems, with the coarse resolution model of the Gulf of Mexico (Blumberg and Mellor) and models of the Arctic Ocean (with the inclusion of ice-ocean coupling by Lakshmi Kantha and Sirpa Hakkinen).

In the late 1990s and the 2000s, many other terrain-following community ocean models were developed; some of their features can be traced back to those included in the original POM, while other features are additional numerical and parameterization improvements. Several ocean models are direct descendents of POM, for example, the commercial version of POM known as the Estuarine and Coastal Ocean Model (ECOM), the Navy Coastal Ocean Model (NCOM) and the Finite-Volume Coastal Ocean Model (FVCOM).

The Delft Hydraulics MOR module of Delft 3-D Flow fully integrates the effects of waves, currents and sediment transport for morphological development (e.g. see Nicholson et al. 1997). The module simulates the processes on the same curvilinear grid system as used in the flow module, which allows a very efficient and accurate representation of complex areas. This module is a multi-dimensional (2D or 3D) hydrodynamic and transport simulation program which calculates the non-steady state circulation and transport phenomena resulting from tides, river discharge and meteorological forces due to wind-stress.

The Danish Hydraulic Institute (DHI) developed the version MIKE21 modeling package. This advanced software employs state-of-the-art computer simulation techniques to model hurricanes and associated storm surge and waves, and hydrodynamic processes in coastal and estuarine waters, water quality, sediment transport processes and morphological changes.

The Environmental Fluid Dynamics Code (EFDC) (Hamrick 1992) is a public-domain modeling package for simulating three-dimensional (3D) flow, transport and biogeochemical processes in rivers, lakes, estuaries, reservoirs, wetlands and coastal regions. This code was originally developed at the Virginia Institute of Marine Sciences and is currently supported by the U.S. Environmental Protection Agency (EPA). The EFDC model has been extensively tested and documented in more than 100 modeling studies, and is presently being used by universities, research organizations, governmental agencies, and consulting firms. This advanced 3D time-variable model provides the capability of internally linking hydrodynamics, water quality and eutrophication, sediment transport and toxic chemical transport and fate sub-models in a single source code framework. It includes four major modules: (i) hydrodynamics; (ii) water quality; (iii) sediment transport; and, (iv) and toxics substances. The full integration of the four modules is unique and eliminates the need for complex interfacing of multiple modes to address different processes. Representative applications of the EFDC model may be found in Ji (2008).

In this chapter, only simple problems related to the discretization of solutions of the two-dimensional equation of motion will be treated, and some case studies are presented to demonstrate how hydrodynamic modeling and validation can be applied to practical problems of estuarine circulation, tide oscillations and salinity distributions using the Delft 3-D Flow numeric model.

12.2 The Finite Difference Method

The basic formulation for establishing an expression of a differential partial equation using the method of finite differences may be obtained from the Taylor series expansion, as exemplified in Fig. 12.1, with a simple bi-dimensional (2D) rectangular grid in the Oxy plane. In this example, the indexes i and j denote positions along the Ox and Oy axes, respectively, and Δxi and Δyj, denote finite increments along axes directions. To solve a third dimension, such as depth, the Oz axis normal to the Oxy plane must also be specified, and the index k may be used to denote the position (zk) and finite intervals (Δzk) along this axis. For a non-steady-state problem, the discrete time intervals may be referred by the index n, for instance, preferentially as a superscript of the symbol denoting the function or variable (fn). Some basic principles will be presented to establish a formulation for finite difference equations for the dynamics of an estuary, following classical books and articles of Lendertsee and Criton (1971), Lendertse et al. (1973), Blumberg (1975) and Roache (1982).

Fig. 12.1
figure 1

Geometric scheme of an array of points in a Oxy rectangular grid

As indicated in Fig. 12.1, the grid spacing in the directions i and j are indicated by Δx = xi+1−xi,j and Δy = yi,j+1−yi,j and, for the Oz direction, Δz = zi,k+1−zi,k; for convenience, the intervals Δx, Δy and Δz, which define the elemental volumes (Δx . Δy . Δz), are considered constant, unless indicated otherwise. Discrete time intervals will be indicated by Δt = tn+1 − tn.

The symbol f = f(x, y, z, t) (or in two dimensions f = f(x, y, t)) will be used to denote a continuous function in space and time, with the corresponding discrete functions, f = f(i, j, k, t) or f = f(i, j, t), in the tri- and bi-dimensional space; the governing differential equations are replaced with finite difference equations that operate only on the grid positions. If L, B and H are the estuary’s length, width and depth, which are subdivided into the positions n, m and k, respectively, the following relations exist according to the discrete format: L/n = Δxi\( {\text{L}} = \sum\nolimits_{{{\text{i}} = {1}}}^{{{\text{i}} = {\text{n}}}} {{{\Delta}}{\text{x}}_{\text{i}} } \) B/m = Δyi\( {\text{B}} = \sum\nolimits_{{{\text{i}} = {1}}}^{{{\text{i}} = {\text{m}}}} {{\Delta} {\text{y}}_{\text{i}} } \), and H/k = Δki\( {\text{H}} = \sum\nolimits_{{{\text{i}} = 1}}^{{{\text{i}} = {\text{k}}}} {{\Delta} {\text{k}}_{\text{i}} } \), respectively. In the same way, the discrete intervals of the time domain (T) are T/k = Δtj and \( {\text{T}} = \sum\nolimits_{{{\text{j}} = 0}}^{{{\text{k}} - {1}}} {{{\Delta {\text{t}}}}_{\text{j}} } \).

Consider a bi-dimensional space and a continuous function, f = f(x, y, t), with continuous higher orders derivatives. The first order derivative, ∂f/∂x, may be deduced by the Taylor series expansion. Then, considering a known continuous function in the space point (i, j), we may write:

$$ {\text{f}}_{{{\text{i}} + 1,{\text{j}}}} = {\text{f}}_{\text{i, j}} + \frac{{\partial {\text{f}}}}{{\partial {\text{x}}}} |_{\text{i, j}} ( {\text{x}}_{{{\text{i}} + {1},\text{j}}} - {\text{x}}_{\text{i, j}} ) + \frac{1}{2}\frac{{\partial^{2} {\text{f}}}}{{\partial {\text{x}}^{2} }} |_{\text{i, j}} ( {\text{x}}_{{{\text{i}} + 1 , {\text{ j}}}} - {\text{x}}_{\text{i, j}} )^{2} + \cdots + {\text{SOT,}} $$
(12.1a)

or

$$ {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} = {\text{f}}_{\text{i, j}} + \frac{{\partial {\text{f}}}}{{\partial {\text{x}}}} |_{\text{i, j}} {{\Delta}}{\text{x}} + \frac{1}{2}\frac{{\partial^{2} {\text{f}}}}{{\partial {\text{x}}^{2} }}({\Delta} {\text{x)}}^{2} + \cdots + {\text{SOT,}} $$
(12.1b)

where SOT indicates “superior order terms”. Solving Eq. (12.1b) for the partial derivative, ∂f/∂x, gives:

$$ \frac{{\partial {\text{f}}}}{{\partial {\text{x}}}} |_{\text{i, j}} = \frac{1}{{{{\Delta}}{\text{x}}}} ( {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} - {\text{f}}_{\text{i, j}} ) - \frac{1}{2}\frac{{\partial^{2} {\text{f}}}}{{\partial {\text{x}}^{2} }} |_{\text{i, j}} ({\Delta} {\text{x)}}^{2} \, + \cdots + {\text{SOT}}, $$
(12.2)

and the last expression may be written as:

$$ \frac{{\partial {\text{f}}}}{{\partial {\text{x}}}} |_{\text{i, j}} = \frac{1}{{{{\Delta}}{\text{x}}}} ( {\text{f}}_{{{\text{i,}} + 1 , {\text{ j}}}} - {\text{f}}_{\text{i, j}} ) + {\text{O(}}{\Delta} {\text{x),}} $$
(12.3)

where O(Δx) indicates an approximation error. This approximated expression of this derivative (∂f/∂x) will be denoted by δf/δx, or simplified to δxf; it is a forward approximation, with the i index increasing in the Ox direction:

$$ \frac{{\partial {\text{f}}}}{{\partial {\text{x}}}} | {}_{\text{i, j}} = {\updelta }_{\text{x}} {\text{f}}|_{\text{i, j}} = \frac{1}{{{\Delta} x}} ( {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} - {\text{f}}_{\text{i, j}} ) + {\text{O(}}{\Delta} {\text{x)}}. $$
(12.4)

The finite difference equations are generally classified according to the lower power of truncation. In Eq. (12.4) there is a first order error, and the equation is named a first order equation. Of course, second and third order approximations are better than first order approximations.

With an analogous procedure, but expanding the function fi,j backwards in order to obtain the expression for fi−1,j, we have another finite difference approximation equivalent to (12.4). In this case, the first order approximation is given by:

$$ \frac{{\partial {\text{f}}}}{{\partial {\text{x}}}} |_{\text{i, j}} = {\updelta }_{\text{x}} {\text{f}}|_{\text{i, j}} = \frac{1}{{{{\Delta}}{\text{x}}}} ( {\text{f}}_{\text{i, j}} - {\text{f}}_{{{\text{i}} - 1 , {\text{ j}}}} ) + {\text{O(}}{\Delta} {\text{x)}}. $$
(12.5)

The known central finite difference is obtained by subtracting the backward from the forward expansion; considering for these expressions the third order approximation which is expressed by:

$$ {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} = {\text{f}}_{\text{i, j}} + \frac{{\partial {\text{f}}}}{{\partial {\text{x}}}} |_{\text{i, j}} {{\Delta}}{\text{x}} + \frac{1}{2}\frac{{\partial^{2} {\text{f}}}}{{\partial {\text{x}}^{2} }} |_{\text{i, j}} ({\Delta} {\text{x)}}^{2} + \frac{1}{ 6}\frac{{\partial^{ 3} {\text{f}}}}{{\partial {\text{x}}^{ 3} }} |_{\text{i, j}} ({\Delta} {\text{x)}}^{ 3} + \cdots + {\text{SOT,}} $$
(12.6)

and

$$ {\text{f}}_{{{\text{i}} - 1 , {\text{ j}}}} = {\text{f}}_{\text{i, j}} - \frac{{\partial {\text{f}}}}{{\partial {\text{x}}}} |_{\text{i, j}} {{\Delta}}{\text{x}} - \frac{1}{2}\frac{{\partial^{2} {\text{f}}}}{{\partial {\text{x}}^{2} }} |_{\text{i, j}} ({\Delta} {\text{x)}}^{2} - \frac{1}{ 6}\frac{{\partial^{ 3} {\text{f}}}}{{\partial {\text{x}}^{ 3} }} |_{\text{i, j}} ({\Delta} {\text{x)}}^{ 3} + \cdots + {\text{SOT}}. $$
(12.7)

Subtracting (12.7) from (12.6) yields:

$$ {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} - {\text{f}}_{{{\text{i}} - 1 , {\text{ j}}}} = 2\frac{{\partial {\text{f}}}}{{\partial {\text{x}}}} |_{\text{i, j}} {{\Delta}}{\text{x}} + \frac{1}{ 3}\frac{{\partial^{ 3} {\text{f}}}}{{\partial {\text{x}}^{ 3} }} |_{\text{i, j}} ({\Delta} {\text{x)}}^{ 3} + \cdots + {\text{SOT}}. $$
(12.8)

and solving the last expression for ∂f/∂x,

$$ \frac{{\partial {\text{f}}}}{{\partial {\text{x}}}} |_{{{\text{i}} . {\text{j}}}} = \frac{1}{2} ( {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} - {\text{f}}_{{{\text{i}} - 1 , {\text{ j}}}} ){\Delta} {\text{x}} - \frac{1}{ 6}\frac{{\partial^{ 3} {\text{f}}}}{{\partial {\text{x}}^{ 3} }} |_{\text{i, j}} ({\Delta} {\text{x)}}^{ 3} + \cdots + {\text{SOT,}} $$
(12.9a)

and using the notation δxf,

$$ {\updelta }_{\text{x}} {\text{f}}|_{\text{i, j}} = \frac{1}{2} ( {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} - {\text{f}}_{{{\text{i}} - 1 , {\text{ j}}}} ){\Delta} {\text{x}} + {\text{O(}}{\Delta} {\text{x}}^{2} ). $$
(12.9b)

From this last expression, it follows that the second order approximation of the partial derivative ∂f/∂x (δxf), using the central difference approach, is calculated by:

$$ \frac{{{\updelta}{\text{f}}}}{{{{\updelta}{\text{x}}}}} |_{\text{i, j}} = {\updelta }_{\text{x}} {\text{f}}|_{\text{i, j}} = \frac{1}{{ 2{\Delta} {\text{x}}}} ( {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} - {\text{f}}_{{{\text{i}} - 1 , {\text{ j}}}} ). $$
(12.10)

Analogous expressions follow immediately for derivations in relation to the independent variables y and t. Thus, second order central finite differences for the derivations δf/δy and δf/δt, for example, are calculated by,

$$ \frac{{{\updelta}{\text{f}}}}{{{{\updelta}{\text{y}}}}} |_{\text{i, j}} = {\updelta }_{\text{y}} {\text{f}}|_{\text{i, j}} = \frac{1}{{ 2{\Delta} {\text{y}}}} ( {\text{f}}_{{{\text{i, j}} + {1}}} - {\text{f}}_{\text{i, j - 1}}), $$
(12.11)

and

$$ \frac{{\updelta{\text{f}}}}{{\updelta{\text{t}}}}|_{{{\text{i}},{\text{j}}}}^{n} =\updelta_{\text{t}} {\text{f|}}_{{{\text{i}},{\text{j}}}}^{\text{n}} = \frac{1}{{2{\Delta} {\text{t}}}}({\text{f}}_{{{\text{i}},{\text{j}}}}^{{{\text{n}} + 1}} - {\text{f}}_{{{\text{i}},{\text{j}}}}^{{{\text{n}} - 1}} ), $$
(12.12)

where \( {\Delta} {\text{t}} = {\updelta }_{\text{t}} = ({\text{t}}^{{{\text{n}} + 1}} - {\text{t}}^{{{\text{n}} - 1}} ) \) is a constant time interval.

Let us now determine the second order derivative, δ2f/δx2 = \( {\updelta }_{\text{x}}^{2} {\text{f}} \), by central finite differences. For this purpose, the summation of expressions (12.6) and (12.7) is

$$ {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} + {\text{f}}_{\text{i - 1, j}} = 2 {\text{f}}_{\text{i, j}} + \frac{{\partial^{2} {\text{f}}}}{{\partial {\text{x}}^{2} }} |_{\text{i, j}} ({\Delta} {\text{x}})^{2} + \frac{1}{ 1 2}\frac{{\partial^{ 4} {\text{f}}}}{{\partial {\text{x}}^{ 4} }} |_{\text{i, j}} ({\Delta} \text{x})^{ 3} + \cdots + {\text{SOT}}, $$
(12.13)

Solving this equation for \( {\updelta }_{\text{x}}^{2} {\text{f}} \) (∂2f/∂x2)

$$ {\updelta }_{\text{x}}^{2} {\text{f}}|_{\text{i, j}} = \frac{{ ( {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} + {\text{f}}_{{{\text{i}} - 1 , {\text{ j}}}} - 2 {\text{f}}_{\text{i, j}} )}}{{({\Delta} {\text{x)}}^{2} }} + {\text{O[(}}{\Delta} {\text{x)}}^{2} ] , $$
(12.14)

or

$$ {\updelta }_{\text{x}}^{2} {\text{f}}|_{\text{i, j}} = \frac{{ ( {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} + {\text{f}}_{{{\text{i}} - 1 , {\text{ j}}}} - 2 {\text{f}}_{\text{i, j}} )}}{{({\Delta} {\text{x)}}^{2} }}. $$
(12.15)

As an example of the property application of the operator δf/δx (δxf), let us make the deduction of the expression (12.15), starting with an approximation of the first derivative of Eq. (12.10), and rewriting it in terms of the half interval Δx (Δx/2),

$$ \frac{{{\updelta}{\text{f}}}}{{{{\updelta}{\text{x}}}}} |_{\text{i, j}} = \frac{{ ( {\text{f}}_{{{\text{i + }} \frac{1}{2} , {\text{ j}}}} - {\text{f}}_{{_{{{\text{i - }}\frac{1}{2} , {\text{ j}}}} }} )}}{{{{\Delta}}{\text{x}}}}. $$
(12.16)

Taking into account that δ2f/δ2x = (δ/δx(δf/δx)) we have,

$$ \frac{{{\updelta }^{2} {\text{f}}}}{{{{\updelta}{\text{x}}}^{2} }} |_{\text{i, j}} = \frac{{ [ {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} - {\text{f}}_{\text{i, j}} - ( {\text{f}}_{\text{i, j}} - {\text{f}}_{{{\text{i}} - 1 , {\text{ j}}}} )]}}{{({\Delta} x)^{2} }}, $$
(2.17a)

then

$$ {\updelta }_{\text{x}}^{2} {\text{f}}|_{\text{i, j}} = \frac{{ ( {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} + {\text{f}}_{{{\text{i}} - {1} . {\text{j}}}} - 2 {\text{f}}_{\text{i, j}} )}}{{({\Delta} x)^{2} }}, $$
(12.17b)

which is equivalent to Eq. (12.15).

As another example, let us calculate the approximation by second order finite differences of the second order derivative of f = f(x, y, t) with two spatial variables, i.e., δ2f/δxδy. The expression of this derivative may be easily deduced if we observe that,

$$ \frac{{\updelta^{2} {\text{f}}}}{{\updelta{\text{x}}\updelta{\text{y}}}} = \frac{\updelta}{{\updelta{\text{x}}}}(\frac{{\updelta{\text{f}}}}{{\updelta{\text{y}}}}). $$
(12.18)

Applying a similar procedure to this expression, as used for Eq. (12.10),

$$ \frac{{{\updelta }^{2} {\text{f}}}}{\updelta{\text{y}}\updelta{\text{x}}} |_{\text{i, j}} = \frac{\updelta }{{{{\updelta}{\text{y}}}}}[\frac{{ ( {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} - {\text{f}}_{{{\text{i}} - 1 , {\text{ j}}}} )}}{{ 2{\Delta} {\text{x}}}}], $$
(12.19)

and

$$ \frac{{{\updelta }^{2} {\text{f}}}}{{{{\updelta {\text{y}}\updelta {\text{x}}}}}} |_{\text{i, j}} = \frac{{ [ {\text{f}}_{{{\text{i}} + 1 , {\text{ j}} + {1}}} - {\text{f}}_{{{\text{i}} - 1 , {\text{ j}} + {1}}} - ( {\text{f}}_{{{\text{i}} + 1 , {\text{ j}} - {1}}} - {\text{f}}_{{{\text{i}} - 1 , {\text{ j}} - {1}}} )]}}{{{2}{\Delta} {\text{x}}{{\Delta}} {\text{y}}}}, $$
(12.20a)

or

$$ \frac{{{\updelta }^{2} {\text{f}}}}{\updelta{\text{y}}\updelta{\text{x}}} |_{\text{i, j}} = \frac{{ [ {\text{f}}_{{{\text{i}} + 1 , {\text{ j}} + {1}}} - {\text{f}}_{{{\text{i}} + 1 , {\text{ j}} - {1}}} - {\text{f}}_{{{\text{i}} - 1 , {\text{ j}} + {1}}} + {\text{f}}_{{{\text{i}} - 1 , {\text{ j}} - {1}}} )]}}{{ 2{\Delta} {\text{x}}{\Delta} {\text{y}}}}. $$
(12.20b)

The second order derivative (12.20b) in the x and y coordinates has a truncation error indicated generically by O[(Δx)2 + (Δy)2]. Also, it should be noted that the operator, δ2f/δxδy, obeys the same rules as the derivation of a continuous function and, in relation to the mixed derivatives used above, holds the identity, δ2f/δxδy = δ2f/δyδx.

Finite differences of partial derivatives, such as those presented above, may be combined in order to obtain an expression of physical-mathematical laws, for example, the second-order partial differential of the Laplace equation which, in the two-dimension scalar form, ψ = ψ(x, y), is given by,

$$ \frac{{\partial^{2} {\uppsi }}}{{\partial {\text{x}}^{2} }} + \frac{{\partial^{2} {\uppsi }}}{{\partial {\text{y}}^{2} }} = 0. $$
(12.21)

Combining the developed expression (12.20b) with second order derivatives, we may write:

$$ \frac{{{\updelta }^{2} {\uppsi }}}{{{{\updelta}{\text{x}}}^{2} }} + \frac{{{\updelta }^{2} {\uppsi }}}{{{{\updelta}{\text{y}}}^{2} }} = \frac{1}{{({\Delta} x)^{2} }}{(\uppsi }_{{{\text{i}} + 1 , {\text{ j}}}} + {\uppsi }_{{{\text{i}} - 1 , {\text{ j}}}} - {2\uppsi }_{\text{i, j}} ) + \frac{1}{{({\Delta} y)^{2} }}{(\uppsi }_{{{\text{i, j}} + {1}}} + {\uppsi }_{{{\text{i, j}} - {1}}} - {2\uppsi }_{\text{i, j}} ) = 0, $$
(12.22a)

or

$$ {\uppsi }_{{{\text{i}} + {1}, \text{j}}} + {\uppsi }_{{{\text{i}} - {1}, \text{j}}} + {\upbeta }^{2} {(\uppsi }_{{{\text{i, j}} + {1}}} + {\uppsi }_{{{\text{i, j}} - {1}}} ) - 2 ( 1+ {\upbeta }^{2} )\uppsi_{\text{i, j}} = 0, $$
(12.22b)

where β = Δx/Δy is the characteristic ratio of the grid spacing in the Ox and Oy directions, respectively. This equation is usually referred to as the five point approximation of the Laplace equation. In the condition when Δx = Δy, it follows that the expression for ψi,j is:

$$ {\uppsi }_{\text{i, j}} = \frac{1}{ 4}{(\uppsi }_{{{\text{i}} + 1 , {\text{ j}}}} + {\uppsi }_{{{\text{i}} - 1 , {\text{ j}}}} + {\uppsi }_{{{\text{i, j}} + {1}}} + {\uppsi }_{{{\text{i, j}} - {1}}}), $$
(12.23)

which shows that in the five point approximation for the Laplace equation the unknown, ψi.j is calculated by its mean value at four neighboring points.

In the following example, let us consider a differential equation (11.24) representing a linear model which governs the space-time variation of a property defined in a one-dimensional space ζ = ζ(x, t);

$$ \frac{{\partial {\upzeta }}}{{\partial {\text{t}}}} + {\text{u}}\frac{{\partial {\upzeta }}}{{\partial {\text{x}}}} - {\text{N}}\frac{{\partial^{2} {\upzeta }}}{{\partial {\text{x}}^{2} }} = 0. $$
(12.24)

If ζ = ζ(x, t) is the u-velocity and N the kinematic eddy viscosity coefficient [N] = [L2T−1], this equation represents the one-dimensional equation of motion (or momentum equilibrium). The second order approximation of the finite difference in space (x) and time (t) is written as:

$$ \frac{1}{{ 2{\Delta} {\text{t}}}}{(\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} - {\upzeta }_{\text{i}}^{{{\text{n}} - {1}}} ) + \frac{1}{{ 2{\Delta} {\text{x}}}}({{\text{u}}{\upzeta}}_{{{\text{i}} + {1}}}^{\text{n}} - {{\text{u }}\upzeta}_{{{\text{i}} - {1}}}^{\text{n}} ) - \frac{\text{N}}{{({\Delta} {\text{x)}}^{2} }}{(\upzeta }_{{{\text{i}} + {1}}}^{\text{n}} + {\upzeta }_{{{\text{i}} - {1}}}^{\text{n}} - {2\upzeta }_{\text{i}}^{\text{n}} ) = 0. $$
(12.25)

It should be noted that this equation may be explicitly solved to the unknown \( {(\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} ) \), taking into account the previous known values in space and time. However, for N > 0 and Δt > 0, the solution may be numerically unstable, and random solutions may be generated without any relation to the differential solution. This clearly indicates the difference between an algebraic finite difference expression, which is mathematically correct, and the desirable solution to the differential equation (Roache 1982).

If, for instance, instead of using central differences for all independent variables, the finite difference of the partial differential (12.24) is calculated by the forward finite difference scheme, first and second order numerical approximations will be obtained for time and space, respectively,

$$ (\frac{{{\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} - {\upzeta }_{\text{i}}^{\text{n}} )}}{{{\Delta}}\text{t}} + \frac{{{ ( {\text{u}}\upzeta}_{{{\text{i}} + {1}}}^{\text{n}} - {{\text{u }}\upzeta}_{{{\text{i}} - {1}}}^{\text{n}} )}}{{ 2{\Delta} {\text{x}}}} - \frac{{{{\text{N }}(\upzeta}_{{{\text{i}} + {1}}}^{\text{n}} + {\upzeta }_{{{\text{i}} - {1}}}^{\text{n}} - {2\upzeta }_{\text{i}}^{\text{n}} )}}{{({\Delta} {\text{x)}}^{2} }} = {0}. $$
(12.26)

According to Roche (op. cit.), at least for some conditions of the independent variables (t, x and intervals Δt, Δx), and for the dependent variables, u and N, this solution becomes stable.

In applying the finite-difference scheme to the equation of motion in the Eulerian formulation, which isn’t a non-linear equation, care must be taken in the formulation. For example, if the term of the advective acceleration is formulated by the central finite differences scheme, that is,

$$ {\text{u}}\frac{{\partial {\text{u}}}}{{\partial {\text{x}}}} = {\text{u}}\updelta_{\text{x}} {\text{u}} = \frac{1}{{2{\Delta} x}}{\text{u}}_{\text{i}}^{{{\text{n}} + 1}} ({\text{u}}_{{{\text{i}} + 1}}^{\text{n}} - {\text{u}}_{{{\text{i}} - 1}}^{\text{n}} ), $$
(12.27)

this approximation is not satisfactory, because the von Neumann condition will not be satisfied for any fixed value of the ratio Δt/Δx, unless for the trivial solution u = 0. This problem may be solved with the forward and backward finite difference scheme when u < 0 or u ≥ 0, respectively, using the expression of Richtmeyer and Morton (1967),

$$ ( {\text{u}}_{\text{i}}^{{{\text{n}} + {1}}} ) [\frac{1}{{{{\Delta}}{\text{x}}}} ( {\text{u}}_{{{\text{i}} + {1}}}^{\text{n}} \pm {\text{u}}_{\text{i}}^{\text{n}} ) ] , $$
(12.28)

where \( {\text{u}}_{\text{i}}^{{{\text{n}} + {1}}} < 0 \) or \( {\text{u}}_{\text{i}}^{{{\text{n}} + {1}}} \ge 0 \), respectively. Similar expressions may be written for the remaining non-linear terms of the advective acceleration, or other terms of any non-linear equation.

Other relations may be obtained from the Taylor’s expansion series, for instance, adding Eqs. (12.6) and (12.7), we have the following second order approximation:

$$ 2 {\text{f}}_{\text{i, j}} = {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} + {\text{f}}_{{{\text{i}} - 1 , {\text{ j}}}} + {\text{O(}}{\Delta} {\text{x)}}^{2} , $$
(12.29a)

or

$$ {\text{f}}_{\text{i, j}} = \frac{{ ( {\text{f}}_{{{\text{i}} + 1 , {\text{ j}}}} + {\text{f}}_{{{\text{i}} - 1 , {\text{ j}}}} )}}{2} + {\text{O(}}{\Delta} {\text{x)}}^{2} . $$
(12.29b)

If expansions are made in relation to the time variable to investigate the non-steady-state characteristics of the function f = f(x, y, t), it follows that the algebraic finite difference approximation is:

$$ {\text{f}}_{{_{\text{i}} }}^{\text{n}} = \frac{{ ( {\text{f}}_{\text{i}}^{{{\text{n}} + {1}}} + {\text{f}}_{\text{i}}^{{{\text{n}} - {1}}} )}}{2} + {\text{O(}}{\Delta} {\text{t)}}^{2} . $$
(12.30)

First order approximations in the time domain may also be taken from the previous series expansions (12.6 and 12.7), and written as:

$$ {\text{f}}_{{{\text{i}} - {1}}}^{\text{n}} = {\text{f}}_{\text{i}}^{\text{n}} + {\text{O(}}{\Delta} {\text{t),}} $$
(12.31a)

and

$$ {\text{f}}_{\text{i}}^{{{\text{n}} + {1}}} = {\text{f}}_{\text{i}}^{\text{n}} + {\text{O(}}{\Delta} {\text{t)}}. $$
(12.31b)

Linearization of the terms of the motion equation (12.24) may also be achieved from diagonal mean values, yielding:

$$ {\text{f}}_{\text{i}}^{\text{n}} = \frac{1}{2} ( {\text{f}}_{{{\text{i}} + {1}}}^{{{\text{n}} - {1}}} + {\text{f}}_{{{\text{i}} - {1}}}^{{{\text{n}} + {1}}} ) + {\text{O(}}{\Delta} {\text{t),}} $$
(12.32a)

and

$$ {\text{f}}_{{{\text{i}} - 2}}^{\text{n}} = \frac{1}{2} ( {\text{f}}_{{{\text{i}} - {1}}}^{{{\text{n}} + {1}}} + {\text{f}}_{{{\text{i}} - 3}}^{{{\text{n}} - {1}}} ) + {\text{O(}}{\Delta} {\text{t),}} $$
(12.32b)

where i = 2, 3, 4, … and n = 1, 2, 3, ….

12.3 Explicit and Implicit Schemes

The numerical schemes for the analytical solution to an equation of finite differences for a partial differential equation are classified as explicit and implicit. The difference between these methods will be shown using the particular second order differential equation (12.24), which represents a one-dimensional space, simulating the spatial and temporal variations of the property ζ = ζ(x, t). This equation has already been solved by forward and central finite differences and, without loss of generality, let us assume that to simplify the mathematical treatment, the middle term may be disregarded (u∂ζ/∂x = 0). Then, the equation is approximated by finite differences as,

$$ \frac{1}{{{\Delta}{\text{t}}}}{(\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} - {\upzeta }_{\text{i}}^{\text{n}} ) = \frac{\text{N}}{{({\Delta} {\text{x)}}^{2} }}{(\upzeta }_{{{\text{i}} + {1}}}^{\text{n}} + {\upzeta }_{{{\text{i}} - {1}}}^{\text{n}} - {2\upzeta }_{\text{i}}^{\text{n}}), $$
(12.33)

where i = 1, 2, … I − 1 and n = 0, 1, 2, … I. The boundary and initial conditions for this equation may be established as,

$$ {\upzeta }_{ 0}^{\text{n}} = {\upzeta }_{\text{I}}^{\text{n}} = 0,\quad {\text{for}}\;{\text{n}} = 0,{1}, 2, \ldots \, {\text{I}} - {1}, $$
(12.34a)

and

$$ {\upzeta }_{\text{i}}^{ 0} = {{\upvarphi ({\text{i}}{\Delta} x),}}\quad {\text{for}}\;{\text{i}} = 0,{1}, 2, \ldots \,{\text{I}}. $$
(12.34b)

Then, solving Eq. (12.33) explicitly for \( {\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} , \) we have:

$$ {\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} = {\upzeta }_{\text{i}}^{\text{n}} + [\frac{{{\text{N(}}{\Delta} {\text{t)}}}}{{({\Delta} {\text{x)}}^{2} }}{](\upzeta }_{{{\text{i}} + {1}}}^{\text{n}} + {\upzeta }_{{{\text{i}} - {1}}}^{\text{n}} - {2\upzeta }_{\text{i}}^{\text{n}}), $$
(12.35)

which may be solved recursively for the determination of all values of \( {\upzeta }_{\text{i}}^{\text{n}} \) for 0 ≤ i ≤ I and n ≥ 0. This is named an explicit scheme and one step solution, meaning that all values of the second member are known and only one calculation is required to reach the next time step; thus, the solution progresses, and the values \( {\upzeta }_{{{\text{i}} + {1}}}^{{{\text{n}} + {1}}} \) do not appear in the second equation member. It is also named two-time-steps because only two instants of time are necessary to calculate the property value, i.e., to calculate the property at the time instant n + 1, it is only necessary to know its value at t = n. As previously stated, the approximation of this equation is at first and second order for time and space, respectively {O[Δt,(Δx)2]}; further details related to the stability of this solution may be found in Richtmyer and Morton (1967) and Roache (1982).

At this stage, we should mention that although the solution (12.25) centered in space and time has an approximation order of {O[(Δt)2, (Δx)2]}, it is not acceptable because it is unstable for any value of the coefficient N and for t > 0. However, if N = 0 the solution will have stable characteristics and this method is frequently known as leapfrog; the numerical solution of \( \zeta_{i}^{n + 1} \) under this simplification is:

$$ {\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} = {\upzeta }_{\text{i}}^{{{\text{n}} - {1}}} - {\text{u}}\frac{{{\Delta}{\text{t}}}}{{{{\Delta}}{\text{x}}}}{(\upzeta }_{{{\text{i}} + {1}}}^{\text{n}} - {\upzeta }_{{{\text{i}} - {1}}}^{\text{n}} ). $$
(12.36)

This solution has second order approximations for space and time and is explicit with one step. Its solution requires three time instants to be known because values at times n and n − 1 are necessary to calculate the value of the next time step (n + 1). Under the same initial and boundary conditions as indicated in (12.34a, b), it follows from the above solution that the new value of \( {\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} \) is calculated from the known value \( {\upzeta }_{\text{i}}^{{{\text{n}} - {1}}} \) minus the last term on the right hand side of Eq. (12.36), skipping over the value in the time instant n \( {(\upzeta }_{\text{i}}^{\text{n}} ) \); this procedure justifies the name, leapfrog, given to this calculation scheme. At this point, we should be reminded that the numeric solution (12.36) is the solution to a partial differential equation and an advective equation when ζ(x, t) = u(x, t) is a velocity component. An initial condition of this equation may be expressed by ζ = ζ(x,0) or \( \zeta_{\text{i}}^{ 0} \) and its solution using the finite difference scheme was demonstrated by Roache (op. cit.).

The presented method is explicit because, as we have seen, it is only necessary to know the values of ζ = ζ(x.t) at time instants t = n, n − 1, n – 2 …, to advance the computation for the new time n + 1. However, we should note the stability criteria of Richtmyer and Morton (op. cit.), which indicates that

$$ 2 {\text{N[}}\frac{{{{\Delta \text{t}}}}}{{({\Delta} {\text{x)}}^{2} }} ]\le 1 , $$
(12.37)

i.e., if the value chosen for Δx in the solution is too small, the time step Δt, will also be small, increasing the computational cycles required to satisfactorily finish the problem, due to the above relationship between (Δt) and the square (Δx)2.

The implicit method uses values of the spatial derivatives in advanced time steps, which means that the solution needs a system with (n + 1) equations to advance the data processing to the next time step. To exemplify this method, let us start with Eq. (12.24), writing its first two terms on the left hand side with forward time steps (Δt),

$$ \frac{{{(\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} - {\upzeta }_{\text{i}}^{\text{n}} )}}{{{{\Delta \text{t}}}}} = {\text{u}}\frac{\updelta \upzeta }{{{{\updelta}{\text{x}}}}}. $$
(12.38)

Calculating the derivative of the right hand side by central differences, and rearranging its terms, this equation is written as:

$$ {\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} = {\upzeta }_{\text{i}}^{\text{n}} - \frac{{{\text{u}}{\Delta} {\text{t}}}}{{ 2{\Delta} {\text{x}}}}{(\upzeta }_{{{\text{i}} + {1}}} - {\upzeta }_{{{\text{i}} - {1}}}), $$
(12.39)

and, with an analogous procedure for the non-linear term of Eq. 12.24, and solving for \( {\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} \), the result is:

$$ {\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} = {\upzeta }_{\text{i}}^{\text{n}} + \frac{{{\text{N}}{\Delta} {\text{t}}}}{{({\Delta} {\text{x)}}^{2} }}{(\upzeta }_{{{\text{i}} + {1}}} + {\upzeta }_{{{\text{i}} - {1}}} - {2\upzeta }_{\text{i}} ). $$
(12.40)

If the spatial derivations in Eqs. (12.39) and (12.40) were calculated in the time instant, n, this method would be explicit. However, if these derivatives were calculated in the time step n + 1, the calculation scheme would be completely implicit. And, as consequence, expressions (12.39) and (12.40) are calculated by:

$$ \frac{{{(\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} - {\upzeta }_{\text{i}}^{\text{n}} )}}{{{{\Delta \text{t}}}}} = \frac{\text{u}}{{ 2{\Delta} {\text{x}}}}{(\upzeta }_{{{\text{i}} + {1}}}^{{{\text{n}} + {1}}} - {\upzeta }_{{{\text{i}} - {1}}}^{{{\text{n}} + {1}}}), $$
(12.41)

and

$$ \frac{{{(\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} - {\upzeta }_{\text{i}}^{\text{n}} )}}{{{{\Delta \text{t}}}}} = \frac{\text{N}}{{({\Delta} {\text{x)}}^{2} }}{(\upzeta }_{{{\text{i}} + {1}}}^{{{\text{n}} + {1}}} + {\upzeta }_{{{\text{i}} - {1}}}^{{{\text{n}} + {1}}} { - 2\upzeta }_{\text{i}}^{{{\text{n}} + {1}}}), $$
(12.42)

respectively. These solutions have an estimated error of the order O[Δt,(Δx)2], however, as indicated in several investigations, this method has advantage in relation to its stability. The determination of the property, ζ, in a generic time step, \( \zeta_{i}^{n + 1} \), requires the simultaneous solution of a number of linear algebraic equations, with M indicating the net knots not specified by known boundary conditions.

For a generalization of the implicit and explicit schemes introduced above, let us introduce the following notation for a single variable function, generically defined by f = f(x), to the central finite difference δfi or (δf)i, then:

$$ {\updelta}{\text{f}}_{\text{i}} = (\delta{\text{f)}}_{\text{i}} = {\text{f[(i}} + 1 / 2 ){\Delta} {\text{x}} - {\text{f(i}} - 1 / 2 ){\Delta} {\text{x}}], $$
(12.43)

where the index (i) is an integer value. With this notation, the symbols δ2fi or (δ2f)i indicate the following expressions:

$$ {\updelta }^{2} {\text{f}}_{\text{i}} = {(\updelta }^{2} {\text{f)}}_{\text{i}} = {\text{f[(i}} + 1 ){\Delta} {\text{x}} - {\text{f(i}}{\Delta} {\text{x]}} - [ {\text{f(i}}{\Delta} {\text{x)}} - {\text{f(i}} - 1 ){\Delta} {\text{x)],}} $$
(12.44a)

or

$$ {\updelta }^{2} {\text{f}}_{\text{i}} = {(\updelta }^{2} {\text{f)}}_{\text{i}} = {\text{f[(i}} + 1 ){\Delta} {\text{x}} + {\text{f(i}} - 1 ){\Delta} {\text{x}})] - 2{\text{f(i}}{\Delta} {\text{x)]}}. $$
(12.44b)

Once the above notation is introduced, lets us consider the following system:

$$ \frac{{{(\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} - {\upzeta }_{\text{i}}^{\text{n}} )}}{{{\Delta}{\text{t}}}} = \frac{\text{N}}{{{\Delta} {\text{t(}}{\Delta} {\text{x)}}^{2} }}[\theta (\delta^{2} {\upzeta })_{\text{i}}^{{{\text{n}} + {1}}} + ( 1- \theta ){(\updelta }^{2} {\upzeta )}_{\text{i}}^{\text{n}} ], $$
(12.45)

where θ is a real number varying in the interval 0 ≤ θ ≤ 1. If θ = 0 this algebraic system becomes explicit, as previously indicated (Eq. 12.33). Each equation of this system furnishes an unknown \( {(\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} ) \) in terms of the quantities \( {(\upzeta }_{\text{i}}^{\text{n}} ) \). If θ ≠ 0 it is necessary to simultaneously solve a set of linear equations to calculate the unknown in the next time step \( {(\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} ) \) and, as previously seen, the system is implicit.

The simultaneous solution of the linear equations of an implicit system is not as easily solved as an explicit system of equations, because its solution is obtained iteratively. To illustrate the solution of an implicit system, let us present an example of the implicit system solution from the Roache (1982), starting with Eq. (12.46) under the assumption that the initial and boundary conditions are known, i.e., the n + 1 values of ζ1 and ζI. Then the equation for a generic knot may be written as:

$$ {\upzeta }_{{{\text{i}} - {1}}}^{{{\text{n}} + {1}}} + {\text{a }}{\upzeta }_{\text{i}}^{{{\text{n}} + {1}}} + {{\text{c}}\upzeta}_{{{\text{i}} + {1}}}^{{{\text{n}} + {1}}} = {\text{b,}} $$
(12.46)

where \( {\text{a}} = \frac{{{2}{\Delta} {\text{x}}}}{{{\text{u}}{\Delta} {\text{t}}}} \), c = −1 and \( {\text{b}} = - {\text{a }}{\upzeta }_{\text{i}}^{\text{n}} \). According to the boundary conditions, the value of \( {\upzeta }_{1}^{\text{n}} \) is known; thus, this equation may be solved to i = 2 and it is possible to calculate the value of \( {\upzeta }_{ 3}^{{{\text{n}} + {1}}} \) as a function of ζ1 and ζ2,

$$ {\upzeta }_{ 3}^{{{\text{n}} + {1}}} = {{{\text{f}}(\upzeta }}_{1} ,{\upzeta }_{2}), $$
(12.47)

continuing to i = 3, it follows that:

$$ {\upzeta }_{ 4}^{{{\text{n}} + {1}}} = {{{\text{f}}(\upzeta }}_{2} ,{\upzeta }_{ 3}), $$
(12.48)

which combined with the functional relation (12.47) yields,

$$ {\upzeta }_{ 4}^{{{\text{n}} + {1}}} = {{{\text{f}}(\upzeta }}_{1} ,{\upzeta }_{2} ). $$
(12.49)

Progressing further with this procedure, for i = I − 2, we have

$$ {\upzeta }_{{{\text{I}} - {1}}}^{{{\text{n}} + {1}}} = {{{\text{f}}(\upzeta }}_{{{\text{I}} - 3}} ,{\upzeta }_{{{\text{I}} - 2}} ) = {{{\text{f}}(\upzeta }}_{1} ,{\upzeta }_{2}), $$
(12.50)

and finally for i = I − 1 the result is:

$$ {\upzeta }_{\text{I}}^{{{\text{n}} + {1}}} = {{{\text{f}}(\upzeta }}_{{{\text{I}} - 2}} ,{\upzeta }_{{{\text{I}} - {1}}} ) = {{{\text{f}}(\upzeta }}_{1} ,{\upzeta }_{2} ). $$
(12.51)

Thus, as the boundary conditions (\( {\upzeta }_{1} ,{\upzeta}_{\text{I}} ) \) are known, the last Eq. (12.51) may be solved for \( {\upzeta }_{2}^{{{\text{n}} + {1}}} . \) Subsequently, with a second calculation of Eq. (12.46), the final results may be obtained. This procedure has only been described to illustrate the sequence for obtaining the solution; however, it is subject to the influence of truncation errors, which may be overcome with the utilization of the triangular algorithmic to simultaneously solve a system of linear equations; this algorithmic is named as such because the matrix used to solve the system of equations,

$$ \left[ {\text{A}} \right]\left[ {\upzeta } \right] = \left[ {\text{B}} \right], $$
(12.52)

which must be inverted, is a diagonal matrix, i.e., its elements are only different from zero in the principal diagonal and at the two adjacent diagonals, and the others elements are null. A diagonal matrix has an easy solution, and a FORTRAN computational subroutine is presented in Roache’s book.

12.4 The Volume Method of Finite Difference

As an example of formulating a solution to a hydrodynamic system of equations using finite difference for this method, let us initially consider the one-dimensional mass conservation equation (Eq. 7.92a, Chap. 7):

$$ \frac{{\partial ({\text{uA)}}}}{{\partial {\text{x}}}} + \frac{{\partial {\text{A}}}}{{\partial {\text{t}}}} = 0,\quad {\text{or}}\quad \frac{{\partial ( {\text{uA)}}}}{{\partial {\text{x}}}} + {\text{B}}\frac{{\partial {\text{h}}}}{{\partial {\text{t}}}} = 0, $$
(12.53)

where A is the cross section area, u is the mean u-velocity component in the transverse section A, B is the width of the estuarine channel, which is assumed to be uniform (B = cte), and h is a reference level (horizontal datum). Thus, the product uA = Q is the volume transport [uA] = [Q] = [L3T−1] through the cross section area A. From this equation, it follows that the quantities Q = Q(x, t) and u = u(x, t) may be considered as unknowns if the geometric characteristics of the system are known.

Figure 12.2 schematically presents the spatial-temporal variations of the free surface height (a), the transverse section A and width B (b), and the bi-dimensional space-time (c) subdivided into Δx and Δt intervals. Let us also consider a well-mixed estuary (type 1 or C), and a volume transport (uA) crossing a control transverse section (i) generated by the tidal oscillation, and thus, forced by the barotropic pressure gradient force.

Fig. 12.2
figure 2

a The schematic representation of the tide oscillation h = h(i). b The transverse section characteristics (A), and c The space-time showing the grid Δx versus Δt of the finite difference approximation of the continuity equation (after McDowell and O’Connor 1977)

Indicating by L the estuary mixing zone (MZ) length, which is subdivided in I − 1 regular space intervals, the number of knots in the longitudinal direction is equal to I (i = 1,2,3,…, I), the Δx length interval is equal to the ratio L/(I − 1), and the sub-volume of each cell is the cross-section area (A) times (Δx).

According to what we have already seen, the partial differential equation (12.53) may be approximated by finite differences with different orders. In this application, the first order approximation, O(Δx, Δt), will be chosen for simplicity. Then,

$$ \frac{{ ( {\text{Q}}_{{{\text{i}} + {1}}}^{\text{n}} - {\text{Q}}_{\text{i}}^{\text{n}} )}}{{{{\Delta}}{\text{x}}}} + \frac{{{\text{B}}_{\text{i}}^{\text{n}} ( {\text{h}}_{\text{i}}^{{{\text{n}} + {1}}} - {\text{h}}_{\text{i}}^{\text{n}} )}}{{{\Delta}{\text{t}}}} = 0, $$
(12.54a)

or

$$ \frac{{ ( {\text{Q}}_{{{\text{i}} + {1}}}^{\text{n}} - {\text{Q}}_{\text{i}}^{\text{n}} )}}{{{{\Delta}}{\text{x}}}} = - \frac{{{\text{B}}_{\text{i}}^{\text{n}} ( {\text{h}}_{\text{i}}^{{{\text{n}} + {1}}} - {\text{h}}_{\text{i}}^{\text{n}} )}}{{{\Delta}{\text{t}}}}, $$
(12.54b)

with i = 1, 2, 3, …, I − 1 and n = 0, 1, 2, …. As the right hand side of Eq. (12.54b) contains the temporal variable, which is a function of known data, the initial condition of the problem will be imposed naturally. Let us assume that the longitudinal coordinate, Ox, is oriented seaward, and its origin (x = 0) is located at the estuary head, which is the transitional zone of the tidal river zone (TRZ) and mixing zone (MZ). Then, we have the following boundary condition:

$$ {\text{Q}}_{{_{\text{i}} }}^{\text{n}} = {\text{Q}}_{\text{f}} , $$
(12.55)

where Qf is the river discharge, which is known and constant.

Under the assumption that the stability conditions are satisfied and solving Eq. (12.54a) explicitly for the quantity \( {\text{Q}}_{{{\text{i}} + {1}}}^{\text{n}} \), which is associated with the river discharge, it follows that the expression to calculate the volume transport across any transverse section is:

$$ {\text{Q}}_{{_{{{\text{i}} + {1}}} }}^{\text{n}} = {\text{Q}}_{\text{i}}^{\text{n}} - \frac{{{{\Delta}}{\text{x}}}}{{{\Delta}{\text{t}}}}{\text{B}}_{\text{i}}^{\text{n}} ( {\text{h}}_{\text{i}}^{{{\text{n}} + {1}}} - {\text{h}}_{\text{i}}^{\text{n}} ). $$
(12.56)

This result, with dimension [L3T−1], indicates that the volume transport may be calculated at any instant of time (n) if the free-surface elevation and the estuary width are known. In the next along channel time step i = 1,

$$ {\text{Q}}_{2}^{\text{n}} = {\text{Q}}_{\text{f}} - \frac{{{{\Delta}}{\text{x}}}}{{{\Delta}{\text{t}}}}{\text{B}}_{1}^{\text{n}} ( {\text{h}}_{1}^{{{\text{n}} + {1}}} - {\text{h}}_{1}^{\text{n}} ). $$
(12.57)

If, in this equation, \( {\text{h}}_{1}^{{{\text{n}} + {1}}} \approx {\text{h}}_{1}^{\text{n}} \), i.e., for i = 1 the time variation of h may be disregarded, it follows that \( {\text{Q}}_{2}^{\text{n}} = {\text{Q}}_{\text{f}} \), and the tidal influence may be disregarded in the sub-volume 2. Otherwise, the difference \( {\text{h}}_{1}^{{{\text{n}} + {1}}} - {\text{h}}_{1}^{\text{n}} \) may be positive (>0) or negative (<0), indicating an ebb or a flood tide condition.

Continuing to the next volume (i = 2),

$$ {\text{Q}}_{3}^{\text{n}} = {\text{Q}}_{\text{f}} - \frac{{{{\Delta}}{\text{x}}}}{{{\Delta}{\text{t}}}}{\text{B}}_{2}^{\text{n}} ( {\text{h}}_{2}^{{{\text{n}} + {1}}} - {\text{h}}_{2}^{\text{n}}), $$
(12.58)

and the volume transport in the next sub-volume (3) may be calculated at any time. The second term on the right hand side may be positive or negative according to \( {\text{h}}_{2}^{{{\text{n}} + {1}}} > {\text{h}}_{2}^{\text{n}} \) or \( {\text{h}}_{2}^{{{\text{n}} + {1}}} < {\text{h}}_{2}^{\text{n}} \), respectively, indicating the ebb or flood tide and will be subtracted or added to the fresh water discharge Qf.

As this iterative process must proceed to the last sub-volume (i = I − 1), it follows that,

$$ {\text{Q}}_{\text{I}}^{\text{n}} = {\text{Q}}_{\text{f}} - \frac{{{{\Delta}}{\text{x}}}}{{{\Delta}{\text{t}}}}{\text{B}}_{{ 1 {-1}}}^{\text{n}} ( {\text{h}}_{\text{I - 1}}^{{{\text{n}} + {1}}} - {\text{h}}_{\text{I - 1}}^{\text{n}} ). $$
(12.59)

Now, taking into account that \( {\text{Q}}_{{{\text{i}} + {1}}}^{\text{n}} = ( {\text{Au)}}_{{{\text{n}} + {1}}}^{\text{n}} \), it follows immediately from the calculated volume transport that the mean value of the u-velocity component is calculated by:

$$ {\text{u}}_{{{\text{i}} + {1}}}^{\text{n}} = \frac{{{\text{Q}}_{{{\text{i}} + {1}}}^{\text{n}} }}{{{\text{A}}_{{{\text{i}} + {1}}}^{\text{n}} }}. $$
(12.60)

The finished iterative process for i = 1, 2, 3, … I − 1 corresponds to the computation along the longitudinal axis, and in turn, a similar procedure must be applied in the time domain of interest, i.e., for n = 0, 1, 2,…, over one or more tidal cycles.

This method is named the volume method, which is justified because the second term on the right hand side of Eq. (12.56) generates volumes per time unit. In practice, the variable h must be known at regular distances intervals (Δx). According to McDowell and O’Connors (1977), this quantity must be known with an accuracy greater than 10−2 m, and the numerical solution must be validated with experimental results.

12.5 A Simple Unidimensional Numeric Model

12.5.1 Explicit Solution

Under the assumption of a well-mixed estuary, let us formulate the main hydrodynamic processes that characterize a one-dimensional estuary using the explicit method of finite differences. The starting hydrodynamic equations are simplified expressions of the equations of motion and continuity, which were used in the development of a mathematical model for prediction of unsteady salinity intrusion in estuaries by Thatcher and Harleman (1972):

$$ \frac{{\partial {\text{u}}}}{{\partial {\text{t}}}} + \frac{{\partial ( {\text{uu)}}}}{{\partial {\text{x}}}} + {\text{g}}\frac{{\partial {\text{h}}}}{{\partial {\text{x}}}} + \frac{{{{\text{gu}|{\text{u}}|}}}}{{{\text{C}}_{\text{y}}^{2} {\text{R}}_{\text{H}} }} = 0, $$
(12.61a)

and

$$ \frac{{\partial ( {\text{uA)}}}}{{\partial {\text{x}}}} + {\text{B}}\frac{{\partial {\text{h}}}}{{\partial {\text{t}}}} = 0, $$
(12.61b)

where Cy and RH ≈ Ho are the Chézy coefficient and the hydraulic radius, respectively, as defined in Chap. 8. These equations indicate that the local and advective accelerations, plus the barotropic gradient, are in balance with the frictional force. These equations will be numerically integrated to calculate the field of motion, u = u(x, t) or \( {\text{u}}_{\text{i}}^{\text{n}} \), and the elevations of the free surface, h = h(x, t) or \( {\text{h}}_{\text{i}}^{\text{n}} \), forced by the tidal oscillation.

As in the preceding application, the plane x-t is subdivided into integration cells Δx and Δt. The longitudinal number of knots is equal to the ratio L/(I − 1), with I denoting the numbers of points in the longitudinal direction. As before, the sub-volumes are equal to A. Δx, and the schemes in Fig. 12.3 indicate the spatial-temporal grid (a), where the volume transport and velocity will be calculated, and (b) the longitudinal positions where the velocity and volume transports will be alternatively calculated.

Fig. 12.3
figure 3

a Integration cells in the x-t plane. b Longitudinal plane section with positions where the quantities u (in positions o) and h (in positions x) and the transport volume (uA = Q) will be calculated. Adapted from Thatcher and Harleman (1972)

In Fig. 12.3a the cell structure and the free surface heights \( {\text{h}}_{\text{i}}^{\text{n}} \) and \( {\text{h}}_{{{\text{i}} + {1}}}^{\text{n}} \), are defined at the knots localized in the cell center, and in Fig. 12.3b the u-velocity components and the volume transport (uA) are calculated at the left and right cell’s limits indicated by the longitudinal positions o and x, respectively, for example: \( {\text{u}}_{{{\text{i}} + 1 / 2}}^{\text{n}} \) and \( {\text{u}}_{{{\text{i}} - 1 / 2}}^{\text{n}} \), or, \( {\text{Q}}_{{{\text{i}} + 1 / 2}}^{\text{n}} \) (\( {\text{uA}}_{{{\text{i}} + 1 / 2}}^{\text{n}} \)), and \( {\text{Q}}_{{{\text{i}} - 1 / 2}}^{\text{n}} \) or (\( {\text{uA}}_{{{\text{i}} - 1 / 2}}^{\text{n}} \)) are calculate for i = 0, 1, 2, … I − 1.

The formulations using the finite difference scheme of Eqs. (12.61a, b) are written as:

$$ \frac{{\updelta{\text{u}}}}{{\updelta{\text{t}}}} + \frac{{\updelta ( {\text{uu)}}}}{{\updelta{\text{x}}}} + {\text{g}}\frac{{\updelta{\text{h}}}}{{\updelta{\text{x}}}} + \frac{{{\text{gu}} | {\text{u}} | }}{{{\text{C}}_{\text{y}}^{2} {\text{H}}_{\text{o}} }} = 0, $$
(12.62a)

and

$$ \frac{{\updelta ( {\text{uA)}}}}{{{{\updelta}{\text{x}}}}} + {\text{B}}\frac{{\updelta{\text{h}}}}{{\updelta{\text{t}}}} = 0. $$
(12.62b)

Using the Forward Time Central Scheme (FTCS) in an unique cell spacing yields the following finite difference expressions for local and advective accelerations:

$$ \frac{{\updelta{\text{u}}}}{{\updelta{\text{t}}}} = (\frac{{{\text{u}}_{{{\text{i}} + 1 / 2}}^{{{\text{n}} + 1}} - {\text{u}}_{{{\text{i}} + 1 / 2}}^{\text{n}} }}{{{\Delta} {\text{t}}}}), $$
(12.63a)

and

$$ \frac{{\updelta({\text{uu}})}}{{\updelta{\text{x}}}} = [\frac{{({\text{uu}})_{{{\text{i}} + 1}}^{\text{n}} - ({\text{uu}})_{\text{i}}^{\text{n}} }}{{\Delta {\text{x}}}}], $$
(12.63b)

respectively. However, the advective acceleration is non-linear and requires a redefinition of the u-values at the knots (i ± 1) in terms of its mean values,

$$ {\text{u}}_{{{\text{i}} + {1}}}^{\text{n}} = \frac{1}{2} ( {\text{u}}_{{{\text{i}} + 3 / 2}}^{\text{n}} + {\text{u}}_{{{\text{i}} + 1 / 2}}^{\text{n}}), $$
(12.64a)

and

$$ {\text{u}}_{\text{i}}^{\text{n}} = \frac{1}{2} ( {\text{u}}_{{{\text{i}} + 1 / 2}}^{\text{n}} + {\text{u}}_{{{\text{i}} - 1 / 2}}^{\text{n}} ). $$
(12.64b)

The barotropic pressure gradient force and the friction due to viscosity are calculated as:

$$ {\text{g}}\frac{{\updelta{\text{h}}}}{{{{\updelta}{\text{x}}}}} = \frac{\text{g}}{{{{\Delta}}{\text{x}}}} ( {\text{h}}_{{{\text{i}} + {1}}}^{\text{n}} - {\text{h}}_{\text{i}}^{\text{n}}), $$
(12.65a)

and

$$ \frac{{{\text{g(u}}_{{{\text{i}} + 1 / 2}}^{\text{n}} | {\text{u}}_{{{\text{i}} + 1 / 2}}^{\text{n}} | )}}{{ ( {\text{C}}_{\text{y}} |_{{{\text{i}} + 1 / 2}}^{\text{n}} )^{2} {\text{h}}_{{{\text{i}} + 1 / 2}}^{\text{n}} }}, $$
(12.65b)

respectively. The last finite difference requires the definition of \( {\text{h}}_{{{\text{i}} + 1 / 2}}^{\text{n}} \) in terms of a mean value, and

$$ {\text{h}}_{{{\text{i}} + 1 / 2}}^{\text{n}} = \frac{1}{2} ( {\text{h}}_{{{\text{i}} + {1}}}^{\text{n}} + {\text{h}}_{\text{i}}^{\text{n}} ). $$
(12.66)

In order to eliminate possible instabilities during the computation of the friction term (last term in Eq. 12.61a), this term must be delayed for one time step, i.e., it must be calculated by,

$$ \frac{{{\text{g(u}}_{{{\text{i}} + 1 / 2}}^{\text{n - 1}} | {\text{u}}_{{{\text{i}} + 1 / 2}}^{\text{n - 1}} | )}}{{ ( {\text{C}}_{\text{y}} |_{{{\text{i}} + 1 / 2}}^{\text{n - 1}} )^{2} {\text{h}}_{{{\text{i}} + 1 / 2}}^{\text{n - 1}} }}. $$
(12.67)

For the continuity Eq. (12.61b), it follows that the finite difference expression is:

$$ \frac{{ [ ( {\text{Au)}}_{{{\text{i}} + 1 / 2}}^{\text{n}} - ( {\text{Au)}}_{{{\text{i}} - 1 / 2}}^{\text{n}} ]}}{{{{\Delta}}{\text{x}}}} + \frac{{{\text{B}}_{\text{i}}^{\text{n}} ( {\text{h}}_{\text{i}}^{{{\text{n}} + {1}}} - {\text{h}}_{\text{i}}^{\text{n}} )}}{{{\Delta}{\text{t}}}} = 0. $$
(12.68)

The non-linear term of the advective acceleration (last term in Eq. 12.63b) will be transformed into a linear term, according to the following approximation:

$$ \frac{{ [ ( {\text{uu)}}_{{{\text{i}} + {1}}}^{\text{n}} - ( {\text{uu)}}_{\text{i}}^{\text{n}} ]}}{{{{\Delta}}{\text{x}}}} = \frac{{{\text{u}}_{\text{i}}^{\text{n}} ( {\text{u}}_{{{\text{i}} + {1}}}^{\text{n}} - {\text{u}}_{{{\text{i}} - {1}}}^{\text{n}} )}}{{{{\Delta}}{\text{x}}}}. $$
(12.69)

The term \( {\text{u}}_{{{\text{i}} - {1}}}^{\text{n}} \), on the right hand side of this equation, may be calculated by a mean equivalent of Eq. (12.64a), which is a linear expression of the advective acceleration. Another linear expression, suggested by McDowell and O’Connors (1977), may also be obtained by an artifact of the second member of Eq. (12.68) and from some approximations which have already been presented. In effect, from expression (12.30) we have:

$$ {\text{u}}_{\text{i}}^{\text{n}} = \frac{{ ( {\text{u}}_{\text{i}}^{{{\text{n}} + {1}}} + {\text{u}}_{\text{i}}^{{{\text{n}} - {1}}} )}}{2} + {\text{O(}}{\Delta} {\text{t}}^{2}), $$
(12.70a)

with i = 1, 2, … and n = 0, 1, 2, … I − 1, and, from the approximations (12.32a, b) we may write,

$$ {\text{u}}_{{{\text{i}} + {1}}}^{\text{n}} = \frac{1}{2} ( {\text{u}}_{{{\text{i}} + 2}}^{{{\text{n}} - {1}}} + {\text{u}}_{\text{i}}^{{{\text{n}} + {1}}} ) + {\text{O(}}{\Delta} {\text{t,}}\,{\Delta} {\text{x),}} $$
(12.70b)

and

$$ {\text{u}}_{{{\text{i}} - {1}}}^{\text{n}} = \frac{1}{2} ( {\text{u}}_{\text{i}}^{{{\text{n}} + {1}}} + {\text{u}}_{\text{i - 2}}^{{{\text{n}} - {1}}} ) + {\text{O(}}{\Delta} {\text{t,}}\,{\Delta} {\text{x)}}. $$
(12.70c)

Substituting approximations (12.70a, b, c) into expression (12.69) yields,

$$ \frac{{ [ ( {\text{uu)}}_{{{\text{i}} + {1}}}^{\text{n}} - ( {\text{uu)}}_{\text{i}}^{\text{n}} ]}}{{{{\Delta}}{\text{x}}}} = \frac{{ [ ( {\text{u}}_{\text{i}}^{{{\text{n}} + {1}}} + {\text{u}}_{\text{i}}^{{{\text{n}} - {1}}} ) ( {\text{u}}_{{{\text{i}} + 2}}^{{{\text{n}} - {1}}} - {\text{u}}_{{{\text{i}} - 2}}^{{{\text{n}} - {1}}} )]}}{{ 4{\Delta} {\text{x}}}}, $$
(12.71a)

or alternatively

$$ \frac{{ [ ( {\text{uu)}}_{{{\text{i}} + {1}}}^{\text{n}} - ( {\text{uu)}}_{\text{i}}^{\text{n}} ]}}{{{{\Delta}}{\text{x}}}} \approx \frac{{ [ ( {\text{u}}_{\text{i}}^{{{\text{n}} + {1}}} ) ( {\text{u}}_{{{\text{i}} + 2}}^{{{\text{n}} - {1}}} - {\text{u}}_{{{\text{i}} - 2}}^{{{\text{n}} - {1}}} )]}}{{ 2{\Delta} {\text{x}}}}, $$
(12.71b)

and

$$ \frac{{ [ ( {\text{uu)}}_{{{\text{i}} + {1}}}^{\text{n}} - ( {\text{uu)}}_{\text{i}}^{\text{n}} ]}}{{{{\Delta}}{\text{x}}}} \approx \frac{{ [ ( {\text{u}}_{\text{i}}^{{{\text{n}} - {1}}} ) ( {\text{u}}_{{{\text{i}} + 2}}^{{{\text{n}} - {1}}} - {\text{u}}_{{{\text{i}} - 2}}^{{{\text{n}} - {1}}} )]}}{{ 2{\Delta} {\text{x}}}}. $$
(12.71c)

Expressions (12.71a, b, c) are equivalent to those presented by McDowell and O’Connors (op. cit.).

Combining Eqs. (12.63a, b; 12.64a, b; 12.65a, b, 12.67, 12.71a or b, c) yields the final finite difference expressions of the equations of motion and continuity equivalent to the corresponding partial differential equations (12.61a, b):

$$ \begin{aligned} {\text{u}}_{{{\text{i}} + 1 / 2}}^{{{\text{n}} + {1}}} & = {\text{u}}_{{{\text{i}} + 1 / 2}}^{\text{n}} + \frac{{{\Delta}{\text{t}}}}{{{{\Delta}}{\text{x}}}}[ - ( {\text{uu)}}_{{{\text{i}} + {1}}}^{\text{n}} - ( {\text{uu)}}_{\text{i}}^{\text{n}} ] - \frac{\text{g}}{{{{\Delta}}{\text{x}}}} ( {\text{h}}_{{{\text{i}} + {1}}}^{\text{n}} - {\text{h}}_{\text{i}}^{\text{n}} ) \\ & \quad - \frac{\text{g}}{{ [ ( {\text{C}}_{\text{y}} )_{{{\text{i}} + 1 / 2}}^{\text{n}} ]^{2} {\text{h}}_{{{\text{i}} + 1 / 2}}^{\text{n}} }} ( {\text{u}}_{{{\text{i}} + 1 / 2}}^{\text{n}} | {\text{u}}_{{{\text{i}} + 1 / 2}}^{\text{n}} | ) ,\\ \end{aligned} $$
(12.72a)

and

$$ {\text{h}}_{\text{i}}^{{{\text{n}} + {1}}} = {\text{h}}_{\text{i}}^{\text{n}} + \frac{{{\Delta}{\text{t}}}}{{{\text{B}}_{\text{i}}^{\text{n}} {{\Delta}}{\text{x}}}} [ ( {\text{uA)}}_{{{\text{i}} + 1 / 2}}^{\text{u}} - ( {\text{uA)}}_{{{\text{i}} - 1 / 2}}^{\text{n}} ]. $$
(12.72b)

Assuming that the stability of this analytical system is satisfied, that the initial and boundary conditions are known, and the geometric characteristics of the estuary are also known, Eq. (12.72b) may be used at the initial time instant (n = 0) to calculate the free surface height for i = 1, thus obtaining the first value \( {\text{h}}_{1}^{1} \). In the following step, the second member of Eq. (12.72a) may also be solved. Following this, in the initial time-space step (n = 0 and i = 1), the second member of Eq. (12.72a) may be solved, and \( {\text{h}}_{ 1 / 2}^{\text{n}} \) may be calculated as a mean value and applied to equation similar to (12.66),

$$ {\text{h}}_{\text{i/2}}^{ 0} = \frac{1}{2} ( {\text{h}}_{1}^{ 0} + {\text{h}}_{{ - {1}}}^{ 0}), $$
(12.73)

where the value of \( {\text{h}}_{{ - {1}}}^{ 0} \) is extrapolated from the initial condition. Then, with Eq. (12.72a), the unknown \( {\text{h}}_{{{\text{i}} + 1 / 2}}^{1} \) may be calculated. In the following step, for i = 2, 3, 4, …, and from the value at the initial time (n = 0), it is possible to determine the unknowns, \( {\text{h}}_{\text{i}}^{\text{n}} \) and \( {\text{u}}_{{{\text{i}} + 1 / 2}}^{\text{n}} \) for i = 1, 2, 3, …, I − 1, using iteratively Eqs. (12.72a, b). This process must be repeated for the other times (n > 0), enabling knowledge of the unknowns \( {\text{h}}_{\text{i}}^{\text{n}} \) and \( {\text{h}}_{{{\text{i}} + 1 / 2}}^{\text{n}} \), which will satisfy the imposed initial and boundary conditions.

This method may also be expanded to include in the mass conservation equation, the lateral fresh water input from tributaries and the free surface processes of precipitation-evaporation. In the equation of motion, changes in the influences on the system dynamics, due to variations in the estuary geometry, may also be included.

When the estuarine channel presents a bifurcation due to the presence of a tributary, this may also be included in the computational scheme. This may be accomplished by including a knot located in the neighboring area just before the junction, which must be the same knot used in the determination of the free-surface height, as indicated in Fig. (12.4).

Fig. 12.4
figure 4

Schematic diagram indicating a bifurcation in an estuarine channel. The symbols • and x indicate the positions of the u-velocity component and the surface height calculations, respectively

Then, for instance, for the i-knot (x in Fig. 12.4), the free surface elevation must be calculated by the following expression:

$$ {\text{h}}_{\text{i}}^{{{\text{n}} + {1}}} = {\text{h}}_{\text{i}}^{\text{n}} + \frac{{{\Delta}{\text{t}}}}{{{\text{B}}_{\text{i}}^{\text{ - n}} {{\Delta}}{\text{x}}}} [ ( {\text{uA)}}_{\text{m}}^{\text{n}} - ( {\text{uA)}}_{{{\text{i}} - 1 / 2}}^{\text{n}} ], $$
(12.74a)

and

$$ ( {\text{uA)}}_{\text{m}}^{\text{n}} = \frac{1}{2} [ ( {\text{uA)}}_{{{\text{i}} + 1 / 2}}^{\text{n}} - ( {\text{uA)}}_{{{\text{i}} + 1 / 2}}^{ - {\text{n}} } ]. $$
(12.74b)

Then, in Eq. (12.74a), the term on the right hand side indicates the volume transport at the bifurcation, and \( {\text{B}}_{\text{i}}^{\text{ - n}} , \) is the channel width calculated as the mean value at positions (i − 1/2) and (1 + 1/2). Subsequently, the computation will follow independently along each one of the channels.

12.5.2 Implicit Solution

The same problem formulated by the differential partial equations of motion and continuity (12.61a, b) may be solved by the implicit method, and the scheme for the integration cells is similar to that presented in Fig. 12.3. In this solution, the finite differences for the equation of motion is calculated in a given time step; however, the continuity equation must be displaced forward by a space interval, Δx. Then, the equation system to be numerically integrated is composed of the following algebraic equations:

$$ \begin{aligned} & \frac{{ ( {\text{u}}_{{{\text{i}} + 1 / 2}}^{{{\text{n}} + {1}}} - {\text{u}}_{{{\text{i}} + 1 / 2}}^{\text{n}} )}}{{{\Delta}{\text{t}}}} + \frac{{ ( {\text{uu)}}_{{{\text{i}} + {1}}}^{{{\text{n}} + {1}}} - ( {\text{uu)}}_{\text{i}}^{{{\text{n}} + {1}}} }}{{{{\Delta}}{\text{x}}}} + \frac{\text{g}}{{{{\Delta}}{\text{x}}}} ( {\text{h}}_{{{\text{i}} + {1}}}^{{{\text{n}} + {1}}} - {\text{h}}_{\text{i}}^{{{\text{n}} + {1}}} ) \\ & \quad + \frac{\text{g}}{{ [ ( {\text{C}}_{\text{y}} )_{{{\text{i}} + 1 / 2}}^{{{\text{n}} + {1}}} ]^{2} {\text{h}}_{{{\text{i}} + 1 / 2}}^{{{\text{n}} + {1}}} }} [ {\text{u}}_{{{\text{i}} + 1 / 2}}^{{{\text{n}} + {1}}} | {\text{u}}_{{{\text{i}} + 1 / 2}}^{{{\text{n}} + {1}}} | ]= 0, \\ \end{aligned} $$
(12.75a)

and

$$ \frac{{ [ ( {\text{uA)}}_{{{\text{i}} + 3 / 2}}^{{{\text{n}} + {1}}} - ( {\text{uA)}}_{{{\text{i}} + 1 / 2}}^{{{\text{n}} + {1}}} ]}}{{{{\Delta}}{\text{x}}}} + \frac{{ [ {\text{B}}_{{{\text{i}} + {1}}}^{{{\text{n}} + {1}}} ( {\text{h}}_{{{\text{i}} + {1}}}^{{{\text{n}} + {1}}} - {\text{h}}_{{{\text{i}} + {1}}}^{\text{n}} )]}}{{{\Delta}{\text{t}}}} = 0. $$
(12.75b)

The non-linear terms in Eq. (12.75a) must be written in linear format, and the advective acceleration will be given by:

$$ \frac{{ [ ( {\text{uu)}}_{{{\text{i}} + {1}}}^{{{\text{n}} + {1}}} - ( {\text{uu)}}_{\text{i}}^{{{\text{n}} + {1}}} ]}}{{{{\Delta}}{\text{x}}}} \approx \frac{{{\text{u}}_{\text{i}}^{{{\text{n}} + {1}}} ( {\text{u}}_{{{\text{i}} + {1}}}^{\text{n}} - {\text{u}}_{\text{i}}^{\text{n}} )}}{{{{\Delta}}{\text{x}}}},\quad {\text{if}}\,{\text{u}}_{\text{i}}^{{{\text{n}} + {1}}} < 0, $$
(12.76a)

and

$$ \frac{{ [ ( {\text{uu)}}_{{{\text{i}} + {1}}}^{{{\text{n}} + {1}}} - ( {\text{uu)}}_{\text{i}}^{{{\text{n}} + {1}}} ]}}{{{{\Delta}}{\text{x}}}} \approx \frac{{{\text{u}}_{\text{i}}^{{{\text{n}} + {1}}} ( {\text{u}}_{\text{i}}^{\text{n}} - {\text{u}}_{\text{i - 1}}^{\text{n}} )}}{{{{\Delta}}{\text{x}}}},\quad {\text{if}}\,{\text{u}}_{\text{i}}^{{{\text{n}} + {1}}} \ge 0. $$
(12.76b)

The simultaneous application of Eqs. (12.75a, b) with the initial and the associated boundary conditions will generate a system of I − 1 equations with same quantity of unknowns, which must be solved for each time step for n ≥ 0. This whole process is successively and iteratively repeated for each time interval of interest (one or more tidal cycles).

Thus, if the initial and boundary conditions and the estuary geometry are known, it is possible to calculate, with repeated solutions of this linear equation system, the free surface elevation, h = h(x, t) or the surface elevation (tidal height), and the longitudinal velocity field, u = u(x, t), during successive time intervals.

12.6 The Blumberg’s Bi-dimensional Model

This classical non-steady-state bi-dimensional (Oxz) numerical model was developed by Blumberg (1975), applying the explicit method of finite differences to a system of equations similar to Eqs. (8.558.59, Chap. 8), which corresponds physically to a partially mixed, laterally homogenous estuary (type 2, or B). In this model, the Ox axis is landward orientated with x = 0 and x = L indicating the mouth and head positions, and the Oz axis is oriented in the direction contrary to the acceleration of gravity, with z = −h(x) indicating the estuary depth. Thus, the basic equations system which will be numerically integrated, considering for the turbulence a semi-empirical approach, are:

$$ \frac{{\partial ( {\text{uB)}}}}{{\partial {\text{x}}}} + \frac{{\partial ( {\text{wB)}}}}{{\partial {\text{z}}}} = 0, $$
(12.77a)
$$ \begin{aligned} \frac{{\partial ( {\text{uB)}}}}{{\partial {\text{t}}}} + \frac{{\partial ( {\text{uuB)}}}}{{\partial {\text{x}}}} + \frac{{\partial ( {\text{uwB)}}}}{{\partial {\text{z}}}} & = \frac{\partial }{{\partial {\text{x}}}} ( {\text{BN}}_{\text{x}} \frac{{\partial {\text{u}}}}{{\partial {\text{x}}}}) + \frac{\partial }{{\partial {\text{z}}}} ( {\text{BN}}_{\text{z}} \frac{{\partial {\text{u}}}}{{\partial {\text{z}}}}) \\ & \quad - {\text{ku}}|{\text{u}}| \frac{{\partial {\text{B}}}}{{\partial {\text{z}}}} - {\text{gB}}\frac{{\partial {\upeta }}}{{\partial {\text{x}}}} - \frac{\text{gB}}{\uprho }\frac{\partial }{{\partial {\text{x}}}}(\int\limits_{\text{z}}^{ 0} {\uprho } {\text{dz),}} \\ \end{aligned} $$
(12.77b)
$$ \frac{{\partial ( {\text{BS)}}}}{{\partial {\text{t}}}} + \frac{{\partial ( {\text{uBS)}}}}{{\partial {\text{x}}}} + \frac{{\partial ( {\text{wBS)}}}}{{\partial {\text{z}}}} = \frac{\partial }{{\partial {\text{x}}}} ( {\text{BK}}_{\text{x}} \frac{{\partial {\text{S}}}}{{\partial {\text{x}}}}) + \frac{\partial }{{\partial {\text{z}}}} ( {\text{BK}}_{\text{z}} \frac{{\partial {\text{S}}}}{{\partial {\text{x}}}} ) , $$
(12.77c)

In these equations B is the estuary width, \( \uprho({\text{S}}) =\uprho_{0} (\alpha +\upbeta{\text{S}}) \) is the density calculated by the linear equation of state of seawater, with the following numeric values: ρ0 = 0.99891 g cm−3, α = 1.0 and for saline contraction coefficient, β = 7.6 × 10−4 (‰)−1.

The solution of this system of equations is dependent on the following boundary conditions:

  • Salinities at the estuary head, S(L, z, t)|x=L, and mouth, S(0, z, t)|x=0.

  • River discharge Qf.

  • Elevation in relation to the level surface η = η(z, t)|z=0.

  • Wind (τW) and bottom (ΤB) shear stresses, formulated by:

    $$ {\text{BN}}_{\text{z}} (\frac{{\partial {\text{u}}}}{{\partial {\text{z}}}}) |_{{{\text{z}} =\upeta}} = {\text{B}}_{\upeta} \frac{{\uptau_{\text{W}} }}{\uprho},\quad {\text{and}},\quad {\text{BN}}_{\text{z}} (\frac{{\partial {\text{u}}}}{{\partial {\text{z}}}}) |_{{{\text{z = }} - {\text{h}}}} { = }\frac{{{\text{T}}_{\text{B}} }}{\uprho}. $$
    (12.78a)

In practical applications these stresses are simulated by semi-empirical expressions, such as (Eqs. 8.25 and 8.31, Chap. 8):

$$ \uptau_{\text{W}} =\uprho_{\text{air}} {\text{C}}_{\text{D}} {\text{U}}_{\text{V}} |{\text{U}}_{\text{V}} |\quad {\text{and}}\quad\uptau_{\text{B}} =\uprho{\text{k}}({\text{x}})|{\text{u}}|{\text{u}}, $$
(12.78b)

where k = k(x) is a non-dimensional coefficient calculated in function of the Manning number (n) defined by:

$$ {\text{k(x)}} = \frac{{{\text{gn}}^{2} }}{{ ( 8. 2 3 )^{2} }} [ {\text{h(x)]}}^{ 1 / 3} . $$
(12.79)

In this equation, the Manning number is in c.g.s. units, and a typical value for the Potomac river estuary (Washington, USA) is n = 3.9 × 10−2 (cm)1/6 (Blumberg 1975).

The precipitation-evaporation balance will be disregarded at the free surface (z = 0), and at the bottom (z = −h) the salt flux is zero. These boundary conditions are expressed by:

$$ {\uprho}{\text{K}}_{\text{z}} (\frac{{\partial {\text{S}}}}{{\partial {\text{z}}}})_{{{\text{z}} = {\upeta }}} = {\uprho}{\text{K}}_{\text{z}} (\frac{{\partial {\text{S}}}}{{\partial {\text{z}}}})_{{{\text{z}} = - {\text{h}}}} = 0. $$
(12.80)

An additional equation used in the Blumberg’s model is obtained from the vertical integration of the continuity equation (12.77a) from the depth z = −h, up to the free surface, z = η, resulting in the following expression:

$$ ( {\text{wB)|}}_{{{\text{z}} = {\upeta }}} - ( {\text{wB)|}}_{{z = - {\text{h}}}} + \int\limits_{{ - {\text{h}}}}^{\upeta } {[\frac{{\partial ( {\text{uB)}}}}{{\partial {\text{x}}}}} ] {\text{dz}} = 0. $$
(12.81a)

Applying the Leibnitz rule to the last term of this equation yields:

$$ ( {\text{wB)|}}_{{{\text{z}} = {\upeta }}} - ( {\text{wB)|}}_{{z = - {\text{h}}}} + ( {\text{uB)|}}_{{{\text{z}} = {\upeta }}} \frac{{\partial {\upeta }}}{{\partial {\text{x}}}} - ( {\text{uB)|}}_{{z = - {\text{h}}}} \frac{{\partial ( - {\text{h)}}}}{{\partial {\text{x}}}} + \frac{\partial }{{\partial {\text{x}}}}[\int\limits_{{ - {\text{h}}}}^{\upeta } { ( {\text{uB)dz]}} = 0} . $$
(12.81b)

For the kinematic boundary conditions, the vertical velocity component at the bottom (z = −h) is null, w(x, z)|z=−h = 0, and at the surface (z = 0) it is equal to the time variation of the free surface, w(x, z)|z=η=η(x, t). Thus it follows that:

$$ - ( {\text{wB)|}}_{{z = - {\text{h}}}} + ( {\text{uB)|}}_{{z = - {\text{h}}}} \frac{{\partial ( - {\text{h)}}}}{{\partial {\text{x}}}} = 0, $$
(12.81c)

and

$$ ( {\text{wB)|}}_{{{\text{z}} = {\upeta }}} = ( {\text{uB)|}}_{{{\text{z}} = {\upeta }}} \frac{{\partial {\upeta }}}{{\partial {\text{x}}}} + \frac{{\partial ( {\text{B}}_{\upeta } {\upeta )}}}{{\partial {\text{t}}}}. $$
(12.82)

Applying these results to Eq. (12.81b) yields:

$$ \frac{{\partial ( {\text{B}}_{\upeta } {\upeta )}}}{{\partial {\text{t}}}} + \frac{\partial }{{\partial {\text{x}}}}[\int\limits_{{ - {\text{h}}}}^{\upeta } { ( {\text{uB)dz]}}} = 0. $$
(12.83)

The initial conditions imposed on the hydrodynamics equations may be arbitrary because they are parabolic in time, and thus any initial value may be chosen for the forward time solution (t > 0), because they may quickly remove all initial influences (Blumberg 1975).

Solutions to the equation system (Eqs. 12.77a, b, c), can not be obtained analytically. In the Blumberg’s technical article, the explicit finite difference method was applied, enabling an algebraic solution which conserves mass (volume), salt and motion in the presence of dissipative effects. To apply this method, the estuary volume was subdivided into a grid defining the knots of interest, containing (I − 1) . (K − 1) partial sub-volumes, where I and K indicate the total number of grid points in the Ox and Oz directions, respectively. Thus, if B is the estuary width at a given longitudinal position, this sub-volume is calculated by B . Δx . Δz.

The corresponding algebraic equations, which satisfy the conservation laws and will enable the determination of u, w, η and S as functions of (x, z, t), are defined at the grid locations shown in Fig. 12.5. This figure indicates that salinity (S) and pressure (p) are defined at the center of each sub-volume, while the vertical velocity component (w) is defined at the top and bottom of it. The grid containing the u-velocity components is staggered with respect to the basic grid as these velocities are defined at the center of the vertical sides of the sub-volume. This staggered arrangement permits easy application of the boundary conditions and evaluation of the dominant pressure gradient forces without interpolation or averaging; the articles of Bryan (1969) and Lendertse et al. (1973) have used similar grids (quoted in Blumberg 1975).

Fig. 12.5
figure 5

Finite difference grid scheme (after Blumberg 1975)

Since most partially mixed estuaries (mainly those that are highly stratified) have higher vertical velocity and salinity gradients than horizontal gradients, the vertical grid spacing must be made much smaller than the horizontal spacing to ensure an adequate resolution of the vertical dimension. The vertical thickness of each sub-volume is constant, except in the upper layer where, due to free surface tidal oscillations, its thickness varies in time and space.

To derive the finite difference equations, the following sum and difference operators defined by Schuman (1962) (quoted in Blumberg 1975) were used:

$$ \overline{\text{f(x, z, t)}}^{\text{x}} \equiv \frac{{ [ {\text{f(x}} + \frac{1}{2}{{\Delta}{\text{x, z, t)}}} + {\text{f(x}} - \frac{1}{2}{\Delta{\text{x, z, t]}}}}}{2}, $$
(12.84a)
$$ {\updelta }_{\text{x}} [ ( {\text{f(x, z, t)]}} = \frac{{{\text{f(x}} + \frac{{{{\Delta}}{\text{x}}}}{2} , {\text{ z, t)}} - {\text{f(x}} - \frac{{{{\Delta}}{\text{x}}}}{2} , {\text{ z, t)}}}}{{{{\Delta}}{\text{x}}}}, $$
(12.84b)

and

$$ {\updelta}_{\text{x}} \overline{{{\text{f}}({\text{x}},{\text{z}},{\text{t}})}}^{\text{x}} \equiv \frac{{[{\text{f}}({\text{x}} + {\Delta} {\text{x}},{\text{z}},{\text{t}}) + {\text{f}}({\text{x}} - {\Delta} {\text{x}},{\text{z}},{\text{t}}]}}{{2{\Delta} {\text{x}}}}. $$
(12.84c)

The \( \overline{\text{f(x)}}^{\text{n}} \) notation is used to mean the function evaluation at a time step, n. The bar and delta operators form a commutative and distributive algebraic operation. Similar operators are defined for x ± Δx and also for the independent variables z and t. Following the method proposed by Lendertse et al. (1973) (quoted in Blumberg (1975)) for vertical integration, and applying the sum and difference operators, the partial differential Eqs. (12.77a, b, c) become:

$$ {\updelta }_{\text{x}} ( {\text{uB)}}^{\text{n}} + {\updelta }_{\text{z}} ( {\text{wB)}}^{\text{n}} = 0, $$
(12.85a)
$$ \begin{aligned} & {\updelta }_{\text{t}} (\overline{\text{SB}} )^{\text{t}} + {\updelta }_{\text{x}} (\overline{\text{S}}^{\text{x}} {\text{uB)}}^{\text{n}} + {\updelta }_{\text{z}} [ ( {\text{wB)}}\overline{\text{S}}^{\text{z}} ]^{\text{n}} - {\updelta }_{\text{x}} [ {\text{BK}}_{\text{x}} {\updelta }_{\text{x}} ( {\text{S)]}}^{{{\text{n}} - {1}}} \\ & \quad - {\updelta }_{\text{z}} [ {\text{BK}}_{\text{z}} {\updelta }_{\text{z}} ( {\text{S)]}}^{{{\text{n}} - {1}}} = 0, \\ \end{aligned} $$
(12.85b)
$$ \begin{aligned} & \partial_{\text{t}} (\overline{\text{uB}} )^{\text{t}} +\updelta_{\text{x}} (\overline{\text{uu}}^{\text{x}} {\text{B}})^{\text{n}} +\updelta_{\text{z}} [(\overline{\text{w}}^{\text{x}} {\text{B}})\overline{\text{u}}^{\text{z}} ]^{\text{n}} -\updelta_{\text{x}} [{\text{BN}}_{\text{x}}\updelta_{\text{x}} ({\text{u}})]^{{{\text{n}} - 1}} \\ & \quad -\updelta_{\text{z}} [{\text{BN}}_{\text{z}}\updelta_{\text{z}} ({\text{u}})]^{{{\text{n}} - 1}} + {\text{ku}}|{\text{u}}|\updelta_{\text{z}} ({\text{B}})_{1/2}^{{{\text{n}} - 1}} \\ & \quad + {\text{Bg}}\updelta_{\text{x}}\upeta^{\text{n}} + {\text{Bg}}\upbeta\delta_{\text{x}} (\sum\limits_{{{\text{j}} = 1}}^{\text{k}} {{\text{S}}_{\text{j}} {\Delta} {\text{z}}_{\text{j}} )^{\text{n}} } = 0, \\ \end{aligned} $$
(12.85c)
$$ \begin{aligned} &\updelta_{\text{t}} [\overline{{{\text{S}}_{1} {\text{B}}_{1} ({\Delta} {\text{z}} +\upeta )}} ]^{\text{t}} +\updelta_{\text{x}} [\overline{{{\text{u}}_{1} {\text{B}}_{1} {\text{S}}_{1} ({\Delta} {\text{z}} +\upeta)^{\text{x}} }} ]^{\text{n}} - [({\text{wB}})_{3/2} {\text{S}}_{3/2}^{{ - {\text{z}}}} ]^{\text{n}} \\ & \quad +\updelta_{\text{x}} [{\text{BK}}_{\text{x}} ({\Delta} {\text{z}} +\upeta)\updelta_{\text{x}} ({\text{S}})]^{{{\text{n}} - 1}} + [{\text{BK}}_{\text{z}}\updelta_{\text{z}} ({\text{S}})_{3/2}^{{{\text{n}} - 1}} = 0, \\ \end{aligned} $$
(12.85d)

and, in the top layer, the equations are obtained by vertical integration of Eqs. (12.77b, c) from z = −Δz to z = η,

$$ \begin{aligned} &\updelta_{\text{t}} [\overline{{{\text{u}}_{1} {\text{B}}_{1} ({\Delta} {\text{z}} +\upeta^{{ - {\text{x}}}} )}} ]^{\text{t}} +\updelta_{\text{x}} [\overline{{{\text{u}}_{1} {\text{u}}_{1} }}^{\text{x}} {\text{B}}_{1} ({\Delta} {\text{z}} +\upeta)]^{\text{n}} - [\overline{\text{w}}^{\text{x}} {\text{B)}}_{3/2} \overline{\text{u}}_{ 3 / 2}^{\text{z}} ]^{\text{n}} \\ & \quad +\updelta_{\text{x}} [ ({\Delta} {\text{z}} +\upeta){\text{BN}}_{\text{x}}\updelta_{\text{x}} ({\text{u}})]^{{{\text{n}} - 1}} + [{\text{BN}}_{\text{z}}\updelta_{\text{z}} ({\text{u}}) ]_{3/2}^{{{\text{n}} - 1}} \\ & \quad + [{\text{ku}}_{ 1} |{\text{u}}_{1} |({\text{B}}_{1/2} - {\text{B}}_{3/2} )]^{{{\text{n}} - 1}} - [\uptau_{\text{W}} {\text{B}}_{1/2} ]^{{{\text{n}} - 1}} + {\text{gB}}({\Delta} {\text{z}} + \overline{\upeta}^{\text{x}} )^{\text{n}}\updelta_{\text{x}} (\upeta)^{\text{n}} \\ & \quad - {\text{g}}{\beta}{\text{B}}{\Delta} {\text{z}}({\Delta} z + {\upeta}^{{-}\text{x}} )^{\text{n}}\updelta_{\text{x}} ({\text{S}}_{1} )^{\text{n}} = 0. \\ \end{aligned} $$
(12.85e)

Equation (12.83) was obtained by vertical integration of the continuity equation over the entire water column depth, and its finite difference expression is written as:

$$ {\text{B(}}\eta )\frac{{\partial {\upeta }}}{{\partial {\text{t}}}} + \frac{\partial }{{\partial {\text{x}}}}\int\limits_{{ - {\text{h}}}}^{ 0} { ( {\text{uB)dz}} + \frac{\partial }{{\partial {\text{x}}}}} \int\limits_{ 0}^{\upeta } { ( {\text{uB)dz}}} = 0, $$
(12.86)

and its middle term may be approximated by

$$ \frac{\partial }{{\partial {\text{x}}}}\int\limits_{{ - {\text{h}}}}^{ 0} { ( {\text{uB)dz}} \approx \int\limits_{{ - {\text{h}}}}^{ 0} {\frac{{\partial ( {\text{uB)}}}}{{\partial {\text{x}}}}} } {\text{dz,}} $$
(12.87)

because (uB)z=−h ≈ 0, taking into account that by the continuity equation, the integrated function of this equation may be approximated by \( - \frac{{\partial ( {\text{wB)}}}}{{\partial {\text{x}}}} \), and it follows that:

$$ \frac{\partial }{{\partial {\text{x}}}}(\int\limits_{{ - {\text{h}}}}^{ 0} { ( {\text{uB)dz}} = - \int\limits_{{ - {\text{h}}}}^{ 0} {\frac{{\partial ( {\text{wB)}}}}{{\partial {\text{x}}}}} {\text{dz}} \approx - ( {\text{wB)}}_{{{\text{k}} = 1 / 2}} } . $$
(12.88)

Under the assumption that the u-velocity component at the free surface is equal to that of the first sub-volume (k = 1) of this layer (ui+1/2,1), it is possible to obtain the following approximation for the last term of Eq. (12.86):

$$ \frac{\partial }{{\partial {\text{x}}}}\int\limits_{ 0}^{\eta } { ( {\text{uB)dz}} \approx } \,\delta_{\text{x}} (\overline{{{\text{u}}_{{{\text{K}} = {1}}} {\text{B}}_{{{\text{k}} = 1 / 2}} {\upeta }}} )^{\text{x}} . $$
(12.89)

Combining the approximations (12.88) and (12.89) with Eq. (12.86), we have:

$$ {\updelta }_{\text{t}} (\overline{{ {\text{B}}\upeta }} )^{\text{t}} - ( {\text{wB)}}_{ 1 / 2}^{\text{n}} + {\updelta }_{\text{x}} ( {\text{u}}_{1} {\text{B}}_{1} \overline{\upeta }^{\text{x}} )^{\text{n}} = 0. $$
(12.90)

The algebraic Eqs. (12.85a, b, c, d, e) and (12.90) constitute a finite difference system. All terms are written in central finite differences in space and time, with the exception of diffusion and friction; the diffusion terms are delayed by one time step to simplify the scheme without losing the equation’s conservative property, and the friction terms are delayed one time step to maintain the stability. The full program documentation, a linear stability analysis and its application to the Potomac River estuary (Washington, DC, USA) are presented in Blumberg’s technical report.

The finite difference formulation for a non-linear equation may give rise to a special type of instability. As first pointed out by Phillips (1969) (quoted Blumberg 1975), non-linear instability cannot be suppressed by using smaller values of the time step. Although no rigorous theory exists to explain the phenomena the instability, which arises when short-wave disturbances are not damped out, must be removed. In the numeric finite differences program of Blumberg, instability did not become dominant, primarily because of the lack of substantial horizontal gradients, and due to the introduction of an artificial viscosity term written as,

$$ {\text{K}}_{\text{x}} = {\text{N}}_{\text{x}} = (\frac{{{\text{c}}{\Delta} {\text{x)}}}}{\sqrt 2})^{2} | \frac{{\partial {\text{u}}}}{{\partial {\text{x}}}}|, $$
(12.91a)

where c is an adjustable constant, and Δx is the horizontal grid spacing. Starting with this coefficient, it was demonstrated that the computational procedure becomes stable if the following condition is achieved between the diffusion coefficient Kx, the time step interval (Δt) and the longitudinal grid spacing (Δx):

$$ \frac{{{\text{K}}_{\text{x}} {\Delta} {\text{t}}}}{{({\Delta} {\text{x)}}^{2} }} \le \frac{1}{ 4}. $$
(12.91b)

The computational boundary condition for the velocities are that the water passing through the ocean boundary is constrained to be horizontal (w = 0), and that there is no momentum flux imparted to the estuary by the ocean. The presence of salinity requires additional boundary conditions: (i) when inflow occurs, the salinity is prescribed, and; (ii) in the outflow, hydrodynamic equations governing the interior region determine the salinity. Since the horizontal gradients of salinity near the boundary are small and the flow is horizontal, simple advection can be taken as the governing process for salinity distribution:

$$ \frac{{\partial {\text{S}}}}{{\partial {\text{t}}}} + \frac{{\partial ( {\text{uS)}}}}{{\partial {\text{x}}}} = 0, $$
(12.92)

and the boundary value is extrapolated along the characteristic solution of the centered difference analogous to this equation.

In the application of Eqs. (12.85a, b, c, d, e), semi-empirical relationships of the vertical kinematic eddy viscosity (Nz) and diffusion (Kz) coefficients were used. The closure of this system of equations is made with a semi-empirical approach using the following equations (Blumberg 1975):

$$ {\text{K}}_{\text{z}} = {\text{k}}_{1}^{2} {\text{z}}^{2} ( 1- \frac{\text{z}}{\text{h}})^{2} | \frac{{\partial {\text{u}}}}{{\partial {\text{z}}}} | ( 1 { - }\frac{\text{Ri}}{{{\text{Ri}}_{\text{c}} }})^{ 1 / 2} , $$
(12.93)

and

$$ {\text{N}}_{\text{z}} = {\text{K}}_{\text{z}} ( 1+ {\text{Ri),}}\quad{\text{for}}\;{\text{Ri}} < {\text{Ri}}_{\text{c}} , $$
(12.94a)
$$ {\text{N}}_{\text{z}} =\upgamma_{\text{c}} {\text{K}}_{\text{z}} ,\quad {\text{for}}\; {\text{Ri}}^{ 3} \ge {\text{Ri}}_{\text{c}} , $$
(12.94b)

where γc is a critical condition of the non-dimensional quantity γ defined by the ratio Kz/Nz.

As should be expected, the staggered grid arrangement and the finite difference increments influence the schematization and the resolution of the velocity and salinity fields. Thus, the grid spacing should be small enough to describe the estuary bathymetry and resolve the salt intrusion limit. In the Blumberg’s-2D numerical model, the vertical grid spacing faced the following constraints: (i) stability arising from the finite difference method for the diffusive and viscous terms, and; (ii) the thickness of the upper layer should be larger than the gravity wave amplitude. For optimal numerical results, the restriction was Δz > 4ηmax, and the equation system required the use of a semi-implicit method.

The usefulness of the numerical model was assessed with several tests, which investigated whether the governing equations were correctly formulated and properly programmed. The first test run checked for the conservation of volume and simulated a non-tidal river flow demonstrated for the following conditions: (i) volume transport through any cross-section using an equation similar to Eq. (7.103c, Chap. 7); (ii) tidal wave propagation for a long channel with uniform transverse sections; (iii) channel with varying cross-sectional areas; (iv) non-steady-state comparison between flume measurements and computed solutions for times of high and low water, and; (v) comparison of time-averaged numeric model solutions simulated during a tidal cycle with an analytic steady-state solution.

All these tests performed in the numerical model are well documented in Blumberg’s technical report. For the last condition (v), an analytical steady-state model was used, with the non-linear terms (advective acceleration) neglected, the gradient pressure force reduced to the baroclinic component and the kinematic eddy viscosity coefficient constant. With these simplifications, the longitudinal equation of motion (Eq. 11.2, combined with 11.3 and 11.5, Chap. 11) is used to calculate the u-velocity component, according to Hunter (1975, quoted in Blumberg (1975)) is given by:

$$ - {\text{g}}\upbeta\frac{\partial }{{\partial {\text{x}}}}\int\limits_{\text{z}}^{ 0} {\text{S}} {\text{dz}} + {\text{N}}_{\text{z}} \frac{{\partial^{ 2} {\text{u}}}}{{\partial {\text{z}}^{ 2} }} = 0. $$
(12.95)

Disregarding the variation of salinity with depth, \( \partial {\text{S}}/\partial {\text{z}} \approx 0 \), (weakly stratified or well-mixed estuaries) yields:

$$ {\text{g}}\upbeta \frac{{\partial {\text{S}}}}{{\partial {\text{x}}}} + {\text{N}}_{\text{z}} \frac{{\partial^{ 3} {\text{u}}}}{{\partial {\text{z}}^{ 3} }} = 0, $$
(12.96)

which will be solved with the following boundary and integral boundary conditions:

  • Wind stress at the free surface:

    $$ {\uprho}{\text{N}}_{\text{z}} \frac{{\partial {\text{u}}}}{{\partial {\text{z}}}} |_{{{\text{z}} = 0}} = {\uptau }_{\text{W}} . $$
    (12.97a)
  • Null velocity at the bottom:

    $$ {\text{u}}\left( {\text{z}} \right)|_{{{\text{z}} = - {\text{h}}}} = {\text{u}}\left( { - {\text{h}}} \right) = 0. $$
    (12.97b)
  • Fresh water (volume) conservation:

    $$ \int\limits_{{ - {\text{h}}}}^{ 0} {{\text{u(z)dz}} = \frac{{{\text{Q}}_{\text{f}} }}{\text{B}}} ,\quad{\text{or}},\quad\int\limits_{ - 1}^{0} {{\text{u(Z)dZ}} = \frac{{{\text{Q}}_{\text{f}} }}{\text{Bh}} = {\text{u}}_{\text{f}} } , $$
    (12.97c)

    where B and h are the estuary width and depth, respectively. In Hunter’s original article, instead u(−h) = 0 the bottom boundary condition it was assumed that the bottom shear stress (τBx) is linearly related to the velocity. The integral boundary condition (12.97c) indicates that the volume (mass) continuity is preserved.

With three successive integrations of Eq. (12.96) the vertical velocity profile is calculated by:

$$ {\text{u(z)}} = - \frac{{ {\text{g}}\upbeta }}{{{\text{N}}_{\text{z}} }}\iiint {\frac{{\partial {\text{S}}}}{{\partial {\text{x}}}}}{\text{dzdzdz,}} $$
(12.98)

and the general solution is:

$$ {\text{u(z)}} = - \frac{{{\text{gS}}_{\text{x}} {\upbeta }}}{{ 6 {\text{N}}_{\text{z}} }}{\text{z}}^{ 3} + \frac{{{\text{C}}_{1} }}{2}{\text{z}}^{2} + {\text{C}}_{2} {\text{z}} + {\text{C}}_{ 3} , $$
(12.99)

where \( \frac{{\partial {\text{S}}}}{{\partial {\text{x}}}} = {\text{S}}_{\text{x}} \), C1, C2 and C3 are integrations constants with the following dimensions [C1] = [L−1T−1], [C2] = [T−1] and [C3] = [LT−1], respectively. Applying the first boundary condition (12.97a), it follows immediately that \( {\text{C}}_{2} = \frac{{{\uptau }_{\text{W}} }}{{{\uprho}{\text{N}}_{\text{z}} }} \) and, the boundary conditions (12.97b, c) yield two equations with the unknowns C1 and C3:

$$ \frac{{{\text{gS}}_{\text{x}} {\upbeta}{\text{h}}^{ 3} }}{{ 6 {\text{N}}_{\text{z}} }} + \frac{1}{2}{\text{h}}^{2} {\text{C}}_{1} + {\text{C}}_{ 3} - \frac{{{\uptau }_{\text{W}} {\text{h}}}}{{{\uprho}{\text{N}}_{\text{z}} }} = 0, $$
(12.100a)

and

$$ \frac{1}{ 2 4}\frac{{{\text{gS}}_{\text{x}} {\upbeta}{\text{h}}^{ 3} }}{{{\text{N}}_{\text{z}} }} + \frac{1}{ 6}{\text{C}}_{1} {\text{h}}^{2} - \frac{1}{2}\frac{{{\uptau }_{\text{W}} {\text{h}}}}{{{\uprho}{\text{N}}_{\text{z}} }} + {\text{C}}_{ 3} = \frac{{{\text{Q}}_{\text{f}} }}{\text{Bh}}. $$
(12.100b)

Solving this system of equations for the unknowns, C1 and C3, its analytical expressions are:

$$ {\text{C}}_{1} = - \frac{ 3}{ 8}\frac{{{\text{gS}}_{\text{x}}\upbeta{\text{h}} }}{{{\text{N}}_{\text{z}} }} - \frac{{ 3 {\text{Q}}_{\text{f}} }}{{ 2 {\text{Bh}}^{ 3} }} + \frac{ 3}{2}\frac{{{\uptau }_{\text{W}} }}{{{\uprho}{\text{N}}_{\text{z}} {\text{h}}}}, $$
(12.101a)

and

$$ {\text{C}}_{ 3} = \frac{1}{ 4 8}\frac{{{\text{gS}}_{\text{x}}\upbeta{\text{h}}^{ 3} }}{{{\text{N}}_{\text{z}} }} + \frac{ 3}{2}\frac{{{\text{Q}}_{\text{f}} }}{\text{Bh}} + \frac{1}{ 4}\frac{{{\uptau }_{\text{W}} {\text{h}}}}{{{\uprho}{\text{N}}_{\text{z}} }}. $$
(12.101b)

Substituting the calculated values of C1, C2 and C3 into the general solution, (12.99), yields the steady-state vertical velocity profile,

$$ \begin{aligned} {\text{u(z)}} & = - \frac{1}{ 6}\frac{{{\text{gS}}_{\text{x}}\upbeta{\text{z}}^{ 3} }}{{{\text{N}}_{\text{z}} }} + ( - \frac{ 3}{ 1 6}\frac{{{\text{gS}}_{\text{x}}\upbeta{\text{h}} }}{{{\text{N}}_{\text{z}} }} + \frac{ 3}{2}\frac{{{\text{Q}}_{\text{f}} }}{{{\text{Bh}}^{ 3} }} + \frac{ 3}{ 4}\frac{{{\uptau }_{\text{W}} }}{{\uprho{\text{N}}_{\text{z}} {\text{h}}}} ) {\text{z}}^{2} \\ & \quad + \frac{{{\uptau }_{\text{W}} }}{{\uprho{\text{N}}_{\text{z}} }}{\text{z}} + \frac{1}{ 4 8}\frac{{{\text{gS}}_{\text{x}}\upbeta{\text{h}}^{ 3} }}{{{\text{N}}_{\text{z}} }} + \frac{1}{ 4}\frac{{{\uptau }_{\text{W}} {\text{h}}}}{{\uprho{\text{N}}_{\text{z}} }} + \frac{ 3}{2}\frac{{{\text{Q}}_{\text{f}} }}{\text{Bh}}. \\ \end{aligned} $$
(12.102a)

Factoring to reduce the solution to its simplest expression of the u-velocity component in terms of the non-dimensional depth (Z = z/h), gives:

$$ \begin{aligned} {\text{u(Z)}} & = - \frac{1}{ 4 8}\frac{{{\text{gS}}_{\text{x}}\upbeta{\text{h}}^{ 3} }}{{{\text{N}}_{\text{z}} }}( - 8 {\text{Z}}^{ 3} - 9 {\text{Z}}^{2} + 1 )+ \frac{ 3}{2}{\text{u}}_{\text{f}} ( {\text{Z}}^{2} - 1 )\\ & \quad + \frac{1}{ 4}\frac{{{\uptau }_{\text{W}} {\text{h}}}}{{\uprho{\text{N}}_{\text{z}} }} ( 3 {\text{Z}}^{2} + 4 {\text{Z}} + 1 ). \\ \end{aligned} $$
(12.102b)

As would be expected, the vertical velocity profile is driven by the baroclinic pressure gradient force, river discharge and wind stress, and it is easy to demonstrate that this solution identically satisfies the surface and bottom boundary conditions and the volume (mass) continuity.

With this analytical solution, the steady-state profile of the u-velocity component is calculated using the following values: Nz = 1.6 × 10−2 m2 s−1, β = 7.0 × 10−4, h = 10.5 m, uf = 0.02 m s−1, \( {\uptau }_{\text{W}} = \) 0.5 kg m−1 s−2 and \( \partial {\text{S}}/\partial {\text{x}} \) = 2.3 × 10−2 m−1. The results are presented comparatively in Fig. 12.6, indicating a good agreement of the ebb and flood motion with the analytical and numerical profiles obtained by Hunter (1975) and Blumberg (1975), respectively. It should be remembered that Hunter’s analytical profile, shown in this figure, was calculated with moderate bottom boundary condition.

Fig. 12.6
figure 6

Validation of the vertical u-velocity component profile calculated by a numeric solution (dashed line) by comparison with steady-state analytic solutions from the Hunter (1975) model under the conditions of moderate (thin line) and maximum bottom friction (thick line), respectively. Negative and positive values indicate ebb and flood tidal conditions, respectively (adapted from Blumberg 1975)

12.7 Results on Numerical Modelling: Caravelas-Peruípe Rivers Estuarine System

The coastal plain estuary where the Caravelas and Peruípe rivers empty into the coastal sea in the southern Bahia State (Bahia, Brazil), is a complex transitional environment bordering on a mangrove forest and vestigial areas of South Atlantic Forest. The Caravelas-Peruipe Rivers Estuarine System (CPRES) empties its water mass almost 60 km west of the Abrolhos National Marine Park (Fig. 12.7).

Fig. 12.7
figure 7

The Caravelas-Peruípe Rivers Estuarine System, the Aracruz—TA harbor, the Sueste and Abrolhos channels, the Abrolhos National Marine Park (left). Location of the oceanographic stations in Caravelas (AB) and Nova Viçosa (CE) in the North and South, respectively (right) (according to Andutta 2011)

This system was sampled during an interdisciplinary, inter-university thematic project “Productivity, Sustainability and Uses of the Abrolhos Banks Ecosystem”, sponsored by the National Brazilian Council for Research and Technology Development (CNPq) and the Ministery of Science and Technology (MST). To accomplish the objective of the project, fortnightly estuarine field work was performed in spring and neap tidal cycles in the austral winter and summer of 2007 and 2008, respectively, providing an observational data basis for numerical modeling validation for the estuarine region (Fig. 12.7). Further investigations of this project may be found in the special edition of Continental Shelf Research (2013, v. 70, 176 p.).

An outline of some the numerical model (Delft 3-D Flow) results of the estuarine system’s spatial and temporal tidal oscillation variability, thermohaline properties, and circulation will be presented in this topic.

The numerical curvilinear grid used in the simulations is presented in Fig. 12.8. To allow better resolution, the grid spacing was locally refined in the estuarine channels to 15 × 15 m2, increasing in the coastal region and reaching up to 300 × 300 m2. The model results were quantitatively validated using the Skill parameter, with field measurements of tidal oscillation, currents and salinity during neap and spring tides at mooring stations. In the numerical data processing, homogeneous conditions were initially used for the fields of salinity, density and the kinematic vertical coefficients of viscosity and diffusivity; after four weeks of running simulations, these fields were saved under spatially varied conditions. These new initial conditions allowed transient time to be avoided, thus optimizing the simulations.

Fig. 12.8
figure 8

The curvilinear numeric grid and size distributions in the investigated region (according to Andutta 2011)

The model evaluation was performed using field measurements undertaken during the summer and winter austral seasons, and longitudinal measurements in the main channel of the Caravelas estuary, presented in the articles of Schettini and Miranda (2010) and Pereira et al. (2010). River discharge values were taken from the Brazilian National Water Agency (ANA), and were estimated as ≈20.0 m3 s−1 with extrapolation of ≈4.0 m3 s−1, for the unified Cúpido and Jaburuna rivers, which are tributaries of the Caravelas estuary.

Tidal oscillations at neap and spring tides were well simulated at the four control sites (A, B, C and D) shown in Fig. 12.7, right, which were also used to validate the spatial distribution of tidal heights, circulation and salinity. The best results, with mean values of over 0.9 for the Skill parameter, were obtained for tidal amplitudes between 1.3 and 2.5 m at neap and spring tides (Fig. 12.9), respectively.

Fig. 12.9
figure 9

Experimental and theoretical tidal oscillations in the Caravelas estuarine channel at neap (left) and spring (right) tide in January, 2008 (according to Andutta 2011)

Longitudinal velocity component and salinity simulations for January, 2008, at mooring station, A, during neap and spring tides are shown in Figs. 12.10 and 12.11, respectively. The numerical results of the velocities were simulated better in spring tides, with the mean skill values in the range of 0.77 and 0.93, while at neap tides this parameter was lower, with values between 0.38 and 0.65. Good results were achieved for the salinity structure at spring tide, with mean skill values over 0.83, hence comprising all the control station for validation. At neap tides, the corresponding mean skill values were relatively high, varying in the range of 0.73–0.85. In addition, there were difficulties adequately simulating the highly vertical and longitudinal salinity stratification in the Nova Viçosa estuary (not shown), which was due to the stronger river inflow on the Peruípe river causing difficulties in the measurements of hydrographic properties and currents in the field.

Fig. 12.10
figure 10

Comparison of time variability of observational u-velocity profiles (m s−1), the corresponding theoretical profiles, and the Skill parameter at station, A, during neap (upper) and spring (lower) tides. Flood and ebb motions are indicated by u > 0 and u < 0, respectively (according to Andutta 2011)

Fig. 12.11
figure 11

Comparison of time variability of observational salinity (‰) profiles, the corresponding theoretical, and the Skill parameter at station A during neap (upper) and spring (lower) tidal cycles (according to Andutta 2011)

Time variations of the u-velocity profile, u = u(Z, t), during a semi-diurnal tidal cycle calculated by the model are presented comparatively with the experimental profiles, together with the corresponding Skill parameter. At neap tide (Fig. 12.10, upper), relatively high Skill values (0.6 to 0.8) were obtained, validating theoretical results during the higher current intensities between the time period of ≈12 h to ≈16 h, but an accentuated phase difference can be observed between theoretical and observational data. However, outside of this high intensity period the Skill parameter indicated very low values (<0.2), reducing its tidal mean value to only 0.38. For the spring tidal period, there was an increase in the mean Skill value, which was double (0.77) that observed in the neap tidal period, indicating a good correspondence between observed and simulated salinity variation at the mooring station (Fig. 12.10, lower).

Variations in the simulated and observational vertical salinity profiles, S = S(z, t), during the neap and spring tidal cycles are shown in Fig. 12.11, upper. In the neap tide cycle, the observational and the theoretical salinity profiles varied in the intervals 32.0–35.8‰ and 34.0–35.8‰, respectively, and the calculated mean skill value was relatively high (0.85). However, in the time interval between 13 and 16 h, the theoretical simulation indicated only a small vertical salinity stratification compared with the observed values, and near bottom, low Skill values were observed (<0.2), and the salt water intrusion near the bottom was well simulated (~35.5‰). In the spring tide cycle (Fig. 12.11, lower), as observed in the velocity simulation, the experimental and simulated salinity values presented close variations intervals and the mean skill values were high (0.85 and 0.97).

The Delft3D-Flow numeric model has also been applied to a comparative analysis on the coastal water mass intrusions in the Caravelas estuarine channel, shown in Fig. 12.12. For these simulations, experimental results of Schettini and Miranda (2010) measured in April, 2001 were used in the validation, covering a longitudinal section distance of 16 and 26 km, for low and high tide salinity intrusions, respectively.

Fig. 12.12
figure 12

Longitudinal section in the Caravelas estuary used in the numerical simulation of the longitudinal salinity intrusions during neap and spring tidal conditions. The longitudinal section is indicated by the red line

Although the simulations have been compared and validated with no simultaneous observational data and probably under different forcing conditions, the model parameters were adjusted to a higher validation Skill parameter.

During the spring low tide, the nearly steady-state salinity fields indicates a low vertical salinity stratification, with the theoretical and observational salinity varying in the intervals ≈34.5–35.0‰ and ≈34.0–34.5‰, respectively (Fig. 12.13). About 6 km from the mouth, the theoretical and observational values are very close varying from ≈32.0 to ≈32.5‰, and up to ≈12 km landward from the estuary mouth, the salinity decreases to ≈ 30.0 and ≈28.0–28.5‰ for the observational and theoretical distributions, respectively.

Fig. 12.13
figure 13

Nearly steady-state longitudinal salinity (‰) distributions in the Caravelas estuary during the spring low tide. Simulated (upper) and observational data (lower) from Schettini and Miranda (2010) (according to Andutta 2011)

The longitudinal nearly-state salinity distribution in the Caravelas estuary at spring high tide is shown in Fig. 12.14. The model results (upper) indicate a vertically well-mixed estuary, which is in agreement with the observational data (lower). It should be noted that the highly saline water (>36.0‰) shows the Tropical Water mass (TW) intrusion advancing up to 6 km into the estuary. A good agreement between the numerical simulation and the experimental data is also observed up to 12 km from the estuary mouth, with salinities in the interval 36.0 psu —36.4 psu and ≈33 psu for the observational and theoretical longitudinal profiles, respectively. Thus, according to Andutta (2011), these results conclusively indicate that the Tropical Water (TW) mass intrusion into the Caravelas estuary was adequately simulated, including the low salinity estuarine water mass intrusion towards its head.

Fig. 12.14
figure 14

Nearly steady-state longitudinal salinity (‰) distribution in the Caravelas estuary during the spring high tide. Simulated (upper), according to Andutta (2011), and the observational data (lower) according to Schettini and Miranda (2010)