Content uploaded by Yann Thorimbert

Author content

All content in this area was uploaded by Yann Thorimbert on Aug 07, 2018

Content may be subject to copyright.

Coupling of lattice Boltzmann shallow water model with

lattice Boltzmann free-surface model

Yann Thorimbert1,

Abstract

We present a scheme for coupling a 2D lattice Boltzmann free-surface solver with

a 1D lattice Boltzmann shallow water solver, allowing to save computational ef-

fort and eﬃciently realize multiscale systems. The accuracy of the coupling is

validated with two tests. First, we compare the numerical and analytical so-

lutions in a setup with ﬁxed inﬂow current and outﬂow water level in a canal.

Secondly, the physics of wave propagation and reﬂection in a domain is investi-

gated in a coupled simulation, and compared to the solutions obtained in both

a pure free-surface and a pure shallow-water simulation. Finally, a performance

test is carried out to demonstrate that the overhead of the coupling is negligi-

ble. A quantitative validation of this type of coupling for the lattice Boltzmann

method is novel, and opens the door to a range of large-scale simulations of

canals and other hydrodynamic systems.

Keywords: lattice Boltzmann, free-surface, shallow water, two-phase ﬂows,

validation

1. Introduction

The lattice Boltzmann (LB) method is now recognized as a successful numer-

ical solver for the incompressible Navier-Stokes equations (NSE). The method

is based on the Boltzmann equation (see [1, 2] for more details on the method),

and it is therefore suﬃciently general to simulate a wide set of physical systems,

including multi-phase and free-surface ﬂows. Free-surface and shallow water

models are commonly used to simulate, among others, rivers and coastal ﬂows.

The work of [3] demonstrates the ability of shallow water models to simulate

erosion with high performance, while [4] use it to study sediment transport. An

application of a shallow water model to marine ﬂow in coastal areas can also

be found in [5]. Free-surface ﬂows can be computed with good eﬃciency in the

LB method using a Volume-of-Fluid (VOF) approach [6]. Such an approach is

for instance used in [7] for the simulation of sediment transport in rivers. This

paper highlights the limits of the VOF approach from a computational perspec-

tive, as it shows the inability to simulate a river segment signiﬁcantly longer

than 10 km even using a parallel computer with several hundred CPU cores.

A VOF free-surface model was used in [8] for simulating an Oscillating Water

Column wave energy conversion device, and a similar approach using the LB

Preprint submitted to Elsevier August 7, 2018

method was studied in our previous work [9]. While a free-surface model allows

us to fully simulate a 3D ﬂow, an approach based on the shallow water equation

saves computational cost, allowing to simulate much larger domains. Shallow

water models may also be considered as a solution to overcome spurious energy

dissipation (see [9]) occurring over long distances in underresolved LB VOF

simulations. As a downside, the shallow water equation is based on more limiting

physical assumptions (see Section 2.1 below) than the free-surface approach.

A coupling between a LB shallow water model and a LB free-surface model

therefore oﬀers a way to obtain the best of both worlds, using a free-surface

model to simulate the ﬂuid on small portions of the domain requiring high

accuracy and with complex ﬂow patterns, while pure wave or ﬂow propagation

and reﬂection phenomena are simulated on larger portions with a shallow water

model.

The purpose of this article is to present a scheme for coupling LB free-surface

model with LB shallow water model. To illustrate this coupling and assess its

quality, we consider here the 2D-1D case. The coupling accuracy is studied

here through two diﬀerent tests, the former focusing on ﬂow rate transmission

between coupled lattices, while the latter focuses on wave propagation. The aim

of such a coupling is to save computational time thanks to the shallow water

model while preserving accuracy allowed by the free-surface model. As a result

of the lower dimensionality of the shallow water model, its computational cost

(see section 5) is one order of magnitude lower than the one of the free-surface

model; this particular point is crucial since one can expect this computational

scale diﬀerence to be reﬂected in the time and space scale of the corresponding

simulated domains, giving the opportunity to simulate multiscale systems.

We present the LB, free-surface LB VOF and LB shallow water methods in

the second section. In the third section, we describe the scheme used to couple

shallow water and free-surface systems. The coupling model is tested in the

fourth section, where diﬀerent benchmarks are used. Performance considera-

tions are given in the last section.

2. Lattice Boltzmann method

The fundamental principles of the LB method (see [2, 10, 11] for more details)

originate from statistical mechanics. The Boltzmann equation describes the

statistical kinetics of gas molecules [12]. As a consequence, the quantity solved

for in this method is the particle distribution function, and the macroscopic

variables such as velocity or pressure are derived quantities, deﬁned as velocity

moments of the distribution function. The method is Cartesian mesh based,

allowing fast mesh generation, and the method is inherently parallelizable and

scalable [13] thanks to spatial locality of its interaction pattern.

The lattice Boltzmann equation is obtained by truncating the continuum

Boltzmann equation in velocity space [14, 15]. A number of qparticle distribu-

tions, also named populations, is attached to each lattice site. These populations

can be seen as the discrete counterpart of the particle distribution function in

the continuous Boltzmann equation. The qvelocities ciof the lattice correspond

2

to the Gaussian quadrature points used to resolve integrals in the discrete ve-

locity space. The population representing the statistics of particles entering the

lattice site rat time twith velocity ciis denoted by fi(r, t). The number of

discrete velocities used in the numerical scheme determines the connectivity of

lattice nodes with their neighbors. One uses the notation “DdQq”, where dis

the number of dimensions and qthe number of velocities, to denominate the

