Escolar Documentos
Profissional Documentos
Cultura Documentos
b W
urzburg
University, W
urzburg, Germany
Abstract
We propose a new well-balanced central finite volume scheme for the Ripa system
both in one and two space dimensions. The Ripa system is a nonhomogeneous hyperbolic system with a non zero source term that is obtained from the shallow water
equations system by incorporating horizontal temperature gradients. The proposed
numerical scheme is a second-order accurate finite volume method that evolves a
non-oscillatory numerical solution on a single grid, avoids the process of solving
Riemann problems arising at the cell interfaces, and follows a well-balanced discretization that ensures the steady state requirement by discretizing the geometrical
source term according to the discretization of the flux terms. Furthermore the proposed scheme mimics the surface gradient method and discretizes the water height
according to the discretization of the water level. The proposed scheme is then applied and classical one and two-dimensional Ripa problems with flat or variable
bottom topographies are successfully solved. The obtained numerical results are in
good agreement with corresponding ones appearing in the recent literature, thus
confirming the potential and efficiency of the proposed method.
Key words: Well-balanced central schemes; Ripa system; surface gradient method;
non-oscillatory and gradients limiting.
Introduction
3 May 2015
u=
hu
,
hv
hu
hu2 + g h2
,
2
F (u) =
huv
G(u) =
uh
hv
huv
2
g
hv + h2
vh
and S(u, x) =
ghZx
ghZ
y
(2)
where h denotes the water height, (u, v) is the velocity field, is the temperature of the liquid, g is the gravitational constant, and Z = Z(x, y) denotes
2
F
=
u
gh
2
2 u
uv
1 0 0
0
gh
uv
2u 0
G
2
gh
and
=
u
v2
v u 0
2
v
0 u
0 1 0
v u 0
gh
0 2v
0 v
(3)
= v = 0,
= constant,
h + Z = constant,
(4)
and
= v = 0,
Z = constant,
2
h = constant.
(5)
in (2)) as follows.
hu
hv
h2
hu
hv
0
g
hu2 + h2
huv
ghZx
2
+
=
+ 2
g
2
ghZy
huv
hv + 2 h
2
2
h ux h vy
uh
vh
x
(6)
As a consequence, any consistent finite volume scheme can easily satisfy the
steady state (5); more precisely if the initial data are such that u = v = 0,
Z = constant and h2 = constant, then the numerical solution will satisfy the
requirements in (5) at any later time.
In this work we mainly focus on the steady state (4) and we develop a wellbalanced scheme that satisfies the constraints in (4) at the discrete level both
in one space dimension (Theorems (1) and (2)) and two dimensions (Theorems
(3) and (4)). As for the steady state (5), we are still exploring/investigating
appropriate numerical schemes that ensure the constraints in (5) at the discrete level. Ideally one would like to construct a numerical method that fulfills
both equilibrium states (4) and (5) simultaneously. This indeed invites future
research on this topic.
The rest of the paper is structured as follows: in section 2, the central finite
volume scheme is developed coupling it with the surface gradient method.
In section 3, one- and two-dimensional experiments are presented, showing
excellent results. In the appendix proofs of our theorems are given.
In this section, we develop a new well-balanced central finite volume scheme for
the Ripa system (1)-(2) in one and two space dimensions. We follow a classical
central finite volume construction for hyperbolic systems of conservation laws
with a source term. In order to satisfy the steady state requirement (4), we
extend the surface gradient method to the case of the Ripa system and show
that the steady state conditions in (4) are exactly maintained at the discrete
level.
4
2.1
with u(x, t) = (h, hu, h) , f (u) = hu, hu2 + 21 gh2 , h , and S(u, x) =
(0, ghdz/dx, 0). Here h(x, t) denotes the water height, u(x, t) is the velocity in the xdirection, g is the gravitational constant, and z(x) denotes the
bottom topography function.
The computational domain is first partitioned using the control cells Ci =
[xi1/2 , xi+1/2 ] centered at the nodes xi . Without any loss of generality we assume that the numerical solution uni is known at time tn and is defined at
cell-centers xi . A piecewise linear reconstruction of the solution values is then
performed and the exact solution u(x, t) to system (7) is approximated at time
tn on the cells Ci by
u(x, tn ) Li (x, tn ) = uni + (x xi )in x Ci ,
(8)
uni+ 1
2
"
#
Z tn+1
1 Z tn+1
f (u(xi+1 , t)) dt
f (u(xi , t)) dt
x tn
tn
1 Z tn+1 Z xi+1
+
S(u, x)dxdt. (9)
x tn
xi
Here uni+1/2 is the projected solution at time tn on the dual cells Di+1/2 and is
obtained with the aid of a Taylor series expansion as follows
uni+ 1 =
2
1 n
x n
n
ui + uni+1 +
i i+1
2
8
(10)
The flux integrals in equation (9) are approximated with second-order of accuracy using the midpoint quadrature rule leading to
un+1
i+ 12
uni+1/2
t
n+ 1
n+ 1
f (ui+12 ) f (ui 2 )
x
1 Z tn+1 Z xi+1
+
S (u(x, t), x)) dx dt, (11)
x tn
xi
where the required predicted values at the intermediate time tn+1/2 are obtained using a first-order Taylor expansion in time and the balance law (7) as
follows
t 0
n+ 1
(12)
ui 2 = uni +
fi + x Sin .
2x
The term Sin discretizes the source term in system (7) and should be carefully
discretized in order to ensure well-balancing as we will be see later in this
section.
Next we discretize the integral of the source term using centered differences
and the midpoint quadrature rule, we obtain:
Z tn+1 Z xi+1
tn
xi
n+ 12
n+ 1
, ui+12 )
= t
n+ 1 n+ 1 n+ 1 n+ 1
hi 2 +hi+12 i 2 +i+12
zi
x g
.
zi+1
2
2
x
(13)
x
1
0
n+1
n+1 0
) .
un+1
+
(un+1
=
1
1 + u
1 ) (u
i+
i+ 12
i
i
2
2
2
2
8
(14)
0
h
t
0 + x h2
ghZx ,
(15)
(16)
with
n
Si,L
i
n zi zi1
ghn
(2 i )
= i2
i i x
n
Si,R
1
+
i
n zi+1 zi
= i2
ghn
(2 i )
i i x
n
Si,C
(i + 1)(i 1)
zi1
= i
ghn
in zi+12x
i
(17)
1
i =
if
if
if
if
hi
0
hi
0
hi
0
hi
hn hn
= i xi1 ,
hn hn
= i+1x i ,
= 0,
hn hn
= i+12xi1 .
ui
Remark
Theorem 1 states that the updated numerical solution nn+1
i+1/2 obtained at time
n+1
t
shares the same properties of the forward projected solution uni+1/2 obtained at time tn on the cells Di+1/2 , but its projection un+1
doesnt necessarily
i
satisfy the steady state requirement on the cells Ci unless a special care of the
7
forward projection step and the backward projection step is taken into account.
In general, the central scheme fails to satisfy the steady state requirement
when it is used to solve steady state Ripa systems problems. This is due to
the fact that the riverbed function and the water level function are both linear
on the original cells Ci , but not on the staggered cells Di+1/2 . An additional
treatment of the scheme is needed to remedy this situation. In this work we
extend the surface gradient method, previously adapted to the shallow water equations, to the case of the Ripa systems and calculate the numerical
derivative of the water height h(x, t) component in terms of the water level
function H(x, t) = h(x, t) + Z(x). We also note that the h component of the
solution should also be projected forward and backward using the water level
component by following the surface gradient method as is described below.
We first assume that the bottom topography function is defined at the cell
interfaces (i.e., zi+ 1 is given at xi+ 1 ). The cell centered bottom elevation func2
2
tion values are then obtained using the equation zi = 12 (zi+ 1 + zi 1 ), and the
2
2
linear interpolants z(x) of the bottom topography function on the cells Ci are
given by:
1
(z 1 zi 1 )(x xi ), x Ci .
z(x) = zi +
2
x i+ 2
The linearization of the water height h(x) inside each cell will be made indirectly by first linearizing the water level H(x) = h(x) + z(x), and then by
using the relation h(x) = H(x) z(x).
The linearization H(x) = Hi +Hi0 (xxi ) on the cells Ci is obtained by using a
limiting procedure of the numerical derivatives of Hi = hi +zi ; the linearization
of the water height h(x) is finally obtained by calculating h0i as follows:
(hni )0 = (Hin )0
1
(zi+1/2 zi1/2 ).
x
(18)
(hni in )0 = (Hin )0
1
(zi+1/2 zi1/2 ) in + hni (in )0 .
x
(19)
Likewise, for the back projection step of the computed numerical solution
un+1
i+1/2 back onto the original cells Ci , we proceed again using the surface
gradient method. We define the water level Hi+1/2 on the staggered nodes as
follows:
n+1 = hn+1 + zi+1/2
H
(20)
i+1/2
i+1/2
1
zi+1/2 (zi + zi+1 )/2 is the corrected bottom value
2
due to the fact that the bottom function z(x) is not linear inside the staggered
cell Di+1/2 .
n+1 0
Next, we obtain the limited discrete derivatives (Hi+1/2
) from the staggered
n+1
n+1 0
(21)
n+1 0
n+1 0
(hn+1
i+1/2 i+1/2 ) = (Hi+1/2 )
1
n+1
0
(zi+1 zi ) i+1/2
+ hn+1
i+1/2 (i+1/2 ) .
x
(22)
Theorem 2 In the context of the one-dimensional Ripa system (7) and the
central scheme (11) along with the prediction step (12), the projection steps
(10), (18), (19), and the back projection steps (14), (21), (22), and if at a given
time tn the numerical solution uni satisfies the lake at rest with a constant
temperature steady state (4), (i.e. hni + zi = constant, uni = 0, and in =
constant for all i), then the numerical solution generated using the developed
central scheme exactly satisfies the steady state 4 at the discrete level and
un+1
= uni holds for all i and all n = 0, 1, .
i
2.2
In this section we extend the one-dimensional well-balanced unstaggered central scheme to the case of the two-dimensional Ripa system with a variable
9
(23)
where u, f (u), g(u), and S(u, x) are defined in system (2). We assume that
the computational domain R2 is uniformly discretized using the Cartesian
cells Ci,j = [xi1/2 , xi+1/2 ] [yj1/2 , yj+1/2 ] centered at the nodes (xi , yj ), and
we define the dual cells Di+1/2,j+1/2 to be the rectangles [xi , xi+1 ] [yj , yj+1 ].
We assume further that the initial conditon is defined at the centers of the
cells Cij . Without any loss of generality we assume that the numerical solution
to the two-dimensional Ripa system is known at time tn and is also defined at
the center of the cells Cij . We start by constructing the linear interpolants
Li,j (x, y, tn ) = uni,j + (x xi )in + (y yj )jn u(x, y, tn ), (x, y) Ci,j , (24)
that approximate the solution to system (23) on the cells Cij , where (in , jn )
denotes a limited numerical gradient of the numerical solution uni,j . We then
n
integrate equation (23) on the rectangular box Ri+1/2,j+1/2
= Di+1/2,j+1/2
n n+1
[t , t ] and we apply Greens theorem to the integral to the left-hand side
to obtain
Z
n
Ri+1/2,j+1/2
(t u + x f (u) + y g(u)) dV =
Z
n
Ri+1/2,j+1/2
Just like the one-dimensional case, the staggering process will avoid solving
Riemann problems, but the obtained solution at time tn+1 will be defined
on the dual cells Di+1/2,j+1/2 . A back-projection step will be necessary to
retrieve the solution values at centers of original cells Ci,j . Gradients limiting avoids spurious oscillations and Eulers midpoint quadrature rule ensures
second-order of accuracy provided the integral of the source term is properly
approximated. Furthermore, in order to ensure well-balancing and the steadystate requirement at the discrete level, the source term should be discretized
according to the discretization of the flux terms. Taking into account that the
numerical solution is piecewise linear over the dual cells Di+1/2,j+1/2 and is
defined at their centers (xi+1/2 , yj+1/2 ), equation (25) reduces to
n
un+1
i+1/2,j+1/2 = ui+1/2,j+1/2
i
t h n+1/2
n+1/2
n+1/2
n+1/2
(fi+1,j fi,j ) + (fi+1,j+1 fi,j+1 )
2x
i
t h n+1/2
n+1/2
n+1/2
n+1/2
10
uni+1/2,j+1/2 =
1 n
ui,j + uni+1,j + uni,j+1 + uni+1,j+1
4
1
+
(i,j + i,j+1 i+1,j i+1,j+1 )
16
1
+
(i,j i,j+1 + i+1,j i+1,j+1 ) . (27)
16
un+1
i,j =
1 n+1
n+1
n+1
ui 1 ,j 1 + un+1
+
u
+
u
i+ 21 ,j 12
i 21 ,j+ 12
i+ 12 ,j+ 12
2
2
4
1
+
i 1 ,j 1 + i 1 ,j+ 1 i+ 1 ,j 1 i+ 1 ,j+ 1
2
2
2
2
2
2
2
2
16
1
+
i 1 ,j 1 + i 1 ,j+ 1 i+ 1 ,j 1 i+ 1 ,j+ 1 (28)
2
2
2
2
2
2
2
2
16
where (, )i+1/2,j+1/2 denotes a limited numerical gradient of the numerical solution obtained at time tn+1 at the point (xi+1/2 , yj+1/2 ). For a further detailed
description of the unstaggered central scheme for homogeneous hyperbolic systems one is referred to [19].
n+1/2
n+1/2
n+1/2
n+1/2
The term t S(ui,j , ui+1,j , ui,j+1 , ui+1,j+1 ) in equation (26) is used to apn
proximate the spatial integral of the source term over the domain Ri+1/2,j+1/2
with a second-order of accuracy. In the case of the Ripa system, the spatial
integral of the source term is discretized using centered differences and the
midpoint quadrature rule as follows:
11
n+ 1
n+ 1
n+ 1
n+ 1
2
2
2
S ui,j 2 , ui+1,j
, ui,j+1
, ui+1,j+1
=
0
xy
2
n+ 12
(h)i+1,j
n+ 12
(h)
i,j+1
g
xy
2
+
zi+1,j zi,j
2
x
1
n+ 2
2
y
n+ 1
(h)i,j 2
1
n+
n+ 12
2
(h)i+1,j+1
+ (h)i,j+1
zi+1,j+1 zi,j+1
g
2
x
n+ 12
n+ 12
2
y
(29)
n+1/2
fx
gy
t
n
i,j i,j + Si,j
,
+
2
x y
!
uni,j
(30)
fx
i,j
where x
is a limited numerical partial derivative of the flux function f (u)
with respect to the x variable, and is obtained using the Jacobian matrix
f /u. The term Sijn in the predictor step (30) discretizes the source term (in
equation (23) at time tn on the cells Ci,j as follows
n
Si,j
=
z
g(h)n
i,j
ij
x
g(h)n z
i,j
y ij
S1 = 0
S2
S3
S4 = 0
(31)
The terms S2 and S3 in equation (31) are used to discretize the gradient of
the bottom topography function according to the discretization of the water
12
height gradient, and are obtained with the aid of sensor functions as follows:
S2 =
zi,j
g(h)ni,j
zi1,j
,
x
if 2 = 1,
if 2 = 0 ,
z
z
i+1,j
i,j
, if 2 = 1,
g(h)ni,j
z
zi1,j
g(h)n i+1,j
, if 2 = 2.
i,j
2x
and S3 =
zi,j
n
g(h)
i,j
zi,j1
,
y
if 3 = 1,
if 3 = 0,
z
z
i,j+1
i,j
g(h)ni,j
, if 3 = 1,
zi,j+1 zi,j1
g(h)n
, if 3 = 2.
i,j
2y
(32)
The parameters 2 and 3 in equation (32) are two sensor parameters that
z
z
and
according to the discretizations of
direct the discretization of
x ij
y ij
x h|ij and y h|ij , respectively. They are defined as follows:
2 =
1,
0,
1,
2,
if x h 0,
if
if
ij
and 3 =
ij
y h
ij
y h
ij
y h
1,
0,
1,
2,
if
if
if
ij
0,
hni,j+1 hni,j /y,
(33)
the proof of theorem (1); highlights are presented in the appendix section.
Remark
Theorem 3 states that if the numerical solution at time tn corresponds to the
case of an equilibrium state, then the updated solution at time tn+1 is such
n+1
n
n
that un+1
i+1/2,j+1/2 = ui+1/2,j+1/2 , but the equality ui,j = ui,j doesnt necessarily
holds. The forward and backward projection steps (27) and (28) need to be
adjusted according to the surface gradient method in order to ensure the
steady state requirement. In the steady state case (5) the two-dimensional
Ripa system becomes
0
0 0
h2
0
ghZx
2
t +
+
=
g
x
y
0
h2
ghZ
0
y
0
h
0
0
h
(34)
and one can see that the first and fourth components (h and h) of the projected solutions need to be carefully computed. As in the one-dimensional case,
we assume that the bottom function is defined at the corners (xi+ 1 , yj+ 1 ) of
2
2
the original cells Ci,j and the we set the bottom topography function value at
the cell centers to be
zi,j =
(35)
In the forward projection step (27) we linearize the water height h in the first
and fourth components of the numerical solution uni,j in terms of the water
n
level Hi,j
= hni,j + zi,j by first constructing the linear interpolants for the water
levels on each control cell Cij as follows
n
H(x, y, tn ) = Hi,j
+ (x xi )(Hx )ni,j + (y yj )(Hy )ni,j , (x, y) Ci,j ,
(36)
where (Hx )ni,j , (Hy )ni,j denotes a limited numerical gradient of the water level
n
function Hi,j
. The numerical gradient of the water height function h(x, y, tn )
can now be calculated using the equations
(hx )ni,j = (Hx )ni,j (zx )i,j and (hy )ni,j = (Hy )ni,j (zy )i,j .
(37)
/x
=
2
2
(zx )i,j
14
(38)
/y (39)
2
2
Equations (38) and (39) are used in the forward projection step (27) of the
first and fourth components of uni,j only.
As for the back projection step (28), we follow a similar procedure and linearize the water height in terms of the water level function. As in the onedimensional case, we first correct the water bed function at the center of the
cells Di+1/2,j+1/2 as follows
(zy )i,j =
z 1 1
. (40)
2 i+ 2 ,j+ 2
4
fn+1
Next, we calculate the water level H
using corrected waterbed function
i+ 12 ,j+ 12
values as follows:
fn+1
= hn+1
+ zi+ 1 ,j+ 1 .
(41)
H
i+ 1 ,j+ 1
i+ 1 ,j+ 1
2
n+1
(hx )n+1
i+ 12 ,j+ 12
f )n+1
= (H
x i+ 1 ,j+ 1
2
2
(42)
zi+ 1 ,j+ 1 +zi+ 1 ,j+ 3
2
f )n+1
(hy )n+1
= (H
y i+ 1 ,j+ 1
i+ 1 ,j+ 1
2
f )n+1
f n+1
where the discrete derivatives (H
x i+ 1 ,j+ 1 and (Hy )i+ 1 ,j+ 1 are obtained from
2
fn+1
the staggered values H
using a gradients limiting procedure.
i+ 1 ,j+ 1
2
Numerical experiments
3.1
3.1.1
Our first numerical experiment is a classical Riemann problem with two constant states across the point x0 = 0 center of the computational domain
= [1, 1]. The initial conditions are as follows
(h, u, ) =
(5, 0, 3)
if x < 0,
(1, 0, 5) if x > 0.
The computational domain is discretized using 200 gridpoints and the numerical solution is calculated at the final time t = 0.2. Figure 1 shows the
water height, the temperature, and the pressure obtained at the final time
using the well-balanced scheme (dotted curve). The reference solution (solid
curve) is obtained using 2000 gridpoints. The obtained results are in perfect
match and in a good agreement with those appearing in [6] and [9]. Figure 2
5
4
hu
4
3
2
2
0.5
0.5
0
1
40
30
20
1
1
3
2
1
0.5
0.5
0.5
0.5
10
0.5
0.5
0
1
shows the profile of h obtained using the unstaggered central scheme with
16
14
13
12
11
10
9
8
7
6
5
1
0.8
0.6
0.4
0.2
0.2
0.4
0.6
0.8
Figure. 2. 1D dam break problem: Water height at time t = 2 obtained using the
UCS scheme (dashed line) and the WB-UCS scheme (dotted line); the solid line is
the reference line obtained on 2000 gridpoints.
3.1.2
0,
otherwise.
The initial water level is h + z = 6, the initial velocity and temperature
are v = 0 and = 4, respectively. We first validate the well-balanced numerical scheme and compute the steady state solution until t = 1. Figure 3
(top left) shows the waterbed and the water level at rest at the final time.
Figure 3 (top right) shows that the steady state remains satisfied at the
discrete level at the final time. Next we perturb the lake at rest and take
h(x, 0) = h(x, 0) + [1.5,1.4] (x), with [1.5,1.4] (x) = 1 if x [1.5, 1.4]
and [1.5,1.4] (x) = 0 elsewhere in the computational domain. As time evolves,
the initial perturbation splits into two pulses moving in opposite directions,
17
15
x 10
8
10
5
hu
H=h+z
6
4
0
2
0
2
5
2
80
20
60
25
15
10
2
40
20
2
0.6
0.4
hu
H=h+z
and leave the computational domain from its endpoints. Figure 4 (top left)
shows the water height at time t = 0.4.
0.2
2
0
2
0.2
2
80
20
60
25
15
10
2
40
20
2
3.1.3
Here we extend the shallow water equations problem on a discontinuous waterbed presented in [7] to the case of the Ripa system. The waterbed features
18
8,
0,
(h, u, ) =
if x 300,
otherwise.
20
60
15
40
hu
H=h+z
The numerical solution is computed at the final time t = 12 using the wellbalanced scheme and the obtained numerical results are reported in figure 5
where we plot H = h + z, hu, and h obtained on 200 gridpoints (dotted
curve) and 2000 gridpoints (reference solid curve).
10
5
20
0
200
400
600
12
200
10
150
h
20
8
6
200
400
600
200
400
600
100
50
0
0
200
400
600
Figure. 5. 1D dam break problem over a rectangular bump: Water height obtained
at time t = 12 using the well-balanced scheme on 200 grid points (dotted curve) and
2000 grid points (solid curve).
Figure 6 shows the profile of the pressure P = h2 /2 at the final time obtained
on 200, 400, and 2000 gridpoints. When the surface gradient method is not
applied in the forward and backward projection steps, the numerical scheme
generates spurious oscillations and non-physical waves due to the non wellbalanced effects. Figure 7 shows the water level function obtained with and
without the surface gradient method (solid and dashed curves, respectively);
non-physical waves start in the neighborhood of waterbed jumps and propagate in the computational domain. The non-physical waves are invisible when
the numerical solution is computed using the well-balanced scheme.
19
2000
200 points
400 points
2000 points
1800
1600
Pressure
1400
1200
1000
800
600
400
200
100
200
300
400
500
600
Figure. 6. 1D dam break problem over a rectangular bump: Profile of the pressure
P = h2 /2 at the final time.
25
Waterbed
Without wellbalancing
Initial water level
Wellbalanced scheme
20
15
10
100
200
300
400
500
600
Figure. 7. 1D dam break problem over a rectangular bump: Water level obtained
with and without surface gradient method for the forward and backward projection
steps
20
3.1.4
Our final one-dimensional problem is a dam break problem over a flat bottom topography. The initial conditions feature two constant states defined as
follows:
(h, u, ) =
(2, 0, 1),
if |x| 0.5,
(1, 0, 1.5), otherwise.
2
1.95
1.9
1.85
1.8
1.75
1.7
1.65
1.6
200 points
400 points
2000 points
1.55
1.5
1
0.8
0.6
0.4
0.2
0.2
0.4
0.6
0.8
Figure. 8. 1D dam break problem over a flat waterbed: Water height at time t = 0.2
obtained using the UCS scheme (dotted line) and the WB-UCS scheme (solid line).
that when the waterbed is flat, the source term in the Ripa system vanishes
and the resulting scheme is a homogeneous hyperbolic systems that can be
easily solved using finite volume methods. This test case was solved using both
the proposed well-balanced numerical scheme and the original unstaggered
central scheme [21]. Figure 9 shows the profiles of h, hu, h, and the pressure
P = h2 /2 obtained using the numerical base scheme with (solid curve) and
without (dotted curve) well-balancing at time t = 0.2. A good agreement
between the obtained numerical results is observed in figure 9, thus confirming
the consistency of the well-balanced scheme.
21
1.8
0.5
hu
1.6
0
1.4
0.5
1.2
1
1
0.5
0.5
1
1
1.6
0.5
0.5
0.5
0.5
1.4
P
1.5
1.2
1
1
0.8
1
0.5
0.5
0.5
1
Figure. 9. 1D dam break problem over a flat waterbed: Profile of the water height
h, momentum hu, temperature , and pressure P obtained at time t = 0.2 using
the WB-UCS scheme on 200 grid points (dotted curve) and 2000 gridpoints (solid
curve).
3.2
3.2.1
First, we consider the classical two-dimensional rectangular dam break problem over a flat bottom topography. The initial conditions feature two constant
states defined as follows:
(h, u, v, ) =
(2, 0, 0, 1),
if 0.5 x 0.5,
(1, 0, 0, 1.5), otherwise.
2
1.9
1.8
1.7
1.6
1.5
1.4
1
0.5
1
0.5
0
0
0.5
0.5
1
Figure. 10. Rectangular dam break problem: Water height at time t = 0.2 obtained
using the UCS scheme (dotted line) and the WB-UCS scheme (solid line).
1.8
1.6
1.4
1.2
502 gridpoints
1002 gridpoints
0.8
1
2002 gridpoints
Reference
0.8
0.6
0.4
0.2
0.2
0.4
0.6
0.8
Figure. 11. Rectangular dam break problem: Profile of the water height h obtained
on 502 , 1002 , and 2002 gridpoints and compared to the solution of the corresponding
one-dimensional problem obtained on 2000 gridpoints.
23
3.2.2
(2, 0, 0, 1),
if x2 + y 2 0.25,
(h, u, v, ) =
(1, 0, 0, 1.5), otherwise.
The computational domain = [1, 1]2 is discretized using 1002 , gridpoints
and the numerical solution is calculated at the final time t = 0.2 using the
well-balanced central scheme. Figure 12 shows the profile of the water height
obtained using the proposed numerical scheme. We see a shock and a contact
wave propagating radially towards the exterior of the domain, and a circular
rarefaction wave is propagating towards the center of the domain. Figures 13
2
1.8
1.6
1.4
1.2
1
0.8
1
0.5
1
0.5
0
0
0.5
0.5
1
Figure. 12. Circular dam break problem: Profile of the water height h obtained time
t = 0.2 on 1002 gridpoints.
and 14 show scatter plots of the cross sections of the water height h along the
diagonal line (y = x) and the y-axis (x=0), obtained on 502 , 1002 , and 2002
gridpoints.
3.2.3
2
502 gridpoints
1.9
1002 gridpoints
2002 gridpoints
1.8
Water height
1.7
1.6
1.5
1.4
1.3
1.2
1.1
1
1.5
0.5
0
Diagonal axis
0.5
1.5
Figure. 13. Circular dam break problem: Scatter plot of the cross sections of the
water height h at time t = 0.15 along the diagonal line y = x obtained on 502 , 1002 ,
and 2002 gridpoints.
1.8
Water height
1.6
1.4
1.2
502 gridpoints
1002 gridpoints
2002 gridpoints
0.8
1
0.8
0.6
0.4
0.2
0
Line x=0
0.2
0.4
0.6
0.8
Figure. 14. Circular dam break problem: Scatter plot of the cross sections of the
water height h at time t = 0.15 along the line x = 0 obtained on 502 , 1002 , and 2002
gridpoints.
25
data features the steady state (h + z, u, v, )(x, y, 0) = (3, 0, 0, 4/3) for all
(x, y) [2, 2]2 . The waterbed topography is defined as follows
z(x, y) =
+ (y + 0.5)2 )], if x 0
0.6 exp[100((x 0.5)2 + (y 0.5)2 )], if x > 0
The steady state solution is perturbed by introducing the variation of the water
height h(x, y, 0) = h(x, y, 0) + 0.1 for all (x, y) inside the annulus 0.01 x
0.09. The well-balanced numerical scheme is first validated and the numerical
solution of the steady state (without perturbation) is computed until time
t = 0.8 on a 1002 gridpoints. The obtained water height is shown in figure
(15) along with the waterbed function. Figure 16 shows the profile of the
3.5
3
2.5
2
1.5
1
0.5
0
2
1
2
1
0
0
1
2
Figure. 15. Perturbation of a steady state problem: Profile of the water height at a
steady state at time t = 0.8 obtained on 1002 gridpoints obtained using the WB-UCS
scheme.
water height obtained at time t = 0.15 and shows the propagation of the
water perturbation across the computational domain. Figure 17 shows some
contour lines of the water height at time t = 0.15 obtained using the wellbalanced scheme; these results are in good agreement with corresponding ones
presented in [6]. Figure 18 shows s scatter plot of the cross sections of h along
the diagonal line y = x obtained at the final time t = 0.15 on 502 , 1002 , and
2002 using the WB-UCS scheme.
26
Figure. 16. Perturbation of a steady state problem: Profile of the perturbed water
height at time t = 0.15 obtained on 1002 gridpoints obtained using the WB-UCS
scheme.
1.5
0.5
0.5
1.5
2
2
1.5
0.5
0.5
1.5
Figure. 17. Perturbation of a steady state problem: Contour lines of the water height
at time t = 0.15 on 1002 gridpoints obtained using the WB-UCS scheme.
27
4.2
4.1
4
3.9
3.8
3.7
3.6
3.5
502 gridpoints
3.4
1002 gridpoints
3.3
3.2
3
2002 gridpoints
0
Diagonal line
Figure. 18. Perturbation of a steady state problem: Scatter plot of the cross sections
of h along the diagonal line y = xs at time t = 0.15 obtained on 502 , 1002 , and
2002 gridpoints using the WB-UCS scheme.
Conclusion
and two-dimensional Ripa system problems are in perfect agreement with corresponding results appearing in the literature, thus confirming the efficiency
and potential of the proposed numerical scheme to accurately solve Ripa system problems.
Appendix
zi zi1
n
ghn
i i x
n
Si,R
=
0
0 ,
n
and Si,C
=
0
0
Therefore,
n
n
n
Sin = Si,L
+ Si,C
+ Si,R
=
zi zi1
n
ghn
i i x
1 2
gh
n n
n
0
ghi i (hi )
0
Therefore the prediction step becomes,
29
so (fin )0 =
n+ 1
ui 2
= uni
i1
n n 0
+ ghni in zi z
ghn
+
i (hi )
i
x
2
0
0
t
zi zi1
n
0
n
n
n
= ui +
ghi i [(hi ) +
]
2
x
= uni
+
ghn
[(h
+
z
)
(h
+
z
)]
i
i
i1
i1
i
i
2x
But since hni + zi = H = constant for all i then (hni + zi ) (hni1 + zi1 ) = 0
leading to
n+ 12
ui
= uni
A similar proof can be done for the values of the sensor function i .
= uni+ 1 . Recall that
Next we show that un+1
i+ 1
2
un+1
i+ 21
uni+ 1
2
t
1
n+ 1
n+ 1
n+ 1
n+ 1
f (ui+12 ) f (ui 2 ) +
S(ui 2 , ui+12 )
x
x
n+ 1
n+ 1
S(ui 2 , ui+12 )
= t
1
1
2 +(h)n+ 2
(h)n+
z
z
i+1
i
x g i
i+1
2
x
In the steady state case (4) we have in = constant and uni = 0 (zero velocity), and from the first part of theorem
above, we have
h
0
n+ 12
h
0
discretized flux comes
ui
30
n+ 1
f (ui+12 )
1
n+ 1
n+ 1
g(hi+12 )2 i+12
2
and
n+ 1
f (ui 2 )
1
n+ 1
n+ 1
g(hi 2 )2 i 2
2
leading to:
un+1
= uni+ 1
i+ 1
2
t
1
n+ 12 2 n+ 21
g(hi+1 ) i+1
2
x
0
1
n+ 12 2 n+ 12
g(hi
) i
2
0
1
n+ 1
n+
(h)i 2 +(h)i+12 zi+1 zi
+t
x
g
n+1/2
un+1
i+ 21
uni+ 1
2
n+ 12
But since ui
t n
n+ 1
n+ 1
n+ 1
n+ 1
i
21 g(hi+12 + hi 2 ) (hi+12 + zi+1 ) (hi 2 + zi )
x
0
n+ 1
i
1
x h
(h)ni + (h)ni+1 +
(h)ni |0 (h)ni+1 |0
2
8
(43)
We discretize the derivatives of h using the product rule and with the aid of
the water level function Hin = hni + zi as follows
(h)ni |0
(hni )0 in
hni (in )0
(Hin )0
zi+1/2 zi1/2 n
i + hni (in )0 .
x
Substituting in equation (43) one obtains (while taking into account that
Hin = H = constant and in is constant for all i)
(h)ni+1/2 =
1 n
1
zi + zi+1
hi + hni+1
zi+1/2
2
2
2
in
(44)
Similarly, for the backward projection step we apply the surface gradient
n+1/2
method and one obtains (while taking into account that i+1/2 is constant
fn+1/2 = hn+1/2 + ze
and H
i+1/2 is constant for all i)
i+1/2
i+1/2
(h)n+1
i
1
1 n+1
hi1/2 + hn+1
[(zi zi1 ) + (zi+1 zi )] in
=
i+1/2
2
8
(45)
0
h
1 2
2 gh
0
+ y
+ x
1 2
0
gh
32
z
gh x
gh z
uni,j
t
(fx )i,j
(gy )i,j
n
+
+ Si,j
2
x
y
(46)
n
where Si,j
is the discretized source term obtained with the aid of sensor functions. If the partial derivatives of the flux functions are approximated using
backward differences, then the sensor functions take the values 2 = 1 and
n
is constant,
3 = 1. Using the product rule and taking into account that i,j
the numerical partial derivatives of h2 required in equation (46) become
hni,j hni1,j
(h
x
!
n
hi,j hni,j1
2
n
n
(h )y |i,j = 2(h)i,j
y
!
)x |ni,j
= 2(h)ni,j
n
Si,j
=
S2
S
3
S1 = 0
=
=
i1,j
g(h)ni,j zi,j z
x
i,j1
g(h)ni,j zi,j z
y
S4 = 0
n+ 1
ui,j 2 = uni,j +
t
2
hi,j hi1,j
g(h)n
i,j
x
i,j
y
= uni,j +
t
2
g(h)n
i,j x
g(h)n
i,j y
+
+
zi,j zi1,j
x
zi,j zi,j1
33
n+ 12
And since hi,j +zi,j = H = constant for all (xi , yj ), then we obtain ui,j
n+ 12
= uni,j .
The solution at time tn+1 on the dual cells Di+1/2,j+1/2 is obtained using equation (26) as follows
un+1
= uni+ 1 ,j+ 1
i+ 1 ,j+ 1
2
(47)
t
n+ 21
n+ 21
n+ 1
n+ 12
f (ui+1,j
) + f (ui+1,j+1
) f (ui,j 2 ) f (ui,j+1
)
2x
t
n+ 12
n+ 12
n+ 1
n+ 12
g(ui,j+1
) + g(ui+1,j+1
) g(ui,j 2 ) g(ui+1,j
)
2y
t
n+ 12
n+ 12
n+ 12
n+ 12
+
S ui,j , ui+1,j , ui,j+1 , ui+1,j+1
xy
(48)
n+ 1
n+ 1
n+ 1
n+ 1
2
2
2
, ui,j+1
, ui+1,j+1
=
S ui,j 2 , ui+1,j
xy
2
g
2
x
2
y
(h)i+1,j+1 +(h)i,j+1 zi+1,j+1 zi,j+1
g
2
x
+
g (h)i+1,j+1 +(h)i+1,j zi+1,j+1 zi+1,j
2
y
0
0
h
0
1 2
z
0
gh
0
gh x
, g =
, f = 2
u=
1 2 , and S =
0
gh
gh z
0
y
h
n+ 1
ui,j 2
= uni,j
The fluxes and the source term that correspond to the h component are
34
n+ 1
n+ 1
n+ 1
t 2 n+ 21
2
2
2
2
2
2
g
h
+ h
h
h
i+1,j
i,j
i+1,j+1
i,j+1
4x
n+ 1
n+ 12
2
+ (h)i,j
t (h)i+1,j
+
g
2
2
t
g
2
n+ 21
(h)i+1,j+1
+
2
zi+1,j zi,j
n+ 21
(h)i,j+1
zi+1,j+1 zi,j+1
(49)
x
n
= constant, hni,j + zi,j = H = constant, and
Taking into account that i,j
n+ 21
ui,j
Proof of theorem 4
n
Now we want to show that the equality un+1
i,j = ui,j holds for all i, j whenever
the steady state 4 is satisfied at the discrete level at time tn . We shall proceed
n+1
n
componentwise; we note that the equalities hun+1
= huni,j and hvi,j
= hvi,j
i,j
n
n
are immediate from theorem 3 since we have u i, j = vi,j = 0 for all i, j. We
n
start by showing the equality hn+1
i,j = hi,j ; we recall that for both the first and
fourth components of uni,j , the forward projection step (27) is performed using
the surface gradient method as follows
35
hni+ 1 ,j+ 1 =
2
1 n
hi,j + hni+1,j + hni,j+1 + hni+1,j+1
4
x n
+
Hx|i,j
16
x n
Hx|i,j+1
16
x n
Hx|i+1,j
16
y
Hy|i,j
16
y n
Hy|i+1,j
16
y n
Hy|i,j+1
16
zi 1 ,j 1 +zi+ 1 ,j 1
y n
Hy|i+1,j+1
16
zi 1 ,j 1 +zi 1 ,j+ 1
x n
Hx|i+1,j+1
16
zi+ 1 ,j 1 +zi+ 3 ,j 1
(50)
n
= hni,j + zi,j = constant) is
Since at time tn the steady state constraint (Hi,j
n
maintained, then all numerical partial derivatives of Hi,j
in equation (50) are
zero. Furthermore, equation (35) leads to
(51)
36
(52)
hni+ 1 ,j+ 1 =
2
1 n
hi,j + hni+1,j + hni,j+1 + hni+1,j+1
4
2
(zi+ 1 ,j 1 + zi+ 1 ,j+ 1 ) 2zi,j
2
2
2
2
32
2
hni+ 1 ,j+ 1 =
2
1 n
hi,j + hni,j+1 + hni+1,j + hni+1,j+1
4
1
+ (zi,j + zi,j+1 + zi+1,j + zi+1,j+1 )
4
1
(4zi+ 1 ,j+ 1 + zi+ 1 ,j+ 3 + zi+ 1 ,j 1
2
2
2
2
2
2
8
+zi 1 ,j+ 1 + zi+ 3 ,j+ 1 )
2
(53)
Similarly, for the back-projection step, we follow the surface gradient method
fn+1
and discretize the water height in terms of the water level H
i+1/2,j+1/2 =
n+1
hi+1/2,j+1/2 + zei+1/2,j+1/2 as follows.
hn+1
i,j
1 n+1
n+1
n+1
hi 1 ,j 1 + hn+1
=
1 + h
1 + h
1
1
,j
,j+
i+
i
i+ 12 ,j+ 12
2
2
2
2
2
2
4
zi 1 ,j 1 +zi+ 1 ,j 1
zi 3 ,j 1 +zi 1 ,j 1
2
2
2
2
2
2
2
2
x f n+1
2
2
+
(Hx )i 1 ,j 1
2
2
16
x
x f n+1
+
(Hx )i 1 ,j+ 1
2
2
16
x f n+1
(Hx )i+ 1 ,j 1
2
2
16
x f n+1
(Hx )i+ 1 ,j+ 1
2
2
16
y f n+1
(Hy )i 1 ,j 1
2
2
16
y f n+1
(Hy )i+ 1 ,j 1
2
2
16
y f n+1
(Hy )i 1 ,j+ 1
2
2
16
y f n+1
(Hy )i+ 1 ,j+ 1
2
2
16
zi+ 1 ,j 1 +zi+ 3 ,j 1
2
zi 1 ,j 1 +zi 1 ,j+ 1
2
zi 1 ,j 1 +zi+ 1 ,j 1
zi 1 ,j 3 +zi 1 ,j 1
zi+ 1 ,j 3 +zi+ 1 ,j 1
zi 1 ,j 1 +zi 1 ,j+ 1
(54)
fn+1
Note that when Hi,j = hni,j + zi,j = H = constant, then H
= hn+1
+
i+ 1 ,j+ 1
i+ 1 ,j+ 1
2
f )n+1
f n+1
zei+ 1 ,j+ 1 = H remains constant and therefore (H
x i+ 1 ,j+ 1 = (Hy )i+ 1 ,j+ 1 = 0;
2
2
2
2
2
2
equation (54) becomes.
38
hn+1
i,j = H
1
zei 1 ,j 1 + zei+ 1 ,j 1 + zei 1 ,j+ 1 + zei+ 1 ,j+ 1
2
2
2
2
2
2
2
2
4
1 h
(z 1 1
32 i 2 ,j 2
1 h
(z 1 1
32 i 2 ,j+ 2
1 h
+
(z 1 1
32 i+ 2 ,j 2
1 h
+
(z 1 1
32 i+ 2 ,j+ 2
1 h
(z 1 1
32 i 2 ,j 2
1 h
(z 1 1
32 i+ 2 ,j 2
1 h
+
(z 1 1
32 i 2 ,j+ 2
1 h
(z 1 1
+
32 i+ 2 ,j+ 2
+ zi+ 1 ,j 1 ) (zi 3 ,j 1 + zi 1 ,j 1 )
+ zi 1 ,j+ 1 ) (zi 1 ,j 3 + zi 1 ,j 1 )
which reduces to
hn+1
i,j = H
1
zei 1 ,j 1 + zei+ 1 ,j 1 + zei 1 ,j+ 1 + zei+ 1 ,j+ 1
2
2
2
2
2
2
2
2
4
1 h
z 3 1
32 i 2 ,j 2
1 h
z 1 1
+
32 i+ 2 ,j 2
1 h
z 1 1
32 i 2 ,j 2
1 h
z 1 1
32 i 2 ,j 2
1 h
z 1 3
32 i 2 ,j 2
1 h
+
z 1 1
32 i 2 ,j+ 2
1 h
z 1 1
32 i 2 ,j 2
1 h
z 1 1
32 i 2 ,j 2
+ zi 1 ,j 1 + zi 3 ,j+ 1 + zi 1 ,j+ 1
+ zi 1 ,j 1 + zi+ 1 ,j 3 + zi+ 1 ,j 1
(55)
i
1h
zi 1 ,j 3 + zi 1 ,j 1 + zi+ 1 ,j 3 + zi+ 1 ,j 1
2
2
2
2
2
2
4h 2 2
i
1
zi,j+1 =
zi 1 ,j+ 1 + zi 1 ,j+ 3 + zi+ 1 ,j+ 1 + zi+ 1 ,j+ 3
2
2
2
2
2
2
2
2
4
Thus we obtain
zi,j1 =
hn+1
i,j = H
1
zei 1 ,j 1 + zei+ 1 ,j 1 + zei 1 ,j+ 1 + zei+ 1 ,j+ 1
2
2
2
2
2
2
2
2
4
1
+ (zi1,j + zi+1,j + zi,j1 + zi,j+1 4zi,j )
8
(56)
+ zi 1 ,j+ 1 + zi 1 ,j 3 + zi 3 ,j 1 + zi+ 1 ,j 1
(58)
11
[4zi,j1 + 4zi1,j + 4zi,j+1 + 4zi+1,j + 16zi,j ]
48
1
+ (zi,j1 + zi1,j + zi,j+1 + zi+1,j 4zi,j )
8
= H zi,j = hni,j .
(59)
40
Acknowledgement
The authors would like to thank the anonymous reviewers for their valuable
comments and suggestions.
References
41
42