Abstract
Environmental hydrodynamics is typically characterized by free-surface hydrostatic flows. Within such a framework a set of simplified models are derived from the Reynolds averaged Navier–Stokes equations under various simplifying assumptions. Numerically, a simple method for the 1D open channel flow is derived first. This method is then extended to the \(2D_{xz}\) laterally averaged model and to the \(2D_{xy}\) vertically averaged model. Next, a semi-implicit method for the 3D model is described and discussed.
Similar content being viewed by others
Avoid common mistakes on your manuscript.
1 Introduction
The governing three-dimensional equations describing free-surface flows of an incompressible fluid are the well known Navier–Stokes equations which express the conservation of momentum and mass. Such equations in Cartesian coordinates have the following form (see, e.g., [1,2,3])
where u(x, y, z, t), v(x, y, z, t) and w(x, y, z, t) are the velocity components in the horizontal x, y and vertical z-directions; t is the time; p is the normalized pressure, that is the pressure divided by the constant density; g is the gravitational acceleration and \(\nu \) is an eddy viscosity coefficient. Hereafter it is assumed that fluid flow is always confined between a prescribed solid bottom and a free-surface (see Fig. 1).
Assuming that the free-surface can be expressed as a single valued function \(z=\eta (x,y,t)\), the free-surface equation, also known as the kinematic condition of the free-surface, is given by
where \(u^s=u(x,y,\eta ,t)\), \(v^s=v(x,y,\eta ,t)\) and \(w^s=w(x,y,\eta ,t)\) are the velocity components at the free-surface.
Under the assumption that the bottom profile can be expressed as a single valued function \(z=-h(x,y)\), the total water depth is \(H(x,y,\eta )=h(x,y)+\eta (x,y,t)\) and a kinematic condition at the bottom boundary is
where \(u^b=u(x,y,-h,t)\), \(v^b=v(x,y,-h,t)\) and \(w^b=w(x,y,-h,t)\) are the velocity components at the bottom. Condition (3) states that the velocity component perpendicular to the solid boundaries must vanish.
The tangential stress boundary conditions at the free-surface are specified by the prescribed wind stresses as follows
where \(u_a\) and \(v_a\) are the horizontal wind velocity components and \(\gamma _{_T}\) is a nonnegative wind stress coefficient. Typically, \(\gamma _{_T}\) is taken to be \(\gamma _{_T}=C_D\frac{\rho _a}{\rho }\sqrt{u^2_a+v^2_a}\) where \(\rho _a\) is the density of the air, \(\rho \) is the water density, \(\frac{\rho _a}{\rho }=1.25\times 10^{-3}\) and \(C_D=1.4\times 10^{-3}\) is a drag coefficient.
The tangential boundary conditions at the sediment-water interface are given by specifying the bottom stress as follows
where \(\gamma _{_B}\) is a nonnegative bottom friction coefficient. Typically, \(\gamma _{_B}\) is taken to be \(\gamma _{_B}=g\frac{\sqrt{(u^b)^2+(v^b)^2}}{C^2_z}\) and \(C_z\) is the Chezy friction coefficient which can be a constant (e.g., \(C_z=50\)), or related to a Manning’s constant \(\hbox {n}\) by \(C_z=\frac{H^\frac{1}{6}}{\hbox {n}}\).
Integration of the mass conservation equation over the depth yields
thus, by using the kinematic boundary conditions (2)–(3) the following conservative form of the free-surface equation is obtained
or, equivalently,
Equation (8) will replace (2) in the model formulations to be presented in the next Section (see, e.g., [4,5,6,7]).
2 Simplified mathematical models
In most environmental flows the vertical acceleration, as well as the vertical viscosity forces, are small when compared to the gravity acceleration and to the pressure gradient. Consequently, by neglecting the advective and the viscous terms in the third momentum equation, a simplified equation for pressure results
This equation readily yields the following expression for the hydrostatic pressure
where \(p_a(x,y,t)\) is the atmospheric pressure at the free-surface which, without loss of generality, will be assumed to be a constant.
Substitution of (9) into the Navier–Stokes equations yields the following simplified three-dimensional hydrostatic model (see, e.g., [4,5,6,7])
With properly specified initial and boundary conditions, Eq. (10) describe three-dimensional, hydrostatic flows. Semi-implicit methods for the numerical treatment of this hydrostatic 3D model will be described in Sect. 6.
In lieu of solutions of the complete three-dimensional equations, the flow and circulation in a class of well-mixed estuaries, lakes and coastal embayments can be satisfactorily represented by the solution of a set of vertically averaged shallow water equations. The system of vertically averaged momentum equations can be derived by integrating vertically the momentum equations in (10) from the bottom \(z=-h\) to the free-surface \(z=\eta \). Specifically, since \(H(x,y,\eta )=h(x,y)+\eta (x,y,t)\) is the total water depth, the vertically averaged velocities U and V are defined to be \(U=\frac{1}{H}\int _{-h}^{\eta }udz\) and \(V=\frac{1}{H}\int _{-h}^{\eta }vdz\), respectively. Thus, by using the kinematic conditions (2)–(3), vertical integration of the left-hand side of the u momentum equation in (10) yields
Similarly, by using the tangential stress boundary conditions (4) and (6), the vertical integration of the viscous terms yields
where \(\bar{\nu }=\frac{1}{H}\int _{-h}^{\eta }\nu dz\) is the vertically averaged viscosity coefficient.
Analogous results are obtained by vertically integrating the left-hand side and the viscous terms in the v-momentum equation in (10). Thus, the two-dimensional, vertically averaged shallow water equations are obtained from the free-surface equation (8) and from the vertical integration of the momentum equations in (10) which, after standard approximations of local velocities with their vertically average, yields the following \(2D_{xy}\) model (see, e.g., [8,9,10])
where the overall friction coefficient \(\gamma =\gamma _{_B}+\gamma _{_T}\) must be nonnegative and can be reformulated to compensate for the specified approximations.
Equation (11) constitute a system of three partial differential equations with three unknown functions U(x, y, t), V(x, y, t) and \(\eta (x,y,t)\). A semi-implicit numerical method for solving these equations will be discussed in Sect. 5.
Another alternative to the fully three-dimensional equations, is a simplified \(2D_{xz}\) model for narrow and deep estuaries which can be derived from the 3D equations under the assumption that the circulation of interest takes place in the vertical x-z plane. To this purpose let \(y=\ell (x,z)\) and \(y=-r(x,z)\) be single value functions representing the left and the right walls, respectively, so that \(B(x,z)=\ell (x,z)+r(x,z)\ge 0\) represents the width of the estuary (see Fig. 2).
The laterally averaged u-momentum equation can be derived by integrating u-momentum equation in (10) from the right \(y=-r(x,z)\) to the left wall \(y=\ell (x,z)\). To this purpose the laterally averaged velocities U and W, and the laterally averaged free-surface \(\bar{\eta }\) are defined to be \(U=\frac{1}{B}\int _{-r}^{\ell }udy\), \(W=\frac{1}{B}\int _{-r}^{\ell }wdy\) and \(\bar{\eta }=\frac{1}{B}\int _{-r}^{\ell }\eta dy\), respectively. Thus, by using appropriate boundary conditions, and after standard approximations of the local variables with their laterally averaged quantities, the lateral integration of the u-momentum equation in (10) yields
where \(\bar{\nu }=\frac{1}{B}\int _{-r}^{\ell }\nu dy\) is the laterally averaged viscosity coefficient and the wall friction coefficient \(\gamma \) must be nonnegative and can be reformulated to partially compensate for the specified approximations.
Similarly, the lateral integral of the incompressibility condition in (10) yields
Finally, upon integration of the free-surface equation in (10), one gets
where \(A(x,\bar{\eta })=\int _{-r}^{\ell }H dy\) is the cross section area.
In summary, then, the two-dimensional laterally averaged model is given by eqs. (12), (13) and (14), that is,
With properly specified initial and boundary conditions, Eq. (15) form a \(2D_{xz}\) model that can be used to simulate water circulation in estuarine environment. A semi-implicit numerical method for solving these equations will be described in Sect. 4.
Finally, the one-dimensional shallow water equations for unsteady flows in open channel can be derived from either the two-dimensional models, or directly from the three-dimensional equations (10) by performing an average over the cross section. These equations, also known as the de Saint–Venant equations [10] are given by
where, U(x, t) is the fluid velocity averaged over the cross section; \(\bar{\eta }(x,t)\) is the laterally averaged free-surface elevation; \(A(x,\bar{\eta }(x,t))\) is the cross section area; and the overall friction coefficient \(\gamma =\gamma _{_B}+\gamma _{_T}\) must be nonnegative and can be reformulated to compensate for the specified approximations. Typically, \(\gamma _{_B}\) is taken to be \(\gamma _{_B}=\frac{g \hbox { n}^2 \vert U \vert }{R^{1/3}}\), where R is the hydraulic radius defined as the ratio of the cross section area and the wetted perimeter.
Equations (16) constitute a system of two partial differential equations with two unknown functions U(x, t) and \(\bar{\eta }(x,t)\). A semi-implicit numerical method for solving these equations will be discussed in the next Section. Figure 3 shows a schematic representation of the four differential models described above.
3 Numerical methods for the 1D model
There are several methods that can be used to solve numerically the shallow water equations. These methods can be explicit or implicit, finite differences, finite volumes or finite elements (see, e.g., [2,3,4,5,6,7,8,9,10,11]).
In solving numerically the differential equations (16) with simple explicit methods the occurrence of instability is a relatively common and disturbing event. Of course, a fully implicit discretization of these equations may lead to methods which are unconditionally stable. Implicit methods, however, may turn out to be unnecessarily complex. As a compromise, this Section will focus on the development of simple semi-implicit numerical methods which easily extend to multidimensional problems.
For the time being, the channel under consideration is assumed to have a rectangular cross section of constant width \(B=1\) so that the cross sectional area A simplifies to \(A(x,\eta )=H(x,\eta )\). Moreover, by using the lower case symbol u to denote the cross sectional average velocity, equations (16) in non conservative form are
A severe limitation of standard explicit numerical methods for equations (17) is due to the stability restriction imposed by the Courant–Friedrichs–Lewy (CFL) condition [8,9,10,11]. Our first objective is to identify those terms in equations (17) whose implicit discretization enables to circumvent the CFL stability restriction of explicit methods.
Equations (17) in matrix notation can be written as
where
In open channel flows the horizontal viscosity term \(\frac{1}{H}(\nu H u_x)_x\) is usually neglected. When \(\nu =0\) system (18) is strictly hyperbolic and the corresponding characteristic equation is given by
whose solutions are \(\lambda _{1,2}=u \pm \sqrt{gH}\). Note that when \(\vert u \vert <\sqrt{gH}\) the flow is subcritical and the characteristic speeds \(\lambda _{1,2}\) have opposite directions (see Fig. 4). More importantly, the dominant term \(\sqrt{gH}\) arises from the off diagonal terms g and H in matrix \(\mathbf{A}\). These are the coefficient of \(\eta _x\) in the momentum equation and the coefficient of \(u_x\) in the continuity equation. Therefore these derivatives must be discretized implicitly in order for the stability of the method to be independent of the celerity \(\sqrt{gH}\). The viscosity term and the non-linear advective term in the momentum equation will be discretized explicitly. However, for stability, the friction term in the momentum equation will be discretized implicitly, but the friction coefficient \(\frac{\gamma }{H}\) will be evaluated explicitly so that the resulting approximation will be linear. The continuity equation will be considered in its original conservative form so that the differential equations being solved are
Next, a staggered grid of \(N_x\) equally spaced grid points is introduced. Let \(\Delta x^{}\) and \(\Delta t\) be the space and the time steps, respectively. The discrete variables u and \(\eta \) are defined at alternate locations as shown in Fig. 5. Additionally, assuming that the bottom profile is prescribed everywhere, the discrete total water depths at the n-th time level are enforced to be nonnegative and are taken to be
where \(\eta ^n_{i+\frac{1}{2}}\) is determined from the nearest grid values by taking, e.g., the average, the upwind or the maximum between \(\eta ^n_{i}\) and \(\eta ^n_{i+1}\).
Then, a general semi-implicit discretization of equations (19) takes the form
where
and \(u^*_{i+\frac{1}{2}}=Fu^{n}_{i+\frac{1}{2}}-g\frac{\Delta t^{}}{\Delta x^{}}\left( \eta ^{n}_{i+1}-\eta ^{n}_i\right) \) is an explicit guess for the new velocity.
Of course, Eq. (22) is defined only on wet grid points, i.e., where \(H^{n}_{i+\frac{1}{2}}> 0\). On dry grid points \(u^{n+1}_{i+\frac{1}{2}} =0\) is assumed.
In Eq. (22) F is any stable non-linear difference operator that includes a spatial discretization of the advective and viscous terms. A particular form for F can be chosen in a variety of ways thus, for example, by using a simple explicit upwind formula, or a more accurate and stable Eulerian–Lagrangian approach (for details see [4,5,6,7,8,9,10,11] and the references therein).
For any structure given to F, Eqs. (22)–(23) now constitute a piecewise linear system of equations with unknowns \(u^{n+1}_{i+\frac{1}{2}}\) and \(\eta ^{n+1}_{i}\) over the entire mesh configuration. The nonlinearity resides in the definition of \(H_i(\eta ^{n+1}_i)\) as specified by equation (20). This system has to be solved at each time step in order to determine the new values of the field variables from given initial data.
From a computational point of view, the system formed by Eqs. (22)–(23) is first reduced to a smaller one in which \(\eta ^{n+1}_{i}\) are the only unknowns. Specifically, where \(H^{n}_{i\pm \frac{1}{2}}> 0\) the expressions of unknowns \(u^{n+1}_{i\pm \frac{1}{2}}\) from the discretized momentum equation (22) is substituted into the continuity equation (23) to yield
where, by setting \(G^n_{i\pm \frac{1}{2}}=H^n_{i\pm \frac{1}{2}}Fu^n_{i\pm \frac{1}{2}}+\Delta t \gamma ^{n}_{_T}u^{n+1}_{a}\), the known right-hand side \(b^n_i\) is given by
Equation (24) can be assembled into a sparse, piecewise linear system of \(N_x\) equations in which \(\eta ^{n+1}_i,\ i=1,2,\dots ,N_x \) are the only unknowns. This system takes the following form
where
and \(\mathbf{T}\) is the sparse, symmetric and tridiagonal matrix that arises from the linear terms in Eq. (24).
At every time step, system (25) can be solved iteratively by a Newton type method in order to determine the new free-surface elevations \(\eta _i^{n+1}\). To this purpose note that the Jacobian matrix associated to system (25) is \(\mathbf{D({\varvec{\zeta }})+T}\) where \(\mathbf{D({\varvec{\zeta }})}\) is a diagonal matrix whose diagonal entries are
Thus, a converging Newton type method for solving system (25) can be formulated as follows (see [12] for details): guess \(\zeta ^0_i>-h_i\) for all \(i=1,2,\dots ,N_x\). Then, until convergence, compute
where the superscript \(\ell \) denotes the iteration step (not to be confused with the time level n), \(\mathbf{D}^\ell =\mathbf{D}({\varvec{\zeta }}^\ell )\) and the vector \({\varvec{\delta }}^\ell =[\mathbf{D}^\ell +\mathbf{T}]^{-1}[\mathbf{H}({\varvec{\zeta }}^\ell ) + \mathbf{T}{\varvec{\zeta }}^\ell -\mathbf{b}]\) at the right-hand side of (26), regarded as the solution of the linear system \([\mathbf{D}^\ell +\mathbf{T}]{\varvec{\delta }}^\ell = \mathbf{H}({\varvec{\zeta }}^\ell ) + \mathbf{T}{\varvec{\zeta }}^\ell -\mathbf{b}\), can be easily determined by a direct method.
Once the new free-surface location has been determined, Eq. (22) yields readily and uniquely the new velocity field \(u^{n+1}_{i+\frac{1}{2}}\) throughout the flow domain and the simulation can then proceed to the next time step.
4 Numerical methods for the \(2D_{xz}\) model
The governing equations of a \(2D_{xz}\) model are the two-dimensional laterally averaged equations (15) in which, for simplicity, a constant width \(B=1\) is assumed. With this assumption equations (15) can also be written as follows
The simplified free-surface boundary condition is given by prescribing the wind stress as
and the simplified boundary condition at the sediment-water interface is specified by prescribing the bottom stress as
where \(\gamma \), \(\gamma _{_B}\) and \(\gamma _{_T}\) are nonnegative friction coefficients.
Based on the characteristic analysis carried on the one-dimensional model, for stability, the gradient of surface elevation in the momentum equation and the velocity in the free-surface equation will be discretized implicitly. Moreover, in order to allow the use of arbitrarily small vertical resolution without compromising the stability of the resulting method, the vertical viscosity will also be discretized implicitly. An explicit discretization will be used for advection and for the horizontal viscosity.
The spatial mesh consists of rectangular cells of length \(\Delta x^{}\) and height \(\Delta z_k=z_{k+\frac{1}{2}}-z_{k-\frac{1}{2}}\). Each cell is numbered at its center with indices i and k. The discrete u velocity is then defined at half integer i and integer k; w is defined at integer i and half integer k (see Fig. 6). Finally, \(\eta \) is defined at integer i.
As in the one-dimensional model, nonnegativity of the total water depth at discrete level is enforced by specifying
At every time step the local vertical increments \(\Delta z^n_{i+\frac{1}{2},k}\) are preliminarily set to be the wetted distance between \(z_{k+\frac{1}{2}}\) and \(z_{k-\frac{1}{2}}\) at \(x_{i+\frac{1}{2}}\). Thus, \(0\le \Delta z^n_{i+\frac{1}{2},k} \le \Delta z_k\) and \(H_{i+\frac{1}{2}}(\eta ^n_{i+\frac{1}{2}}) =\sum _{k=1}^{N_z}{\Delta z^n_{i+\frac{1}{2},k}}\) . Of course, some of the \(\Delta z^n_{i+\frac{1}{2},k}\) are allowed to be zero and, accordingly, the corresponding new velocity is taken to be \(u^{n+1}_{i+\frac{1}{2},k}=0\).
Along wet vertical sides of the grid one has \(\Delta z^n_{i+\frac{1}{2},k}>0\). Here the momentum equation in (27) applies and is discretized as follows
where \(m_{i+\frac{1}{2}}\) and \(M^n_{i+\frac{1}{2}}\) denote the limit of k-index representing the bottom and the top finite-difference stencil, respectively. As indicated, m and M depend on their spatial location and M may also change with the time level to account for the free-surface dynamics. For notational simplicity, subscript and superscript on \(m_{i+\frac{1}{2}}\) and \(M^n_{i+\frac{1}{2}}\) may be omitted in the following development.
In Eq. (32) F is an explicit, nonlinear finite difference operator which includes the contributions arising from the spatial discretization of the advective and the horizontal viscosity terms. A particular form for F can be chosen in a variety of ways thus, for example, by using a simple explicit upwind formula, or a more accurate and stable Eulerian–Lagrangian approach.
The values of u above free-surface and below bottom in (32) are eliminated by means of the boundary conditions (28)–(29) which are written in difference form as
and
where \(\gamma _{_B}^{n} =\frac{g}{C_z^2} \vert u^*_{i+\frac{1}{2},m} \vert \) and \(u^*_{i+\frac{1}{2},m}=Fu^n_{i+\frac{1}{2},m}-g\frac{\Delta t}{\Delta x}(\eta ^n_{i+1}-\eta ^n_{i})\).
A semi-implicit finite difference discretization for the free-surface equation in (27) in conservative form is taken to be
Assuming that the computational domain is covered by a set of \(N_x\times N_z\) computational cells, equations (32) and (35) constitute a piecewise linear system of at most \(N_x(N_z+1)\) equations. The nonlinearity resides in the definition of the total water depth \(H_i(\eta ^{n+1}_{i})\). This system has to be solved at each time step in order to calculate the new field variables \(u^{n+1}_{i+\frac{1}{2},k}\) and \(\eta ^{n+1}_{i}\) throughout the flow domain.
The system of \(N_x(N_z+1)\) equations formed by (32) and (35) can be conveniently decomposed into a set of \(N_x\) independent linear tridiagonal systems of \(N_z\) equations, and one piecewise linear system of \(N_x\) equations. Specifically, Eqs. (32) and (35) are first written in matrix form as
where, along each water column the vectors \(\mathbf{U}\), \(\varvec{\Delta } {Z}\), \(\mathbf{G}\) and the tridiagonal matrix \(\mathbf{A}\) are defined as follows:
with \(d_k=\displaystyle {\Delta z_{k}\big (1+\gamma _{k}\Delta t\big )}\) and \(a_{k\pm \frac{1}{2}}=\Delta t\displaystyle {\frac{\nu _{k\pm \frac{1}{2}}}{\Delta z_{k\pm \frac{1}{2}}}},\ k=m,m+1,\dots ,M\).
Then, formal substitution of the expressions for \(\mathbf{U}^{n+1}_{i\pm \frac{1}{2}}\) from (36) into (37) yields a discrete wave equation for \( \eta ^{n+1}\) which is given by
where
Since \(\mathbf{A}\) is positive definite, \(\mathbf{A}^{-1}\) is also positive definite and therefore \(({\varvec{\Delta } \mathbf{Z}})^\top \mathbf{A}^{-1}\mathbf{\Delta Z}\) is a non-negative scalar. Hence Eq. (38) constitute a well posed piecewise linear system of \(N_x\) equations for \(\eta ^{n+1}_{i}\) which has the same size and structure as the corresponding system that was derived in Sect. 3 for the one-dimensional model. Thus, its unique solution can be determined by a converging Newton type method as described in Sect. 3.
Once the new free-surface location has been determined, Eq. (36) constitute a set of \(N_x\) linear, tridiagonal systems with \(N_z\) equations each. All these systems are independent from each other, symmetric and positive definite. Thus, they can be conveniently solved by a direct method.
Finally, by discretizing the continuity equation in (27) the new vertical component of the velocity in each water column can be computed recursively from bottom to top as
Thus every time step can be summarized as a simple algorithm which is as follows
-
(a)
set up and solve the piecewise linear system (38) to obtain simultaneously the new water levels \(\eta ^{n+1}\) and the resulting total water depths \(H(\eta ^{n+1})\) throughout the horizontal flow domain;
-
(b)
solve the \(N_x\) linear tridiagonal systems (36) to determine the new horizontal velocities \(u^{n+1}\);
-
(c)
diagnostically obtain the new vertical velocity \(w^{n+1}\) from (39).
5 Numerical methods for the \(2D_{xy}\) model
When \(\nu =0\) the two-dimensional shallow water equations (11) form a quasilinear hyperbolic system of partial differential equations with three unknown functions, namely u, v and \(\eta \), and three independent variables, x, y and t. When \(\nu >0\) this system is no longer hyperbolic but the stability of any explicit numerical scheme will still depend on its hyperbolic part, and hence on the celerity \(\sqrt{g H}\). In order to determine an efficient semi-implicit method whose stability is independent on the celerity, a characteristic analysis of the hyperbolic part of (11) is preliminarily investigated (see [8, 9]). Thus Eq. (11) in non-conservative form are written as
or, in matrix notation,
where
The characteristic equation of system (41) is given by
that is,
The triples (r, s, q) satisfying Eq. (42) are directions normal to the characteristic cone at its vertex (see Fig. 7). Equation (42) decomposes as follows
and
The local characteristic cone with vertex in \(({\bar{x}},\bar{y},{\bar{t}}) \) consists of the line through \(({\bar{x}},{\bar{y}},{\bar{t}}) \) and parallel to the vector (u, v, 1) and the cone whose equation is
in fact, on the cone surface, the gradient of the left-hand side of (45) satisfies (44).
Note that, whereas the first part of the characteristic cone depends only on the fluid velocity u and v, the second part, which is defined by Eq. (44), depends also upon the celerity \(\sqrt{gH}\). Note also that the term gH in Eq. (42) arises from the off diagonal terms g and H in the matrices \(\mathbf{A}\) and \(\mathbf{B}\). These are the coefficient of \(\eta _x\) in the first momentum equation, the coefficient of \( \eta _y\) in the second momentum equation, and the coefficient of \(u_x\) and \(v_y\) in the continuity equation of system (40). Consequently, these derivatives must be discretized implicitly in order to obtain a method whose stability is independent of the celerity [9].
Based on the above analysis, the semi-implicit method derived in Sect. 3 will be extended to the following \(2D_{xy}\) model:
A staggered mesh of \(N_x\times N_y\) rectangular cells of length \(\Delta x\) and width \(\Delta y\) is introduced. Each cell is numbered at its center with indices i and j. The discrete u velocity is then defined at half integer i and integer j; v is defined at integer i and half integer j; \(\eta \) is defined at integer i and integer j (see Fig. 8). Additionally, assuming that the bottom profile h(x, y) is prescribed everywhere, the discrete total water depths at the grid locations are enforced to be nonnegative and are taken to be
where \(\eta ^n_{i+\frac{1}{2},j}\) and \(\eta ^n_{i,j+\frac{1}{2}}\) are determined from the nearest grid values by taking, e.g., the average, the upwind or the maximum. Then, a stable semi-implicit scheme for equations (46), is derived by using an implicit discretization for the gradient of surface elevation in the momentum equations and for the velocity in the continuity equation. Moreover, for stability, the friction terms in the momentum equations are discretized implicitly, but the friction coefficients \(\gamma \) and \(\gamma _{_T}\) will be evaluated explicitly. The remaining terms are discretized explicitly [8, 9]. The basic semi-implicit algorithm is
where \(H^n_{i+\frac{1}{2},j}\! \! = H_{i+\frac{1}{2},j}(\eta ^n_{i+\frac{1}{2},j})\), \(H^n_{i,j+\frac{1}{2}}\! \! =H_{i,j+\frac{1}{2}}(\eta ^n_{i,j+\frac{1}{2}})\) and \(\gamma ^{n}\! =\frac{g}{C_z^2}\sqrt{(u^*)^2+(v^*)^2}\).
Of course, Eq. (50) is defined only on wet grid points, i.e., where \(H^{n}_{i+\frac{1}{2},j}> 0\). On dry grid points \(u^{n+1}_{i+\frac{1}{2},j} =0\) is assumed. Likewise, Eq. (51) is defined where \(H^{n}_{i,j+\frac{1}{2}}> 0\). On dry grid points \(v^{n+1}_{i,j+\frac{1}{2}} =0\) is assumed.
In Eqs. (50)–(51) F is an explicit, finite difference operator corresponding to the explicit spatial discretization of the advective and the viscous terms. A particular form for F can be chosen in a variety of ways thus, for example, by using an explicit upwind formula, or a more accurate and stable Eulerian–Lagrangian approach.
For any structure given to F Eqs. (50)–(52) constitute a piecewise linear system of \(3 N_x N_y\) equations and \(3 N_x N_y\) unknowns \(u^{n+1}_{i+\frac{1}{2},j}\), \(v^{n+1}_{i,j+\frac{1}{2}}\) and \(\eta ^{n+1}_{i,j}\). The nonlinearity resides in the definition of \(H_{i,j}(\eta ^{n+1}_{i,j})\) as specified by Eq. (47). This system has to be solved at each time step to determine, recursively, values of the field variables from given initial and boundary conditions.
From a computational point of view, since most of the computational effort is devoted to solve system (50)–(52), this system will be reduced to a smaller one in which \(\eta ^{n+1}_{i,j}\) are the only unknowns. Specifically, where \(H^{n}_{i\pm \frac{1}{2},j}> 0\) and \(H^{n}_{i,j\pm \frac{1}{2}}> 0\) \(u^{n+1}_{i\pm \frac{1}{2},j}\) and \(v^{n+1}_{i,j\pm \frac{1}{2}}\) are eliminated from the continuity equation (52) to yield
where, by setting
the right hand side \(b^{n}_{i,j}\) can be written as
Equations (53) constitute a well posed piecewise linear system of \(N_x N_y\) equations with unknowns \(\eta ^{n+1}_{i,j}\). This system can be written in a more compact matrix form as
where \({{\varvec{\zeta }}}\) is a vector containing the unknowns \(\eta ^{n+1}_{i,j}\); the piecewise linear vector function \(\mathbf{H}({{\varvec{\zeta }}})\) represents the corresponding total water depths \(H_{i,j}(\zeta _{i,j})\); \(\mathbf{T}\) is the five-diagonal, symmetric and at least positive semi-definite matrix that arises from the linear terms in Eq. (53); and b is a known vector with the right-hand sides \(b^{n}_{i,j}\) of Eq. (53).
A converging Newton type method for solving system (54) is formulated as follows (see [12] for details): Guess \(\zeta ^0_{i,j}>-h_{i,j}\) for all i and for all j. Then, until convergence, compute
where the superscript \(\ell \) denotes the iteration step (not to be confused with the time level n) and \(\mathbf{D}^\ell \) is a diagonal matrix whose diagonal entries are
Note that the vector \({\varvec{\delta }}^\ell =[\mathbf{D}^\ell +\mathbf{T}]^{-1}[\mathbf{H}(\varvec{\zeta }^\ell ) + \mathbf{T} \varvec{\zeta }^\ell -\mathbf{b}]\) at the right-hand side of (55) can be regarded as the solution of the linear system \([\mathbf{D}^\ell +\mathbf{T}]{\varvec{\delta }}^\ell =\mathbf{H}(\varvec{\zeta }^\ell ) + \mathbf{T}\varvec{\zeta }^\ell -\mathbf{b}\) which can be efficiently solved by a preconditioned conjugate gradient method.
Once the new free-surface location has been determined, Eqs. (50) and (51) yield readily and uniquely the new velocity field \(u^{n+1}_{i+\frac{1}{2},j}\) and \(v^{n+1}_{i,j+\frac{1}{2}}\) throughout the flow domain.
6 Numerical methods for the 3D model
The semi-implicit finite difference methods described in Sections 4 and 5 can be further generalized to yield a practical algorithm for solving the fully three-dimensional equations (10) [4,5,6,7]. These equations can be written as
The spatial mesh consists of boxes with length \(\Delta x^{}\), width \(\Delta y\) and height \(\Delta z_k\). Each box is numbered at its center with indices i, j and k. The discrete u velocity is then defined at half integer i and integers j and k; v is defined at integers i, k and half integer j; w is defined at integers i, j and half integer k. Finally, \(\eta \) is defined at integers i, j.
Then, on wet vertical faces perpendicular to the x-axis the discrete u momentum equation in matrix form can be written as
Similarly, on wet vertical faces perpendicular to the y-axis the discrete v momentum equation is given by
Finally, for all i and for all j the discrete free-surface equation is taken to be
A two-dimensional discrete wave equation for \(\eta ^{n+1}\) is derived after formal substitution of the expressions for \(\mathbf{U}^{n+1}_{i\pm \frac{1}{2},j}\) and \(\mathbf{V}^{n+1}_{i,j\pm \frac{1}{2}}\) from (57) and (58) into (59) which yields
where
Since \(\mathbf{A}\) is positive definite, \(\mathbf{A}^{-1}\) is also positive definite and therefore \(({\varvec{\Delta }{} \mathbf{Z}})^\top \mathbf{A}^{-1}{\varvec{\Delta }{} \mathbf{Z}}\) is a non-negative scalar. Hence equations (60) constitute a well posed piecewise linear system of \(N_x N_y\) equations for \(\eta ^{n+1}_{i,j}\) which has the same size and structure as the corresponding system that was derived in Sect. 5 for the \(2D_{xy}\) model. Thus, its unique solution can be determined by a converging Newton type method as described in Sect. 5.
Once the new free-surface location has been computed, equations (57) and (58) constitute a set of simple \(2N_x N_y\) linear, tridiagonal systems with \(N_z\) equations each. All these systems are independent from each other, symmetric and positive definite. Thus, they can be conveniently solved by a direct method.
Finally, by discretizing the continuity equation in (56), the new vertical component of the velocity in each water column can be computed recursively from bottom to top as
Thus every time step can be summarized as a simple algorithm which is as follows
-
(a)
set up and solve the piecewise linear system (60) to obtain simultaneously the new water levels \(\eta ^{n+1}\) and the resulting total water depths \(H(\eta ^{n+1})\) throughout the horizontal flow domain;
-
(b)
solve the linear tridiagonal systems (57) and (58) to determine the new horizontal velocities \(u^{n+1}\) and \(v^{n+1}\);
-
(c)
diagnostically obtain the new vertical velocity \(w^{n+1}\) from (61).
Interestingly enough, if the vertical spacing \(\Delta z\) is taken to be so large that both the bottom and the free-surface always fall within one vertical layer, this three-dimensional algorithm reduces to the \(2D_{xy}\) model described in Sect. 5. In this particular case, in fact, the k index is always 1 and therefore it can be omitted from the notation. Moreover, \({\varvec{\Delta } \mathbf{Z}}\) reduces everywhere to H and the discrete momentum equations (57)–(58) simplify to (50)–(51). Additionally, the discrete free-surface equation (59) simplifies to (52).
The above three-dimensional method also reduces to the two-dimensional \(2D_{xz}\) model derived in Sect. 4 when it is applied to simulate the flow into a deep and narrow estuary. In this case, if \(\Delta y\) denotes the estuary width, the j index is always 1 and therefore can be omitted from the notation. Moreover, by assuming zero water depth \(H^n_{i,j\pm \frac{1}{2}}=0\) everywhere along the left and the right walls, respectively, one has \(\mathbf{V}^{n+1}_{i,j\pm \frac{1}{2}}={\varvec{\Delta } \mathbf{Z}}^n_{i,j\pm \frac{1}{2}}=0\), and Eqs. (57) and (59) reduce to (36) and (37) already derived in Section 4 for the \(2D_{xz}\) model.
In turn, the one-dimensional model derived in Sect. 3 can be regarded either as a particular case of the \(2D_{xz}\) model where \(N_z=1\) is assumed, or as a particular case of the \(2D_{xy}\) model where \(N_y=1\) is assumed (see Fig. 9).
The fact that one- and two-dimensional methods can be derived from the present 3D model as particular cases is an interesting feature of the present formulation. This property leads to a single, and yet very efficient multidimensional computer model, that applies to arbitrarily complex flow regions.
7 Conclusions
The methods described above represent a solid backbone of a more general algorithm that may apply to unstructured grids possibly including non-hydrostatic pressure [1,2,3] and sub-grid details [13,14,15]. Moreover, an extension of this algorithm that includes saturated as well as variable saturated flows in a groundwater environment was recently documented in [12, 16,17,18]. A large numbers of applications worldwide have demonstrated the capability of the proposed methods to simulate environmental free-surface flows (see, e.g., [19,20,21,22,23,24,25]).
References
Casulli, V.: A semi-implicit finite difference method for non-hydrostatic, free-surface flows. Int. J. Numer. Meth. Fluids 30, 425–440 (1999)
Casulli, V., Zanolli, P.: Semi-implicit numerical modeling of non-hydrostatic free-surface flows for environmental problems. Math. Comput. Model 36, 1131–1149 (2002)
Casulli, V.: A semi-implicit numerical method for the free surface Navier-Stokes equations. Int. J. Numer. Meth. Fluids 74, 605–622 (2014)
Casulli, V., Cheng, R.T.: Semi-implicit finite difference methods for three-dimensional shallow-water flow. Int. J. Numer. Meth. Fluids 15, 629–648 (1992)
Casulli, V., Cattani, E.: Stability, accuracy and efficiency of a semi-implicit method for three-dimensional shallow-water flow. Comput. Math. Appl. 27, 99–112 (1994)
Casulli, V., Walters, R.A.: An unstructured grid, three-dimensional model based on the shallow water equations. Int. J. Numer. Meth. Fluids. 32, 331–348 (2000)
Casulli, V., Zanolli, P.: High resolution methods for multidimensional advection-diffusion problems in free-surface hydrodynamics. Ocean Model 10, 137–151 (2005)
Casulli, V., Notarnicola, F.: An Eulerian-Lagrangian method for tidal current computation, Proc. Int. Conf. Computer Modelling in Ocean Engineering, Venice, Balkema Pub., Rotterdam (1988) 237-244
Casulli, V.: Semi-implicit finite difference methods for the two-Dimensional shallow-water equation. J. Comput. Phys. 86, 56–74 (1990)
Dumbser, M., Casulli, V.: A staggered semi-implicit spectral discontinuous Galerkin scheme for the shallow water equations. Appl. Math. Comput. 219, 8057–8077 (2013)
Walters, R.A., Casulli, V.: A robust finite element model for hydrostatic surface water flows. Commun. Numer. Methods Eng. 14, 931–940 (1998)
Brugnano, L., Casulli, V.: Iterative solution of piecewise linear systems. SIAM J. Sci. Comput. 30, 463–472 (2008)
Casulli, V.: A high-resolution wetting and drying algorithm for free-surface hydrodynamics. Int. J. Numer. Meth. Fluids 60, 391–408 (2009)
Casulli, V., Stelling, G.S.: Semi-implicit subgrid modelling of three-dimensional free-surface flows. Int. J. Numer. Meth. Fluids 67, 441–449 (2011)
Casulli, V.: Computational grid, sub-grid and pixels. Int. J. Numer. Meth. Fluids 90, 140–155 (2019)
Casulli, V.: A conservative semi-implicit method for coupled surface-subsurface flows in regional scale. Int. J. Numer. Meth. Fluids 79, 199–214 (2015)
Casulli, V.: A coupled surface-subsurface model for hydrostatic flows under saturated and variably saturated conditions. Int. J. Numer. Meth. Fluids 85, 449–464 (2017)
Casulli, V., Zanolli, P.: A nested Newton-type algorithm for finite volume methods solving Richards’ equation in mixed form. SIAM J. Sci. Comput. 32, 2255–2273 (2010)
Signell, R.P., Butman, B.: Modeling tidal exchange and dispersion in Boston harbor. J. Geophys. Res. 97, 15591–15606 (1992)
Cheng, R.T., Casulli, V., Gartner, J.W.: Tidal, Residual, Inter-tidal Mud-flat (TRIM) model with applications to San Francisco Bay. Estuar. Coast. Shelf. Sci. 36, 235–280 (1993)
Shen, J., Wang, H., Sisson, M., Gong, W.: Storm tide simulation in the Chesapeake Bay using an unstructured grid model. Estuar. Coast. Shelf. Sci. 68, 1–16 (2006)
Gross, E.S., MacWilliams, M.L., Kimmerer, W.J.: Three-dimensional modeling of tidal hydrodynamics in the San Francisco Estuary. San Francisco Estuary and Watershed Sci. 7, 1–37 (2009)
Wang, H.V., Loftis, J.D., Liu, Z., Forrest, D., Zhang, J.: The storm surge and sub-grid inundation modeling in New York City during hurricane Sandy. J. Mar. Sci. Eng. 2, 226–246 (2014)
Rasquin, C., Seiffert, R., Wachler, B., Winkel, N.: The significance of coastal bathymetry representation for modelling the tidal response to mean sea level rise in the German Bight. Ocean Science 16, 31–44 (2020)
Hagen,R., Plüß, A., Jänicke, L., Freund, J., Jensen, J., Kösters, F.: A combined modeling and measurement approach to assess the nodal tide modulation in the North Sea, J Geophys Res Oceans, 126 (2021)
Funding
Open access funding provided by Università degli Studi di Trento within the CRUI-CARE Agreement. Open access funding provided by Universitá degli Studi di Trento within the CRUI-CARE Agreement.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.
About this article
Cite this article
Casulli, V., Zanolli, P. A review on advanced numerical methods for free-surface hydrodynamics. Ann Univ Ferrara 68, 621–643 (2022). https://doi.org/10.1007/s11565-022-00406-9
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11565-022-00406-9