chosen scheme. For instance, a D1Q3 lattice has been used in the present study

to run the shallow water simulations.

The collision term of the Boltzmann equation is often approximated by the

Bhatnagar-Gross-Krook (BGK) collision model [16], which uses a single relax-

ation time. In this model, the time evolution is expressed through the relation

fi(r+ ∆tci, t + ∆t)−fi(r, t) = −1

τ(fi(r, t)−feq

i(r, t)) ,(1)

where feq

iare the equilibrium populations, ∆xand ∆tare the discrete space

and time steps respectively, and τis the relaxation parameter. The equilibrium

populations feq

iare obtained as a ﬁnite expansion of the Maxwell-Boltzmann

equilibrium distribution, up to second order with respect to the Mach number.

The macroscopic density and velocity can be computed from the populations

as:

ρ=Xfi, ρu=Xcifi.(2)

A Chapman-Enskog analysis (see [15] for instance) demonstrates that the

above scheme is asymptotically equivalent to solutions of the incompressible

Navier-Stokes equations, in the limit of small Mach number.

In the present study, 2D VOF simulations are run using an approach of large-

eddy simulation (LES), based on a Smagorinsky subgrid-scale model( [17, 11,

10]). Although the ﬂow is expected to be laminar in coupling interface regions,

it can become turbulent in any other part of the domain.

2.1. LB Shallow Water model

An early attempt to solve the shallow water equations using the LB method

can be found in [18]. The LB shallow water model used in this study follows

the line of [19]. As in [20], we consider a 1D ﬂow in a rectangular channel with

slope Iand width B. The shallow water equations, also named Saint-Venant

equations in 1D, are derived from mass and momentum Navier-Stokes equations,

assuming that the water depth is very small as compared to the characteristic

length of ﬂow structures. Further assumptions include ﬂuid incompressibility, a

hydrostatic pressure proﬁle, negligible viscosity eﬀects, and a small value of the

slope I. Under these assumptions, the Navier-Stokes equations are reduced to

the following relations:

∂h

∂t +∂(hu)

∂x = 0,(3)

3

∂(hu)

∂t +∂(gh2/2 + hu2)

∂x =gh(I−J),(4)

where hdenotes the water height from the bottom to the surface, uis the

depth-averaged horizontal velocity, gis the gravitational acceleration, and Ja

term accounting for the friction force due to channel bottom. The latter term

is modeled as [21]:

J=n2u22h+B

hB 4/3

,(5)

where nis the Manning coeﬃcient of the canal.

In the LB model for simulating shallow water equations, the water height his

assimilated to the ﬁrst-order velocity moment ρ(“the density”), and is computed

as the sum of the populations. In this study we use the D1Q3 model presented

in [20]. One can show that, for Froude number F r =u/√gH close to 1, spurious

viscous contribution appears in this model [20], thus constraining the type of

regime simulated.

2.2. LB free-surface VOF model

The free-surface model considers two-phase ﬂuid compounds with a large

density ratio, akin to water-air systems in normal atmospheric conditions. It

simulates the physics of the heavy ﬂuid only, and replaces the eﬀect of the light

ﬂuid onto the heavy one through a condition of zero parallel shear stress along

two-phase interface. In the LB VOF approach, additionally to the usual ﬂuid

variables, every cell keeps trace of the local mass mand volume fraction V F .

While V F = 1 on bulk cells of the heavy ﬂuid, it is related to the ﬂuid density

on interface cells: V F =m/ρ. Thus, the cells of the ﬂuid mesh are split into

three categories: “ﬂuid cells” (cells completely occupied by the heavy ﬂuid) in

which V F = 1, “empty cells” (cells completely occupied by the light ﬂuid) with

V F = 0, and “interface cells” on which the volume fraction is comprised between

0 and 1. The interface layer between ﬂuid and empty cells is always closed, so

that an empty cell is never in the neighboring of a ﬂuid cell.

At each iteration, the progression of the two-phase interface is simulated

through a mass advection process, and the cell types are updated accordingly.

For an interface cell, the population fout

Ithat is streamed from an empty cell in

the direction iis given by fout

I=feq

i+feq

I−fi, where Idenotes the direction

opposite to i. The equilibrium populations here are computed using a constant

reference air density, set to 1 in our model.

Classical bounce-back conditions [22] are applied to wall cells, in the same

way as in standard single-phase simulations. A more detailed presentation of

VOF free-surface models and their LB implementation can be found in [23, 24].

Note that even if the solution of the ﬂow ﬁeld is obtained via a LB approach,

the advection equation for the VOF ﬁll level can be solved in diﬀerent ways, as

for instance in [25], where it is discretized with a ﬁnite volume method.

4

2.3. Other works on SW-FS coupling

To the best of the authors’ knowledge, there exist only few studies regarding

the coupling of shallow water and free-surface (SW-FS) models. A coupling

between a 3D free-surface solver and a 1D shallow water solver, both based on

ﬁnite diﬀerences method, is studied in [26]. The numerical scheme is validated

through the study of the ﬂow in a curved channel, with an oscillatory inﬂow

velocity condition and imposed outﬂow. The study is however limited, as it

does not represent eﬀects of friction along the channel bed, and the water depth

is constant along the channel. At the coupling interface, the water level in the

1D simulation is imposed as the average of the water level of the 3D simulation,

while the velocity in the 1D simulation is used as the value to impose in all

the corresponding 3D sites. Within this setup, a good match for the time

evolution of the free-surface height is found between the coupled system and

a single 3D free-surface simulation. A coupling between a 3D LB VOF free-

surface solver and a 2D LB shallow water solver is also presented in [27]. Since

this publication is targeted at a computer visualization community, it does not

include any quantitative validation of the coupling.

In [28, 29], a distinction is made between coupling strategies involving sys-

tems that are dimensionally homogeneous and physically heterogeneous, and

systems that are dimensionally heterogeneous and physically homogenous. Ap-

plications with diﬀerent coupled shallow water models are depicted. The present

work, however, involves both dimensionally heterogeneous and physically het-

erogeneous systems. A study of diﬀerent coupling types such as via source terms,

boundary conditions or state variables, is also found in [30] and is applied to

shallow water systems.

3. Coupling scheme

In a coupled simulation, we use free-surface and shallow water lattices to

represent diﬀerent parts of the physical domain. At the connection between the

two domains, an overlap region is used, in which the two lattices are superim-

posed. At both ends of this overlap region, a coupling between the lattices is

performed. In this way, the coupling is not performed at the same location on

both lattices, in order to avoid ampliﬁcation of errors and resulting numerical

instabilities. Figure 1 depicts the conﬁguration. Note that, in a similar way as

done in [27] for the 3D-2D case, the coupling interfaces at coordinates x=B

and x=Care vertical columns with a thickness of 1 cell in the xdirection.

The overlap zone has a length of C−Bcells.

In the coupling scheme presented below, lattices are synchronously updated.

This implies that, at the coupling interface only, data from one of the lattices

has to be saved in temporary variables before the coupling scheme is applied.

3.1. Coupling from shallow water to free-surface

At the coordinate x=C, the coupling acts as a boundary condition for

the free-surface lattice, which imposes a water height and velocity determined

5

Figure 1: Conﬁguration of the lattices and their coupling. The area below the curved line in

the free-surface lattice represents the VF value of interface cells, while the height simulated

in the shallow water lattice is represented by a discrete water column.

by the shallow water ﬂow, incoming from the right. The following steps are

performed each iteration:

First step.. Update the free-surface cell types according to the shallow water

height. In order to perform this step, the volume fraction V F of the free-

surface lattice is computed according to the water height hof the shallow water

lattice on the same interface cell. The volume fraction of a corresponding,

superimposed interface free-surface cell is h− bhc. The ycoordinate of this cell

is bh·∆xc.

Second step.. The horizontal velocity is obtained from the shallow water lattice

at the same interface location x=C. This value is used as a basis for the

velocity to impose at each cell of the ﬂuid column of the free-surface lattice.

Here, missing information for the horizontal velocity along depth u(y)has to

be completed. Three types of distribution have been tested: a constant velocity

proﬁle, a quadratic velocity proﬁle and a logarithmic velocity proﬁle. In the

ﬁrst case, one imposes the same velocity to each cell along the depth. For

the quadratic case, the imposed velocity proﬁle corresponds to a steady-state

solution of a laminar free-surface ﬂow, with a constant current Qand a constant

ﬂuid height H. Figure 2 displays an example of a quadratic proﬁle. As indicated

in [31] for instance, the expected velocity proﬁle is parabolic in a theoretical

laminar free-surface ﬂow. The parabolic proﬁle is characterized by the following

three parameters: the mean velocity ¯u≡Q/S, where Sis the cross section of the

domain, and the velocity at the bottom and at the level of the free surface, u(0)

and u(H)respectively. These values depend on the properties of the walls. The

latter two conditions, combined with the ﬂow condition 1/H RH

0u(y)dy = ¯u,

6

yield a unique velocity proﬁle. In our case, we apply a no slip condition at

the bottom, u(0) = 0. Since the free-surface model assumes zero parallel shear

stresses at the interface, the maximum theoretical velocity is reached at the

surface y=H, and the theoretical velocity proﬁle reads:

u(y) = 3¯uy

H1−y

2H.(6)

The maximum velocity value 3¯u/2is in theory obtained at y=H. However, real

laminar ﬂows in a canal show a slight velocity decrease near the water surface,

due to the so-called dip eﬀect [32] that arises in canals with ﬁnite width due to

friction forces, as well as non-zero parallel shear stress at the interface. These

phenomena are not implemented in our study. Also, our free-surface model is

two-dimensional and we assume there are no lateral walls. An example of the

velocity proﬁle for laminar ﬂow in the free-surface model is shown in Figure 2.

In summary, as we couple the velocity from the shallow water to the free-

surface lattice at x=C, we apply the theoretical velocity proﬁle to the water

column, as provided by Equation 6, with mean velocity ¯u=uSW and a water

height H=hSW . These values are imposed to free-surface cells as Zou-He

velocity boundary conditions [33], even for the last, interface cell of the column

(both the free-surface completion scheme and Zou-He completion scheme are

involved at the top cell, the latter using the value from the former if needed).

When the water height changes, the populations of the new interface cell are

initialized at equilibrium.

In turbulent ﬂows, the velocity proﬁle is known to take a logarithmic form

[34]. This proﬁle has been tested and we show in Section 4.2.1 that, for the

benchmarks used, the diﬀerence in the results is not signiﬁcantly impacted by

the choice of the velocity proﬁle. In the canal test cases (see Section 4.1), the use

of either quadratic or logarithmic velocity proﬁle improved the overall accuracy

of the result by approximately 5%, while in the wave propagation tests (see

Section 4.2), the improvement of accuracy amounted to approximately 2.5%. In

this article, the quadratic proﬁle was used unless otherwise speciﬁed.

We would like to point out that, if the main phenomenon of interest is the

propagation of surface gravity waves, an alternative velocity proﬁle could be

considered. In this case, if the properties (e.g. period and amplitude) of the

waves created during the simulation are known, one can deduce the pressure and

velocity distributions under the water surface. The proﬁle for these quantities

is expressed in terms of the amplitude, the period, and the water depth [34],

and could be directly imposed at the coupling interface. However, the deter-

mination of wave properties, and in particular their period, is non trivial, and

an additional numerical eﬀort would be required to compute their time-varying

properties.

As a ﬁnal comment, the y-component of the velocity cannot be directly

obtained from the shallow water lattice. However, we deduce it, at a ﬁrst-order

approximation, by keeping track of the hvalues on interface cells from the

previous iterations. The value (ht−ht−1)/∆tis then taken as an approximation

of the vertical component of the velocity, and is uniformly distributed over the

7

Figure 2: Velocity proﬁle along the water height yfrom the bottom y= 0 to the free surface

y= 0.4 m, obtained from a free-surface simulation with constant inlet and outlet ﬂows. In

this example, ∆x= 8 ·10−3mand ∆t= 8 ·10−5s.

8

depth. Higher order schemes may be considered, but we have not investigated

them presently, and this study includes only the above one.

3.2. Coupling from free-surface to shallow water

At the position x=B, the coupling acts as a boundary condition for the

cell of the shallow water lattice, using ﬂow properties of the free-surface lattice

arriving from the left.

The water height of a free-surface column at coordinate xcan be computed

as:

hF S = ∆x

H

X

y=0

VF(x, y).(7)

The mean horizontal velocity uFS of the free-surface lattice is similarly com-

puted as an average over a water column. These values are imposed to the shal-

low water lattice on interface cell, by setting the populations to fi=feq

i(hF S , uF S )+

fneq

i(hSW , uSW ). The non-equilibrium part is preserved as it does not change

the evaluation of macroscopic height and velocity. The value of the non-equilibrium

part can be computed as indicated in [20] :

fneq

0=τ∆t1−gh

v2−3u2

v2∂x(hu)+2u2

v2−gh

v2u∂xh,(8)

and fneq

1=fneq

2=−fneq

0/2. The spatial derivatives of hand uare evaluated

through a second order centered scheme.

3.3. Coupling parameters

The numerical parameters that can be freely chosen in our model are the

length of the overlap zone and the time and space steps ∆tand ∆x. In this

paper, the latter two parameters are equal in the free-surface and the shallow

water simulation. Although it is in principle wasteful to apply the same time step

in both simulations whereas the free-surface model often requires a ﬁner time

step, this choice remains appropriate in our case, in which the computational

eﬀort is largely dominated by the free-surface simulations (see Section 5), while

the computations of the shallow water lattice are negligible.

The stability of the simulations is aﬀected by the size of the overlaping zone.

For the benchmarks studied, an overlap zone of 0.2 m was found to be a good

value in terms of stability. One can see the overlap zone as a buﬀer area allowing

to make a relaxation of the coupling variables going from one lattice to the other

one. When the size is too small, the spurious quantities are increased by the

feedback between lattices. This behaviour was expected, since the physics of

each lattice are of diﬀerent nature, in addition to the inhomogeneity of lattice

topology. Hence, the coupling here is substantially diﬀerent from that involved

in a grid reﬁnement scheme for instance, which allows for smaller interaction

stencils.

Another parameter of the simulation is the relaxation time τ, which relates

to the ﬂuid viscosity. We have kept this parameter free, and its inﬂuence on the

accuracy is presented in the results below.

9

It should be pointed out that, for our coupled system to produce meaningful

results, one should make sure that physical phenomena occurring near the cou-

pling interface are properly captured by both the free-surface and the shallow

water model. It is reminded that the assumptions of the shallow water model are

valid only if the horizontal characteristic scale (e.g. the wavelength of a wave)

is much larger than the vertical scale (e.g. water depth). In the case of surface

wave propagation in a canal of depth H, waves in the shallow water system

propagate with velocity v=√gH, while in the free-surface system waves travel

with velocity v=pgλ tanh(2πH/λ)/(2π), assuming their behavior obey linear

wave theory (see [34] for instance), with λthe wavelength. Since tanh(x)≈x

for small values of x, these expressions tend to be equivalent for small values of

H/λ.

We conclude this section by remarking that height, velocity, or any physical

quantity, are deﬁned twice in overlapping areas, by both the free-surface and

the shallow water lattices. Since there is no a priori reason to choose the

value from one lattice rather than from the other one, we choose here to deﬁne

any quantity qof the ﬂuid in the overlap area through linear interpolation as

q(x) = α·qSW (x) + (1 −α)·qF S (x), where α= (x−B)/(C−B). While this

choice has an impact on the visualization of the ﬂow quantities, it does not

aﬀect the results of either the free-surface or the shallow water simulation, as

the physical variables of the overlap zone are not explicitly used in the coupling

scheme.

4. Results

4.1. Benchmark

Our benchmark case is similar to the one of [20]. It imposes an inﬂow current

Q0and an outﬂow water height hLon a canal of given length L, as depicted

in Figure 3, and in this way allows us to test the coupling in both ways (from

free-surface to shallow water and vice versa). This benchmark tests the response

Figure 3: Conﬁguration of the benchmark test with a canal of length L. The inﬂow current

Q0and the outﬂow water height hLare imposed. The free-surface lattice is in the center of

the domain and is surrounded by longer, shallow water lattices.

of both height and velocity to perturbations, and is motivated by its similarity

with potential real-life applications to irrigation canals [20, 35]. The simulation

10

domain is decomposed into three parts: two shallow water parts and one free-

surface part in the center. A bounce-back condition is applied at the bottom

of the free-surface part. The inﬂow current and outﬂow height are imposed to

the shallow water lattices in the same way as in [20], by completing the unique

missing population. The shallow water diﬀerential equation corresponding to

the discussed condition reads:

∂h

∂x =gh(I−J)

gh −u2,(9)

where u=Q0/(Bh), with the condition h(L) = hL, and

J=n2Q2

0

B2h2Bh

B+2h4/3.(10)

An approximated solution for this equation is obtained numerically using a

solver for ordinary diﬀerential equations based on Runge-Kutta method.

The results are validated by computing the mean relative error of the data

from the coupling model to the reference solution href of Equation (9). We

deﬁne the mean relative error as:

=1

N

N

X

i=0

|h(i∆x)−href (i∆x)|

href (i∆x),(11)

where N≡L/∆xis the total number of cells along x-axis. All three do-

mains are included in the calculation of the error. The parameters used for the

simulations are ∆x= 8 ·10−3m,∆t= 8 ·10−5s,H0= 0.4 m,τS W = 0.51,

L= 4 m,I= 2.6·10−3,B= 0.1 m,n= 0.0103 and g= 9.81 m/s2. The length

of the full free-surface domain is 0.8 m and the length of each overlap zone is

0.2 m.

For a given set of values for the quantities described above, the resulting

ﬂow reads:

Qi=√IBH

nBH

B+ 2H2/3

.(12)

The above value of Qiis used for the initial condition of the ﬂow velocity

ui=Qi/(BH )everywhere in the domain. In an initial stage of the simulation,

the ﬂow is linearly increased up to Q0= 1.5·Qi, as done in [20]. The Froude and

Reynolds number corresponding to the described setup are F r ≈0.5,Re ≈106

respectively. The water level is initialized at a value h(x) = H0everywhere in

the domain.

The proposed benchmark is highly demanding for our coupling model. In-

deed, the LB, VOF-based free-surface model suﬀers from energy dissipation over

long distances, and is therefore poorly adapted to a simulation of a long canal.

As pointed out in the introduction, this is precisely one of the reasons why

a SW-FS coupling model is needed in situations where both long-range wave

11

propagation and a precise representation of the ﬂow structure are required in

diﬀerent parts of the simulation domain.

Figure 4 shows the evolution of as a function of time for τFS = 0.55,

τF S = 0.53 and τF S = 0.501, and the solution from the shallow water model

alone. An installation wave and its reﬂections perturb the simulation at the

beginning, due to the initial ﬂow increase from Qito Q0. At time t≈10 s,

a steady state is reached. Figure 6 shows that the mean relative error linearly

decreases with the lattice spacing ∆x, for a given set of relaxation times for the

free-surface and shallow water lattices. The simulations show that the accuracy

of the results linearly decreases as the value of τFS departs from 0.5, as shown

in Figure 5. To explain this, we point out that the considered benchmark case

assumes an inviscid ﬂow, and that the shallow water equation similarly solves

the non-viscous shallow water equations. Note that is has been shown in [20]

that even the shallow water model exhibits a non-null viscosity, that does not

correspond to the one of the free-surface model. Therefore, a residual error is

found, although the free-surface domain yields best results at low viscosity, when

τis close to 0.5. Figure 7 compares the elevation proﬁle at time T= 29.7 s in

the theoretical case and in the coupled simulation, and shows that the coupling

scheme introduces discrepancies of the order of 10−2. As a result, the total mass

of ﬂuid slightly diﬀers from the initial one ; this eﬀect is quantiﬁed in Section

4.3.

Figure 4: Evolution of mean relative error as a function of time, for three diﬀerent values of

τF S with SW-FS model and shallow water model.

12

Figure 5: Mean relative error in the steady state as a function of lattice spacing ∆xfor

constant τSW = 0.51 and τF S = 0.501. The dotted line corresponds to a linear ﬁt.

4.2. Wave transmission

In the next numerical test, we focus on the transmission of waves from the

shallow water to the free-surface simulation and vice versa, by tracking the

evolution of surface elevation along time. For this reason, we use a symmetric

test case in which the water elevation is initialized with the following proﬁle:

h(x) = H0+Hdrop ·e−(x−X0)2/(2σ2).(13)

For the results presented below, the parameters are H0= 0.195 m,Hdrop =

0.1 m,X0= 2 m and σ= 0.15 m. The total length of the domain is 4 m while

the length of the central, free-surface domain is 1 m and overlap areas of 0.2 m.

The corresponding Froude and Reynolds numbers are F r ≈0.2,Re ≈105

respectively. We refer to this test under the term of “Gaussian drop”, due to

the similarity of its behaviour with the waves generated by a droplet falling into

water. The symmetry of the system, the reﬂections of waves on boundary walls

and the resulting superimposition of waves makes it relevant for the study of

wave propagation. It allows us to verify wave properties over a long time while

keeping the simulation domain small.

13

Figure 6: Mean relative error as a function of τFS for constant τS W = 0.51, in the steady

state.

14

Figure 7: Water elevation along the channel for the simulation using the coupling scheme (red

dotted line) and in the theoretical case (green line), at time T= 29.7 s. Overlap areas are

delimited by vertical dotted lines.

15

4.2.1. Velocity proﬁle in free-surface model

As discussed in Section 3.1, the shape of the velocity proﬁle requires an ad-

hoc choice to be made, given that the data from the shallow water lattice is

one-dimensional. Figure 8 shows the diﬀerence of water elevation at diﬀerent

time steps for the Gaussian drop, for results obtained from constant, quadratic

and logarithmic velocity proﬁles. In the Gaussian drop test case as well as in the

canal test, the mean relative diﬀerence between the results for diﬀerent proﬁles

is less than 2.5%. Apart from the observation that, in our benchmark, the actual

velocity proﬁle appears to be much less important than the total ﬂow, another

possible reason for this small diﬀerence is that, even starting from a constant

velocity proﬁle along depth, the proﬁle adapts after on the x-axis, as shown in

Figure 9. Thus, a constant proﬁle has a small impact on the mean relative error

for a steady ﬂow; however, it has an inﬂuence on the capacity of the coupling

scheme to react to quick ﬂow changes, as in the canal benchmark test. For this

reason, the quadratic proﬁle was preferred.

Figure 8: Comparison of the solution obtained for the Gaussian drop test with constant,

quadratic and logarithmic velocity proﬁles at diﬀerent time steps.

4.2.2. Comparison between models

Figure 10 compares the solutions obtained with the shallow water model,

the free-surface model, and the coupled system respectively for the Gaussian

drop.

16

Figure 9: Example of velocity proﬁle along y-axis at diﬀerent locations on the x-axis, after

0.5 sof simulation (5·103iterations). In this test a constant velocity (continuous line) is

imposed at x= 0 in the free-surface lattice, and there is no shallow water lattice. A parabolic

distribution is recovered for the velocity after a short distance.

17

Figure 11 shows the mean relative deviation of the shallow water solution, as

compared to the coupled and the pure free-surface solutions. It can be observed

that the diﬀerence between coupled system and pure shallow water method is

essentially equal to the diﬀerence between coupled system and pure free-surface.

Regardless if one chooses free-surface or shallow water as reference solutions,

the mean relative error remains smaller than approximately 3% throughout the

simulation, which is consistent with the mean relative error found in the previous

benchmark.

Figure 10: Solutions obtained from shallow water model only, free-surface model only, and

coupled model for the Gaussian drop. The physical time Tis indicated in each case. Vertical

dashed lines delimit overlap areas between lattices.

4.3. Mass conservation

As discussed above, information has to be reduced/augmented when passing

from one lattice to the other, because the two involved models are 1D or 2D re-

spectively. This transformed information impacts the macroscopic variables on

the two lattices through the boundary conditions on the coupling interfaces (see

Sections 3.1 and 3.2 above). For this reason, one can expect mass conservation

to be aﬀected by the coupling scheme.

The left plot of ﬁgure 12 shows the ﬂuid mass in the Gaussian drop simu-

lation. Small variations of mass can be seen locally (less than 1% of the total

ﬂuid mass), but no systematic loss of mass occurs. We conclude that spurious

18

Figure 11: Mean relative deviation of the coupled (SW-FS) and free-surface model compared

to the shallow water solution, in the case of the Gaussian drop test.

19

0 1 2 3 4 5 6 7

Time [s]

0.0

0.2

0.4

0.6

0.8

1.0

1.2

M/ M 0

cou pled SW

cou pled FS

SW-FS

8

0 1 2 3 4 5 6 7 8

Time [s]

0.1 9

0.2 0

0.2 1

0.2 2

0.2 3

Mass [LB]

FS

SW

sw-FS

Figure 12: (left) Total mass of ﬂuid during a simulation for the Gaussian drop test. Continuous

line shows the total (SW + FS) ﬂuid mass Mdivided by the initial mass M0. The dotted

and dashed lines show the repartition of ﬂuid mass into shallow-water and free-surface parts

respectively. (right) Total mass of ﬂuid contained inside the overlap zone for three distinct

simulations: pure SW, pure FS and SW-FS systems.

mass gain or loss introduced by the coupling scheme is negligible. Simulations

of pure shallow water, pure free-surface and coupled SW-FS systems have been

performed in order to compare the evolution of the mass of ﬂuid contained inside

the overlap area (even though for pure systems no special treatment is applied

in this area). This way, mass evolution at the SW-FS transition zone can be

compared to pure systems. The right plot ﬁgure 12 shows that this diﬀerence

is comparable to the error previously found for the water level in the same

problem.

5. Performance

The free-surface model is computationally much more expensive than the

shallow water model, mainly because of the representation of a 2D domain, as

opposed to 1D in the shallow water case. Figure 13 illustrates the dependence

of the total execution time on the relative length of the free-surface domain,

as a fraction of the total domain. Note that our code has not been optimized

and simply follows the description of the coupling model given here. Thus,

the performance results depicted below constitute an initial investigation, as

the coupling overhead may reveal sensitive to the speciﬁc implementation used.

Consistently with our expectations for the coupled model, the execution time

is substantially reduced when a larger part of the domain is represented by the

shallow water system. It is important to stress here that for sake of implemen-

tation simplicity, the shallow water lattice is in fact used over the whole domain,

although its values outside the domain deﬁned for shallow water simulations are

ignored and never involved in computations of physical quantities. As one can

20

deduce from this ﬁgure, it is not worthwhile using the coupled system if the do-

main fraction represented by the free-surface model is larger than about 75 %, as

in this case the overhead due to the coupling algorithm weighs out the reduction

of computational cost obtained by the shallow water scheme. This condition is

not expected to cause any problems in practice, since the free-surface simulation

is intended to be concentrated on areas of restricted size, with highly resolved

local ﬂow structures, while the shallow water model should be applied to areas

of extended lengths (LSW >> λ), where wave or current propagation is the

central investigated phenomenon.

Figure 13: Ratio of execution time between coupled model pure free-surface, for diﬀerent values

of the fraction LF S of the domain simulated by the free-surface model. As a rough observation,

when less than 75 % of the domain is simulated by free-surface, the coupling scheme becomes

worthwile in terms of performance. Note that in our software implementation, for simplicity,

the shallow-water lattice covers the whole domain, though its values are ignored at locations

where free-surface domain is deﬁned.

6. Conclusion

The proposed coupling scheme allows us to signiﬁcantly reduce the compu-

tational time compared to a pure free-surface approach. Its accuracy is found

to be satisfying both in the case of ﬂows dominated by current transmission, as

well as for ﬂows dominated by wave transmission, as long as the ﬂow conditions

at the coupling interface satisfy the assumptions of the shallow water model.

21

Time interpolation should be considered in the future as a possible improve-

ment of the current model, as well as an implicit scheme to solve the coupling

interface and reduce the length of the overlap zone. Also, for the use in large

scale simulations, a parallel implementation of our coupling scheme and its soft-

ware implementation should be investigated. While both shallow water and

free-surface models are proven to be eﬃciently parallelizable, the overhead of

the coupling scheme could have a negative impact on the overall performance,

or ability to achieve eﬃcient load balancing.

A limitation of the model is that one should carefully ensure that the shallow

water lattice always simulates ﬂows with Froude number less than unity, since

it yields spurious viscous terms in regimes with F r close to 1 (see Section 2.1).

Thus, regions with large Froude number, including transitions to these regions,

must be simulated within the free-surface part of the domain.

Finally, a natural generalization of our numerical scheme will include its

adaptation to a coupling between 1D or 2D shallow water and 3D free-surface.

In this case, a proper velocity proﬁle will need to be formulated, not only along

the ﬂuid height, but also in the transversal axis. The main ideas as developed

here will apply.

22

[1] S. Succi, The Lattice Boltzmann Equation, For Fluid Dynamics and Be-

yond. Oxford University Press, 2001.

[2] S. Chen and G. Doolen, “Lattice Boltzmann methods for ﬂuid ﬂows,” Annu.

Rev. Fluid Mech., vol. 30, p. 329, 1998.

[3] B. Benes, “Real-Time Erosion Using Shallow Water Simulation,” in Work-

shop in Virtual Reality Interactions and Physical Simulation "VRIPHYS"

(2007) (J. Dingliana and F. Ganovelli, eds.), The Eurographics Association,

2007.

[4] G. Simpson and S. Castelltort, “Coupled model of surface water ﬂow, sed-

iment transport and morphological evolution,” Computers & Geosciences,

vol. 32, no. 10, pp. 1600 – 1614, 2006.

[5] Y. Li, Y. Jin, Y. Yin, and H. Shen, “Simulation of shallow-water waves

in coastal region for marine simulator,” in Proceedings of The 7th ACM

SIGGRAPH International Conference on Virtual-Reality Continuum and

Its Applications in Industry, VRCAI ’08, (New York, NY, USA), pp. 15:1–

15:5, ACM, 2008.

[6] C. W. Hirt and B. D. Nichols, “ Volume of ﬂuid /VOF/ method for the

dynamics of free boundaries,” Journal of Computational Physics, vol. 39,

pp. 201–225, Jan. 1981.

[7] A. Parmigiani, J. Latt, M. B. Belgacem, and B. Chopard, “A lattice Boltz-

mann simulation of the Rhone river,” Int. J. Mod. Phys. C, vol. 24, no. 11,

p. 1340008, 2013.

[8] I. Simonetti, L. Cappietti, H. E. Safti, and H. Oumeraci, “3D numeri-

cal modelling of oscillating water column wave energy conversion devices :

current knowledge and OpenFOAM R

implementation,” no. March 2016,

pp. 497–504, 2015.

[9] Y. Thorimbert, J. Latt, L. Cappietti, and B. Chopard, “Virtual wave ﬂume

and oscillating water column modeled by lattice boltzmann method and

comparison with experimental data,” International Journal of Marine En-

ergy, vol. 14, pp. 41 – 51, 2016.

[10] B. Chopard, P. Luthi, A. Masselot, and A. Dupuis, “Cellular automata and

lattice boltzmann techniques: An approach to model and simulate complex

systems,” Advances in Complex Systems, vol. 5, no. 2, pp. 103–246, 2002.

http://cui.unige.ch/∼chopard/FTP/CA/acs.pdf.

[11] B. Chopard and M. Droz, Cellular Automata Modeling of Physical Systems.

Cambridge University Press, 1998.

[12] S. Harris, An Introduction to the Theory of the Boltzmann Equation. Dover

Publications, 1971.

23

[13] A. Peters, S. Melchionna, E. Kaxiras, J. Latt, J. Sircar, M. Bernaschi,

M. Bison, and S. Succi, “Multiscale simulation of cardiovascular ﬂows on

the IBM Bluegene/P: Full heart-circulation system at red-blood cell reso-

lution,” in Proceedings of the 2010 ACM/IEEE International Conference

for High Performance Computing, Networking, Storage and Analysis, SC

’10, (Washington, DC, USA), pp. 1–10, IEEE Computer Society, 2010.

[14] X. He and L.-S. Luo, “Theory of the lattice Boltzmann method: From the

Boltzmann equation to the lattice Boltzmann equation,” Physical Review

E, vol. 56, no. 6, pp. 6811–6817, 1997.

[15] P. J. Dellar, “Bulk and shear viscosities in lattice boltzmann equations,”

Phys. Rev. E, vol. 64, 2001.

[16] P. L. Bhatnagar, E. P. Gross, and M. Krook., “A model for collision pro-

cesses in gases,” Phys. Rev., vol. 94, pp. 511–525, 1954.

[17] S. Hou, J. Sterling, S. Chen, and G. Doolen, “A lattice boltzmann subgrid

model for high reynolds number ﬂows,” Fields Institute Communications,

vol. 6, pp. 151–166, 1996.

[18] R. Salmon, “The lattice boltzmann method as a basis for ocean circulation

modeling,” Journal of Marine Research, vol. 57, no. 3, pp. 503–535, 1999.

[19] J. Zhou, “A lattice boltzmann model for the shallow water equations,”

Computer Methods in Applied Mechanics and Engineering, vol. 191, no. 32,

pp. 3527 – 3539, 2002.

[20] P. van Thang, B. Chopard, L. Lefèvre, D. A. Ondo, and E. Mendes, “Study

of the 1D lattice Boltzmann shallow water equation and its coupling to

build a canal network,” Journal of Computational Physics, vol. 229, no. 19,

pp. 7373–7400, 2010.

[21] W. Graf and M. Altinakar, Hydraulique ﬂuviale: écoulement et phénomènes

de transport dans les canaux à géométrie simple. Traité de Génie Civil,

Presses polytechniques et universitaires romandes, 2000.

[22] X. He, Q. Zou, L. Luo, and M. Dembo, “Analytic solutions of simple ﬂows

and analysis of nonslip boundary conditions for the lattice boltzmann bgk

model,” Journal of Statistical Physics, vol. 87, pp. 115–136, 1997.

[23] C. Korner, M. Thies, T. Hofmann, N. Thürey, and U. Rüde, “Lattice boltz-

mann model for free surface ﬂow for modeling foaming,” Journal of Statis-

tical Physics, vol. 121, no. 1-2, pp. 179–196, 2005.

[24] N. Thürey and U. Rüde, “Stable free surface ﬂows with the lattice boltz-

mann method on adaptively coarsened grids,” Computing and Visualization

in Science, vol. 12, no. 5, pp. 247–263, 2009.

24

[25] C. F. Janssen, S. T. Grilli, and M. Krafczyk, “On enhanced non-linear free

surface ﬂow simulations with a hybrid lbm–vof model,” Computers and

Mathematics with Applications, vol. 65, no. 2, pp. 211 – 229, 2013. Special

Issue on Mesoscopic Methods in Engineering and Science (ICMMES-2010,

Edmonton, Canada).

[26] M. P. Daou, E. Blayo, A. Rousseau, O. Bertrand, T. Pigeonnat, C. Coulet,

and N. Goutal, “Coupling 3D Navier-Stokes and 1D shallow water models,”

Simhydro 2014, Jun 2014, Sophia Antipolis, France, 2014.

[27] N. Thürey, U. Rüde, and M. Stamminger, “Animation of Open Water Phe-

nomena with coupled Shallow Water and Free Surface Simulations,” Pro-

ceedings of the 2006 ACM SIGGRAPH/Eurographics symposium on Com-

puter animation, pp. 157–164, 2006.

[28] E. Miglio, S. Perotto, and F. Saleri, “Model coupling techniques for free-

surface ﬂow problems: Part i,” vol. 63, 11 2005.

[29] E. Miglio, S. Perotto, and F. Saleri, “Model coupling techniques for free-

surface ﬂow problems: Part II,” Nonlinear Analysis-theory Methods & Ap-

plications - NONLINEAR ANAL-THEOR METH APP, vol. 63, 2005.

[30] G. Steinebach, S. Rademacher, P. Rentrop, and M. Schulz, “Mechanisms

of coupling in river ﬂow simulation systems,” Journal of Computational

and Applied Mathematics, vol. 168, no. 1, pp. 459 – 470, 2004. Selected

Papers from the Second International Conference on Advanced Computa-

tional Methods in Engineering (ACOMEN 2002).

[31] J. Southard, “Flow in Channels,” Special Topics: An Introduction to Fluid

Motions, Sediment Transport, and Current-generated Sedimentary Struc-

tures (Lecture Notes), pp. 83–156, 2006.

[32] H. Bonakdari, F. Larrarte, L. Lassabatere, and C. Joannis, “Turbulent

velocity proﬁle in fully-developed open channel ﬂows,” Environmental Fluid

Mechanics, vol. 8, no. 1, pp. 1–17, 2008.

[33] Q. Zou and X. He, “On pressure and velocity boundary conditions for the

lattice Boltzmann BGK model,” Phys. Fluids, vol. 9, pp. 1591–1598, 1997.

[34] P. Kundu and I. Cohen, Fluid Mechanics. Academic Press, 4 ed., 2008.

[35] M. Ben Belgacem, B. Chopard, J. Latt, and A. Parmigiani, “A framework

for building a network of irrigation canals on a distributed computing en-

vironment: A case study,” Journal of Cellular Automata, vol. 9, no. 2-3,

pp. 225–240, 2014.

25