-
THE LATTICE BOLTZMANN EQUATION:THEORY AND APPLICATIONS
R. BENZIa, S. SUCCIb and M. VERGASSOLACaDipartimento di Fisica,
Universit Tor Vergata, Via E. Carnevale, 1-00173 Rome, italy
hiBM European Center for Scientific and Engineering Computing,
Via Giorgione 159, 1-00147 Rome,Italy
CCNRS Observatoire de Nice, B. P. 229, F-06304 Nice Cedex,
France
NORTH-HOLLAND
-
PHYSICS REPORTS (Review Section of Physics Letters) 222, No.
3(1992)145197. North-Holland PHYSICS REPORTS
The lattke Boltzmann .equation: theory and applications
R. Benzia, S. Succi and M. Vergassolac~Diparcimentodi Fisica,
Universit Tor Vergata, Via E. Carnevale, 1-00173 Rome, ItalybJBM
European Center for Scientific and Engineering Computing, Via
Giorgione 159, 1-00147 Rome, ItalyCCNRS Observatoire de Nice, B.P.
229, F-06304 Nice Cedex, France
Received May 1992; editor: I. Procaccia
Contents:
1. Introduction 147 4.5. The limit of zero viscosity 1722.
Lattice gas dynamics and the Boltzmann approximation 148 4.6.
Numerical efficiency 173
2.1. Lattice symmetries and collision rules 148 5. Applications
1772.2. The equilibrium distribution 150 5.1. Two-dimensional
homogeneous turbulence 1772.3. Hydrodynamic equations 152 5.2.
Flows in complex geometries 1792.4. The Boltzmann approximation 153
6. Generalizations of the method 183
3. Some rigorous results 155 6.1. Multiphase flows 1833.1.
Introduction 155 6.2. Magnetohydrodynamics 1843.2. A model with
stochastic stirring 156 6.3. Subgnd scale modelling 1863.3.
Spurious invariants 161 6.4. Boltzmann equation in non-uniform
lattices 190
4. The lattice Boltzmann equation 162 7. Conclusions 1944.1.
From the boolean microdynamics to the Boltzmann Appendix A 194
equation 162 Appendix B 1954.2. Lattice Boltzmann equation with
enhanced collisions 164 References 1964.3. Macrodynamic equations
1664.4. Hydrodynamic behaviour of the lattice Boltzmann
equation 169
Abstract:The basic elements of the theory of the lattice
Boltzmann equation, a special lattice gas kinetic model for
hydrodynamics, are reviewed.
Applications are also presented together with some
generalizations which allow one to extend the range of
applicability of the method to a numberof fluid dynamics related
problems.
Elsevier Science Publishers B.V.
-
1. Introduction
Over the last decades, there has been a growing consensus on the
fact that grand challenges can beencountered in classical areas of
macroscopic physics, even if the basic equations have been known
for along time. Fluid mechanics is one such area. The main reason
is that hydrodynamic flows can exhibit anextremely rich variety of
complex phenomena; so rich that, in many respects, fluid flows can
still beconsidered a paradigm of complexity in natural systems.
Such a complexity can be associated to a set ofnon-linear partial
differential equations, the NavierStokes equations, which are,
ultimately, nothingbut a statement of mass and momentum
conservation. The NavierStokes equations are universal in thesense
that their structure is fairly independent of the details of the
underlying microscopic dynamics,which only affect the numerical
values of the transport coefficients. This universality of the
equationsplays an invaluable role in trying to devise stylized
microdynamical models which, while giving up asmuch irrelevant
details as possible, still retain the basic ingredients of the
physics of fluids. Lattice gasmodels belong precisely to such a
class of models. The common aim of lattice gas models consists in
thedefinition of a fictitious simplified microworld which allows
one to recover, in the macroscopic limit, theequations of fluid
dynamics. By macroscopic limit, one means that the equations
describing theevolution of the large scales differ from
NavierStokes equations by spurious terms, become vanishing-ly small
as the ratio between the mean free path and the scale length is
decreased.
Hystorically, the first step in the direction was performed by
Broadwell [9, 30], with the discretevelocity models where the
velocity is discrete, but space and time are still continuous.
Subsequently, amaster equation with a continuous time, and leading
to sound waves, was introduced by Kadanoff andSwift [46]. In 1973,
Hardy, de Pazzis and Pomeau [32, 33] defined a fully discrete model
(HPP) on asquare lattice allowing the observation of typical
features of fluid flows, such as sound waves. However,due to a lack
of isotropy of the lattice, the HPP model reproduces neither the
non-linear term nor thedissipative term of the NavierStokes
equations. This difficulty was first removed for the
two-dimensional case by Frisch, Hasslacher and Pomeau [27]and then
for the three-dimensional case bydHumires, Lallemand and Frisch
[42]. Once the correct symmetries of the lattice are obtained,
onehas to define the evolution rules. Here, two possibilities can
be chosen: lattice gas automata and thelattice Boltzmann
equation.
In lattice gas automata, the variables are the boolean
populations, indicating the presence or theabsence of particles in
the link of the lattice- The evolution is essentially defined by a
set of collisionrules, possessing suitable conservation laws. The
passage to the macroscopic world is performedthrough an average
over space and!or time. Since their evolution only involves logical
operations,lattice gas automata have disclosed a markedly
innovative simulation strategy, whereby floating-pointcomputing is
replaced by boolean computing. Moreover, due to the locality of the
updating rules, theyare ideal candidates for massively parallel
processing. Lattice gas automata have been used for thesimulation
of NavierStokes equations and other related problems, such as
two-dimensional magneto-hydrodynamics, three-dimensional complex
flows, multispecies and multiphase systems, and Burgersmodel (see
refs. [5,28] and references therein).
Besides their relevance to hydrodynamics, lattice gas automata
are suitable to analyze fundamentalissues in statistical mechanics,
such as the long-time-tail problem [23,25]. In particular, one
can
147
-
148 R. Benzi et a!., The lattice Boltzmann equation: theory and
applications
consider the Boltzmann approximation of the dynamics, by making
the same assumption leading to theBoltzmann equation in continuous
kinetic theory: particles entering a collision have no
correlations.The latter assumption can be rigorously justified in
the case of a lattice gas automaton with stochasticstirring
[19].With respect to the dynamics without stirring (which is the
one used in practice), bycomparing the measured value of the
viscosity with the theoretical predictions, McNamara and
Zanetti[53] remarked that hydrodynamic behaviour is recovered even
with very small lattices. In theBoltzmann equation, the evolution
is defined directly in terms of the ensemble averaged
populationswhich, being real variables, do not lend themselves to
the possibility of boolean computing. On theother hand, the
advantage is the elimination of statistical noise usually affecting
lattice gas automatasimulations, while retaining the same ideal
amenability to parallel computing. Actually, in ref. [37],it
isshown that one can further simplify the model by using the
linearized form of the collision operator.Finally in ref.
[39],starting from this linearized form, it is proved that one can
define a Boltzmannequation, called lattice Boltzmann equatioi~with
enhanced collisions, independently of any underlyingboolean
microdynamics. The collisions are defined by a matrix, whose
structure is essentially dictatedby symmetry arguments. The
resulting numerical free parameters govern the value of the
transportcoefficients, which can be easily tuned. It can be shown
that the macrodynamics of the model, undersuitable conditions,
converges to NavierStokes equations [26,69]. The scheme has proven
itsnumerical efficiency in the simulation of two-dimensional
hydrodynamics [2]. Moreover, it lends itselfto some interesting
generalizations, such as magnetohydrodynamics [661,two-phase flows
[31], theanticipated vorticity scheme for the subgrid scales
parameterization of two-dimensional turbulence [3]and Burgers
model.
2. Lattice gas dynamics and the Boitzmann approximation
2.1. Lattice symmetries and collision rules
Let us begin with the description of the model (FHP) introduced
by Frisch, Hasslacher and Pomeau[27]for two-dimensional fluid
dynamics. Consider a triangular lattice with unit lattice spacing,
as shownin fig. 1. In each node there are six links (denoted by
c~{i = 1,. .. , 6)) to its nearest neighbours.Particles of unit
mass and velocity move along these links in such a way that they
reside in the nodes atinteger times. An exclusion principle governs
the occupation ofthe links: no more than one particle canoccupy at
a given time a given link. The state of a node is then a six-bit
boolean variablen = {n1, i = 1,. . . , 6), where the bit n1
indicates the presence or the absence of a particle in the ith
link.The evolution of the system from time t to time t + 1 (the
natural time of the lattice is taken as unity)can be decomposed in
two phases: propagation and collision.
The propagation is very simple. Each particle is displaced in
the direction of its velocity:n~(r)~n1(r + c1), where r denotes the
sites of the lattice.
The collisions represent the most delicate part of the
evolution. In order to reproduce NavierStokesequations on the
macroscopic scales, it is essential to impose mass and momentum
conservation,characteristic of a real fluid (in one-speed models,
which are the only ones considered here, energyconservation is
obviously coinciding with mass conservation). At the same time, it
is necessary to avoidthe presence of spurious invariants. Consider,
for example, binary head-on collisions (see fig. 2). If(i, + 3)
denotes the couple of links occupied, mass and momentum
conservation restrict the possiblefinal states to (i + 1, i + 4)
and (i 1, i + 2). One can decide either to choose always one
possibility or
-
R. Benzi et a!., The lattice Boltzmann equation: theory and
applications 149
Fig. 1. Elementary cells of the FHP lattice. Fig. 2. A binary
collision in the FHP lattice.
to make a random or pseudo-random choice, e.g. dependent on the
parity of time. Despite mass andmomentum conservation, a model with
only binary collisions has a macroscopic dynamics
completelydifferent from the one described by NavierStokes
equations. This is due to the presence of a spuriousinvariant: the
difference of particle numbers in any pair of opposite directions.
The simplest remedy tothis problem is the introduction of triple
collisions and/or rest particles, as discussed in ref. [28].
Let us now consider the three-dimensional problem. In this case,
the difficulty is that no Bravaislattice, having enough symmetries
to reproduce hydrodynamics, exists. The way out of this problem
isto move to a higher-dimensional lattice. A suitable
four-dimensional lattice, the face-centered hy-percubic (FCHC), was
in fact found in ref. [42].The nodes (x1, x2, x3, x4) of the
lattice satisfy thecondition: x1 + + x3 + x4 even, where the x.s
are integer numbers. In each node there are 24 links toits nearest
neighbours (indicated as c. {i = 1,... , 24)) of length
V~.Propagation and collisions aredefined in the same spirit as in
FHP.
In the applications to three- (two-)dimensional hydrodynamics,
periodic boundary conditions areimposed along the x4 direction in a
layer of thickness 2 (and along the x3 direction). The resulting
latticeis shown in fig. 3. The thick black lines have a different
weight in the sense that two particles canpropagate along these
directions, according to the two values of the fourth component of
the velocity
V4=OV4 =+l
Fig. 3. Three-dimensional projection of the elementary cell of
the FCHC lattice. The solid lines carry two particles, having speed
v4 = 1along thefourth dimension.
-
150 R. Benzi et a!., The lattice Bo!tzmann equation: theory and
applications
(c,)~= 1. It can be shown that the conserved fourth component of
momentum behaves as a passivescalar not influencing the other three
[28].For subtle effects associated with the presence of
spuriousinvariants generated by the periodicity imposed on the
fourth direction, see refs. [6,7].
A general class of lattices suitable for lattice gas models,
including FHP and FCHC, can be defined.We do not list the
definition of this class and the resulting properties discussed in
ref. [28],which will bereferred to whenever needed. One of the main
hypotheses to be recalled is semi-detailed balance. Lets = {s~,i =
1,. . . , b } and s = {s ~, i = 1,. . . ,b } denote the state of a
node before and after thecollisions respectively, with b the number
of links per node, and let
A(s+ s) (1)
denote the site-independent transition probability from s to s.
An obvious condition ofnormalization is~ A(ss. s) = 1, Vs. The
semi-detailed balance condition reads as
~.A(s~.s)=1, Vs. (2)
This equality implies that the situation where all the states
have the same probability is stationary withrespect to collisions.
Recently, a new class of lattice gas automata, where (2) is not
satisfied [21],hasbeen introduced. As it will become apparent in
the following, (2) is essential for the results we aregoing to
summarize and, in particular, for the arguments developed to prove
the convergence of themicrodynamics to NavierStokes equations.
Nevertheless, the new models defined in ref. [21]show agood
empirical agreement with hydrodynamics. The elimination of the
semi-detailed balance conditionleads to the interesting consequence
that the viscosity is no longer forced to be positive [34],but
canassume also negative values [35].
2.2. The equilibrium distribution
As in statistical mechanics, it is convenient to take a
probabilistic point of view. The classicalprocedure is: (i)
definition of the phase space, (ii) introduction within this set of
a statistical ensembleof initial conditions with a given
probability distribution, (iii) evolution of the probability
distributionfrom the Liouville equation, (iv) calculation of the
average values using the evolved probabilitydistribution.
Specifically, let ~?be a finite lattice. The phase space F is
defined by all the possible statess(.) = {s1(r)}, where i = {1,. .
. , b) and r denotes the nodes of the lattice. An initial
probabilitydistribution P(O, s(.)) is assigned in F. The evolution
of the probability distribution P is governed by theprobabilistic
equivalent of the Liouville equation in statistical mechanics
P(t+1, Efs())= ~ P(t,s(.)) LI A(s(r)-*s(r)). (3)rESt
Here, A(s * s) has been defined in (1) and & is the
streaming operator whose action is.~:n1(r)i*n1(r+ c1). The average
values of an observable f(s(~))can be calculated as (f(t)~=~s(~)
f(s(-))P(t, s(.)). In particular, one can consider the
quantities
N1(t,r)= (n1(t,r)) , p=~N~, J(t,r)anpv(t,r)=~N,.c~, (4)
which correspond to the average population, the density and the
mass current.
-
R. Benzi et a!., The lattice Boltzmann equation: theory and
applications 151
It is remarkable that the general class of models mentioned in
section~2.1 admits the equivalent ofthe Maxwell states in
statistical mechanics and that a H-theorem can be proved. Indeed,
as shown byHnon in appendix F of ref. [28], from the semi-detailed
balance condition it follows that the localentropy function
S(r) ~ P(t, s(r)) log P(t, s(r)) (5)s(r)
can be defined. The function never decreases under the effect of
collisions. The entropy is constant ifand only if the probability
distribution is a Boltzmnn distribution, i.e. if P is completely
factorized overthe links of the site,
b N~(1N~)~. (6)
Here, N1 is the average population defined in (4).By definition,
the equilibrium distribution peq is a time-independent solution of
eq. (3). The spatial
homogeneity and the H-theorem suggest to look at p~in a fully
factorized form, i.e. peq(5(.)) =Hr P(s(r)), with P(s(r)) given by
(6). Indeed, it can be proved that such a solution exists and that
thecorresponding ~ has the FermiDirac expression
N~=[1+exp(h+q.c~)]1. (7)
The positive sign in front of the exponential reflects the
fermionic nature of the particles due to theexclusion principle.
The quantities h and q are the Lagrange multipliers associated with
the conservedquantities. In principle, they can be obtained from
the definition of the density and the mass current. Inthe case of
small Mach numbers (I v 4 c,, where c~is the speed of sound), one
can exDlicitlv compute hand q perturbatively in v. Thanks to the
mirror symmetry of the lattice, ~ is invariant under
thetransformation v -~ v and c
1 ~ c,. The scalar function h contains only even powers of v and
thevector function q only odd powers of v, i.e. h = h0 + h2(v . v)
+... and q = q1v +.... Let us nowsubstitute this last expression
into (7). For the general class of models defined in ref. [28]the
followingrelations hold:
C. 0, ~ Cj~Cjp= (bc2ID)as . (8)
Here, b is the number of links per site, c = c. and D is the
dimension of the lattice. Using (8), onefinally obtains
= p/b + (PD/bC2)VaCja + pG( p)Qj~pv~vp+ 0(v3), (9)
where
G(p) = (D212bc4)(b 2p)/(b P) Qiap = CiaCip (c2/D)ap . (10)Let us
remark that in the case of the FCHC lattice, for the calculation of
three dimensionalcomponents, D has to be taken equal to 4.
-
152 R. Benzi et al, The lattice Boltzmann equation: theory and
applications
2.3. Hydrodynamic equations
In this section, the macrodynamic equations and the assumptions
necessary to recover the NavierStokes equations will be discussed.
For this purpose, it is convenient to introduce a
multiscaleformalism where space and time derivatives are expressed
in terms of multiscale variables,
= ear, , a1 = + + . (11)Here, e is a small parameter which may
be identified with a local Knudsen number: e IVFIF, where 1is the
particle mean free path and F a generic macroscopic field. The
physical meaning of (11) is thatvarious phenomena (e.g., inertial
propagation, dissipation) take place at different time scales.
Since our aim is to describe transport phenomena triggered by
weak departures from localequilibrium, it is convenient to
decompose the average population N1 as
N, = N~(p, v) + N~(Op, Ov), (12)where N~ is the local
equilibrium population, while N~ is the non-equilibrium
contribution, which issupposed to be 0(s). In particular, one is
interested in the first term of the expansion linearlydependent on
the gradients of the equilibrium fields, p and J. By using the
symmetry properties of thegeneral class of lattices defined in ref.
[281,it is possible to show that, at the first order in e, the
gradientlip does not contribute to N~ and the only contribution by
a comes from the product with thesymmetric tensor Qjap~ Thus ~ne~ =
ifr(p)Q.~aJ+ O(s2), where ~1i(p)is still to be determined.
Mass and momentum conservation can be expressed in the following
form:
~N~(x+c1,t+1)~N,(x,t)=0, (13)
~N,(x+c~,t+1)c~~N,(x,t)e1=0. (14)
In the limit of small Knudsen numbers, one can express the
differences by a series of time and spacederivatives. By using the
expansion (11) and equating terms of the same order in s and ~2,
one finallyobtains the partial differential equations
a,p+li.J=o, (15)
tJa+dp(pG(p)Tapy~vyv&~ a7(pv8)]_0, (16)
where
Tap.y~= ~ ctacjpQj~a. (17)
Note that in (16) we have used the expression (9) for the
equilibrium population. It follows thathereafter we shall restrict
to the small Mach number region.
Equation (15) is the continuity equation. As usual, in the limit
of small Mach numbers the density
-
R. Benzi et al., The lattice Boltzmann equation: theory and
applications 153
can be considered constant except for the fluctuations in the
pressure term. Under these conditions, eq.(15) reduces to the
divergence free condition (li. v) = 0.
Let us now consider eq. (16). In order to recover Euler and
NavierStokes equations, the isotropy ofthe fourth-order tensor
Tapy& is crucial. From the symmetry properties of the class of
lattices defined inref. [28],it follows that the most general form
of an isotropic fourth-order tensor is
bc4 / 2Tap.,,8 = D(D + 2) ~ + ~a~P7 D ~ap
6y8). (18)
The tensor has indeed this expression in the case of FHP and
FCHC lattices. In the case of the squarelattice, Tapy
8 has not the form (18) and this explains why the lattice is not
suitable to simulatehydrodynamic phenomena. Substituting (18) in
(16), one obtains:
atJa + pPap = apSap , (19)where
= p(c2ID)(1 g(p)v2Ic2)e5~p+ pg(p)v~vp
(20)Sap = ~[aJp + (2/D)(t3yJy)t5ap].
One thus obtains the NavierStokes equations, apart from the
presence of a factor in the advectiveterm
g(p) = [D/(D + 2)](b 2p)/(b p). (21)This difficulty can be
overcome because in the limit of small Mach numbers the factor g(p)
reduces to aconstant. This factor can be easily rescaled out by the
transformation
t*tg(p), vtv/g(p). (22)The viscosity ii is equal to
p = [bc4/D(D + 2)]~fr(p) c212(D + 2). (23)
The first contribution, ~ p), is positive and depends on the
collision details through the function i/i,while the second, v~,is
negative and is essentially due to the discreteness of the lattice
[34].2.4. The Boltzmann approximation
Let n.(x, t) be the boolean variable denoting the number of
particles in x at time t for the state i (for
rest particles, c1 = 0). The evolution equation for n. is
n~(x+ c1, t + 1) n1(x, t) = 41(n) , (24)
-
154 R. Benzi et a!., The lattice Boltzmann equation: theory and
applications
where 4(n) is the contribution of collisions involving products
ofthe n.s. Let us now consider N1(x, t),obtained as the ensemble
average of the boolean n.(x, t). When the evolution equation (24)
isaveraged, a hierarchy of non-closed equations is generated.. With
respect to the usual BBGKYhierarchy obtained in the continuous case
with two-body collisions [12],the following differences arise:the
discrete case is simpler because there are only b degrees of
freedom per point but, at the same time,the analysis of the
collisions is complicated by the fact that, in the most general
case, b particles areinvolved. Whatever order one goes to, there
are always higher-order correlations appearing and thesystem
remains unsolvable (for more details on the effects of correlations
see ref. [67]).In order towrite an evolution equation for the N,s,
one has to close this hierarchy by some kind of
statisticalassumption on the high-order correlations. The simplest
way to obtain a kinetic equation (a closedequation for the N~s)is
to use the Boltzmann approximation of molecular chaos: neglect
correlationsbetween the particles entering a collision. This,
assumption implies that all the expectation valuesfactorize. The
resulting Boltzmann equation is
N,(x + c~,t + 1) N,(x, t) = 4(N) . (25)
Due to the factorization of the expectation values, the
collision operator 4(N) is obtained from theboolean collision
operator 4(n) by simply replacing the boolean populations with the
correspondingaverage populations. The expression of 4(N) in terms
of the transition probabilities A(s ~s) is
4(N) = ~ (s~ s1)A(s ~s) Ill N~(1 N)~1~~. (26)There are two main
consequences of the Boltzmann approximation.
The first is the irreversible approach to equilibrium which
immediately follows from the H-theoremdiscussed in section 2.2.
The second is an explicit derivation of the value of the
viscosity. One has to determine the functionli( p) used in section
2.3 in the expression N~ = ~ P)Qiap a J,
9. This can be done by expanding at thefirst order in s and v
the finite differences in the lhs of (25) and using the explicit
Boltzmann form forthe collisions in the rhs. By using the equations
for the conserved quantities to express time derivativesin terms of
space derivatives one finally obtains
(DIbC2)Qiap 4!1(P) ~ S4
11Q ja~= 0. (27)
Here, the matrix is the linearized collision matrix
a4(N)!aN~,,evaluated at the zero velocityequilibrium state N1 =
p/b. The explicit expression of the matrix in terms of the
transitiQn probabilitiesof the automaton was found in ref.
[34].
From (27), assuming the isotropy of the fourth-order tensors,
one can obtain a closed expression forthe contribution v~to the
viscosity,
2 ~c ian ~ia~= D + 2 ~ijap Qtap~4jQjap
Once the viscosity is known, the Reynolds number R associated to
a given flow can be easilyestimated. The Reynolds number is by
definition the ratio between the characteristic scale 1~times
the
-
R. Benzi et a!., The lattice Boltzmann equation: theory and
applications 155
characteristic velocity v0 of the flow and the kinematic
viscosity. Taking care of the rescaling (22)necessary to recover
NavierStokes equations from (19), one obtains R = l0v0g(p)/v(p).
Introducingthe Mach number M = v0/c,, one finally gets
R=M10R*(p), (29)where R*(p) = c,g(p) Iv( p) contains all the
information on the lattice dynamics.
In the limit of large Reynolds numbers, a huge range of scales
is excited by the nonlinear energytransfer. Let
1d denote the dissipative length, i.e. the length where viscous
effects become comparableto nonlinear effects. In a spectral
simulation all the modes at least up to the inverse of 1d have to
beresolved. In the case of lattice gas, one has to check that the
wavelength of all relevant scales is muchlarger than the lattice
spacing. According to the 1941 Kolmogorov [48]and the
BatchelorKraichnan[1,49] theories of three- and two-dimensional
turbulence *), in the limit of large Reynolds numbers, thescale d
is related to the inertial scale l~as = CI
0Rm (m = 1/2 in D =2 and m =3/4 in D =3). By
using (29), one obtains
ld = C(MR*)~Ri2 in2D, ld = C(MR*)~R~~4in 3D. (30)In both cases,
in the limit of R~ ~, the condition of scale separation between 1d
and the lattice spacing
is satisfied. The validity of lattice gas models for
high-Reynolds number simulations is then ensured.
3. Some rigorous results
3.1. Introduction
In this section, we review some rigorous results. The reader not
interested can skip this section,without compromising further
reading of the paper.
A discrete kinetic equation of the form
N,(x+c1, t+ 1)N,(x,t)=4(N), (31)
can be rigorously investigated from various points of view.
First of all, one can examine the validity of(31) in describing
ensemble averages of the underlying lattice gas dynamics. The
corresponding issue incontinuous space is the classical problem of
the validity of kinetic equations. On the other hand, moreclosely
to the spirit of this report, one could take (31) as the starting
equation and study itsconvergence, on suitable space-time scales,
to the incompressible NavierStokes limit. The correspond-ing
problem in the case of a real fluid has a long tradition in the
literature dating back to the papers byHilbert [40]and Enskog
[22].
Recently, De Masi et al. [19]have investigated both problems in
the case of the Hardy, de Pazzisand Pomeau (HPP) square lattice
[32,33]. Concerning the first issue, a new feature appears in
thedynamics of the model with respect to the original formulation:
the stochastic stirring. This operation
*) We omit any discussion on the possible corrections due to
intermittency (29,561 because we are just interested in estimating
orders ofmagnitude.
-
156 R. Benzi et al., The lattice Boltzmann equation: theory and
applications
consists of random exchanges between neighbouring cells, with
the constraint of momentum conserva-tion. The stochastic stirring
has been designed to prevent the build-up of correlations due
tointeractions, which could destroy the validity of the Boltzinann
approximation. The need to enhancestochasticity in order to
rigorously prove the limit to the Boltzmann equation is not limited
to the HPPmodel, but it seems a general requirement for all lattice
gas automata. The stirring process, while usefulfrom a theoretical
point of view, has the practical drawback of increasing the
kinematic viscosity. Byintroducing the stochastic stirring
operation, it is possible. to prove that the kinetic equation (31),
in thecontinuous version, correctly captures the long-time and
large-scale behaviour of the automaton.Concerning the second
problem, the authors of ref. [19]prove that, under suitable limits,
the kineticequations converge initially, for suitable space-time
scales, to Euler equations, while for longer timesone can observe
incompressible NavierStokes equations. The aim of section 3.2 is to
summarize allthese results, giving in particular a sketch of the
HilbertChapmanEnskog expansion used to derivehydrodynamic
equations. In section 3.3, we discuss the issue of spurious
invariants, arising from thediscretization of a partial
differential equation.
3.2. A model with stochastic stirring
Let us now discuss in some detail the main results obtained in
ref. [19]for the HPP model. Particlesmove on a square lattice L x L
with unit vectors c~(i = 1,. . . , 4). There are four copies of the
latticelabelled with cr E (1,. . . , 4). The couple (x, o) denotes
a point x of integer coordinates (x, y) on thelattice cr. The
standard exclusion principle of LGA is extended to the new
coordinate a-: at most oneparticle can live on each point (x, c1,
a-) in the phase space. The streaming and collision updating
areperformed as usual (cf. section 2.1). The novel feature is the
presence of the stirring updating. Itconsists of the following
two-step process. At each point x, one chooses with equal
probability anumber p(x) in the set {1,2,3, 4}. The index a- is
then changed to a- = a- p(x) {modulo 4). Next,each particle located
in (x, a-, c1) moves into (x + c~,a-, c,). In order to get a better
understanding ofthe dynamics induced by this process, let us
consider the case where there is just one particle in thewhole
space. The stirring process makes the particle jump from one plane
to the other. If one looks atthe x position, the resulting motion
is of the Brownian type. Note that the stirring updating
describedhere is the two-dimensional version of the process
introduced by Boghosian and Levermore [4].Theidea of parallel
lattices has also been used in ref. [35].An interesting phenomenon
is the presence ofstrong correlations between the various copies as
the viscosity approaches zero.
The full evolution of the automaton is a Markov chain: at each
time step and for each site (x, a-) thecollision updating is
applied with probability P(L), while with probability 1 P(L)
nothing happens.Next, regardless whether the collision updating has
been applied or not, the stirring and the streamingupdating are
applied. The probability P(L) is chosen such that P(L) = i/vT. In
the limit L ~ ~, theprobability P(L ) ~0, i.e. the stirring
updating is acting much more often than collisions. We shall
show(cf. theorem 1 below) that this is enough to ensure the
validity of the Boltzmann approximation in asuitable window of
space-time.
Let us now consider an ensemble of initial conditions and define
the average number N,(x, a-, t) ofparticles in (x, ci) in the
direction c, at time t. If correlations were absent, the evolution
of the meanpopulations would be governed by the lattice Boltzmann
equation
N1(x, a-, t + 1) = ~ N,(x c1 , a-, t) + (1I\.[L)4(N(x, a-, t)) ,
(32)
-
R. Benzi et a!., The lattice Boltzmann equation: theory and
applications 157
where 4(N) is the collision operator of the HPP dynamics (cf.
section 2.1),
4(N) = N~+1N1~3(1 N~)(1 ~+2) N~2(1 N1~1)(1 ~ (33)
Since the molecular chaos assumption is not exactly true, eq.
(32) will not describe exactly the evolutionof the average
populations for all times and for all scales. One can however show
that the kineticequations correctly capture the macrodynamic
behaviour of the stochastic automaton. In particular, it ispossible
to show that the system is governed, in different time regimes, by
various partial differentialequations: for t L ~,with f3 < 1/2,
a diffusive equation due to stirring; for t L h/2, the
space-timecontinuous Boltzmann equation and finally, for longer
times, the HPP hydrodynamic equatiotis (whichare neither the Euler
nor the NavierStokes equations, because of the lack of isotropy of
the lattice).Note that 4(N) appears in (32) with a multiplication
factor P(L) = itlL which is the expectednumber of times the
collision updating is applied in the model. In the limit L ~ ~,
this multiplicationfactor implies that the negative contribution to
the viscosity due to the lattice disappears.
Let us now give the precise statements of the theorems. In the
following section E will denote theexpectation with respect to the
Markov chain describing the time evolution of the automaton.
Theorem 1. Let us choose m points in the phase space y~,= (x,
c1, a-)1 and denote by n(y1, t) thepopulation in the point y~at
time t. For suitably smooth initial conditions,
lim {sup{7} E([T n(y1, \/L t) LI N,(x/VL, t)) } = 0, (34)where
N~(x,t). satisfies the equation
,JV~(x,t) + (c1 . O)N,(x, t) = 4(N). (35)
By suitably smooth initial conditions, one means essentially
that the probability density function ofthe ensemble at time t = 0
does not depend on a- (this fact explains why in the notation of
the N~stheindex a- is dropped) and that the initial velocity and
density profile varies on the average on a distanceof the order of
VL. In the proof of the theorem, the role of the stirring process
is essential.
Theorem 2. Let N~(h(x),a(x)) = 1 /{1 + exp[h(x) + a(x). C1]) be
the solution of the equation4(N~) = 0 and let A(L) =
1/log~(vT),with 0< ~
-
158 R. Benzi et a!., The lattice Boltzmann equation: theory and
applications
Moreover, the fields
p0 an A(L)...~o~ N~(h0,A(L)a(x)), p0v an A~).O ~
N~(h0,A(L)a(x))c1tA(L) (38)
solve the incompressible HPP NavierStokes equations.
A brief discussion of the physical meaning of the three theorems
is now in order. The first theoremimplies that, on a spatial scale
of the order V~L,corresponding to time scale VL, the lattice
gasdynamics is described by the Boltzmann equation (35). Then
theorem 2 states that, for time scales oforder vT log ~vT,with
0< ~ < 1, and a corresponding spatial scale of the same
order, the lattice gasdynamics is described by the Euler equation.
Note that for theorems 1 and 2 both space and time arerescaled in
the same way. The difference between the two theorems lies in the
different value of theKnudsen number (the ratio between the mean
free path in the automaton and the typical distance DLover which
macroscopic fields vary). According to theorem 1, the typical
distance DL = ~VL,while inthe second theorem DL = VIIA(L). Thus the
Knudsen number is order one for theorem 1 and orderA(L) 1/log~\/L4
1 for theorem 2. Note that the Euler equations are invariant under
the scaling
xE~yx, t~-+yt, v~~yv. (39)Theorem 2 makes use of this property
with h = 0. The scaling law invariance (39) does not hold for
theNavierStokes equations which satisfy the diffusive scaling, i.e.
the scaling (39) with h = 1. By settingy = ~s/Llog~\/L,one recovers
the scaling assumption used in theorem 3. The diffusive scaling is
alsoconsistent with the ChapmanEnskog expansion of the Boltzmann
equation: at the second order in theexpansion one recovers the
NavierStokes equation.
From a numerical point of view, theorem 3 implies that if we
solve eq. (31) on a grid of dimension L,this is equivalent to
solving the incompressible NavierStokes equations on a grid of
dimension A(L )L,i.e. the smallest hydrodynamic scale is of order
1I(A(L)L). For L E (100, 1000), A(L) E (0.66,0.53).This is not far
from what has been observed in numerical simulations of the lattice
Boltzmann equationwithout the stirring process.
Let us now sketch the proof of theorem 3 (for details, see ref.
[19]).Let us remark that the presenceof the stirring has no
relevance in the proof.
The starting point is eq. (35). As before, one can define
N~(x,t) = N1(A(L)x, A(L)2t), N~(h, a) 1/(1 + exp(h + a~ce)].
(40)For simplicity, we will skip the argument L of A. Inserting
(40) into (35), one obtains
+ A(c1 . O)N~= A24(NA). (41)
Because we expect the system to be in the neighbourhood of the
equilibrium state, it is convenient to
write the populations asN~(x,t) = N7~(h, Aa) + A2g
21(x, t) + A3g
31(x, t) + A3f~1(x,t). (42)The theorem is proved once one is
able to determine uniquely g21 and g3~,the functions h(x, t)
and
-
R. Benzi et at., The lattice Boitzmann equation: theory and
applications 159
a(x, t) and finally show that f~1(x,t) 0(A) for A ~ 0. This
result is accomplished by inserting (42) into(41) and then imposing
that each order in A, not containing f~,,vanishes.
To follow this idea, it is necessary to develop both N~(h,Aa)
and 4(N~) in power series of A. Theresult is
dNeq d2Neq
N~(h,Aa)=N~+A-~--+~A2dA~+A3RAI, (43)where the functions are
calculated at A = 0 and RAE includes the remainder of the
expansion. From eq.
(40), it follows (hereafter the x and t dependence of h and a
are relaxed for the sake of conciseness):
N~(x,t) = 11(1 + eh) (44)
(dN~/dA)(x,t) = e(a c1)/(l + e)
2, (45)
d2N~IdA2= (e21 e)(a . c~)2I(l+ e~)3. (46)One can now define
p(x, t)=4/(l+e), (47)
p(x, t)v(x, t) = [2 eh/(1 + e)2]a (48)whence it follows
dN~ 1 ~ f2~P\ 2
=
2pvc,, dA2 =2pt,,-~-----
1(vc1) . (49)The same power expansion in A has to be performed
for ~(N~). One can use the fact that~(N~(h,Aa)) = 0 for any A. Let
us then define the linear operator LA by the identity
L5N, = (d/d6)4(N~(h,Aa) + 6N~.)I00, (50)depending on A through
N~(h, Aa). The expression for the collision operator is then
= L~(A2g
21)+ L~(A3g
31)+ LA(A3f~t)+
= A2L0g2~+ A
3L0g3,, + A
3L1g21 + A
3LA(f~~)+ RAe, (51)
where L0 = LA~AQ,L1 = dLAIdAIA,o and RAE is at least 0(A3). The
operator L0 can be computed from
the above definition of 4(N1),L0N1 = A(--N, + N~~5 N~~2+ N1~3),
(52)
where A is a negative quantity. It turns out that L0 has three
zero eigenvalues, with eigenvectors
-
160 R. Benzi et at., The lattice Boltzmann equation: theory and
applications
P~= (1, 1, 1, 1), P~= (1,0, 1,0), P2 = (0, 1,0, 1) and a
negative eigenvalue with eigenvector P3 =(1, 1, 1, 1). Inserting
(43) and (51) into (41) and equating the terms having the same
order in A andnot containing f ~, one has:
(c1.li)p =0, ~a,p + ~(c1.O)(pv.c1) L0g21
~a1(pv. c~)+ (c1 .a)[g21 + p(~-=_P)(v.c1)2] = L0g31 + L1g2~,
(53)
+ (c, O)f~= -~ LAf~,+ R,,~1+ SAl.
Here, SAL is at least 0(1). The final step consists in proving
that eq. (53) corresponds to theincompressible NavierStokes
equations. First of all, it is easy to show that the first
equationcorresponds to Op = 0.
Let us now consider the second equation. The right-hand side
contains the operator L0. In order tosolve the equation for g21,
the left-hand side should be orthogonal to ~ P~and P2. The
orthogonalityrequirement leads to the following equation
a1p--O.(pv)=0. (54)
This equation, together with Op = 0, are the continuity
equations for an incompressible fluid. By
inverting the operator L0 on the complement of the null space,
one immediately gets:
g2~= L~[~p(c1. O)(v . c1)] + ~(x~ t)Pkl. (55)
This equation should be understood in the following way. The
only component of (c, . O)(v c,) whichenters in the determination
of g21 is proportional to P3,1 i.e. g21 = a(x, t)P31 + ~
f3~~t)Pk~.Thefunction a is computed by applying the operator L0 to
both sides of the equation, multiplying by~P3,1 andsumming over i.
Because P3.1 is an eigenvector of L0 with a negative eigenvalue
(let us call it a), weobtain
a(x, t) = (p/4a)(a~v~ a~v~). (56)
Let us consider the third equation of (53). In order to solve
the equation for g31 (note that theoperator L0 is acting once again
on g31) the unknown functions
13k have to be determined. First, weremark that c~= (P11, P2,1).
Next, it is easy to show that L
1P0, = 0 and that L1P11 and L1P21 are bothproportional to P3,1.
It follows that the orthogonality of the third equation of (53)
with respect to P~and P2.i has to be required. This requirement is
matched multiplying by c1 and summing over i. Using(56), one
finally obtains the incompressible HPP NavierStokes equations,
p,v~+ ~ ~ = app + va~pvp. (57)
Here, v is a function of p and a and the pressure p is
determined by the incompressibility equation. Theorthogonality with
respect to ~ provides the expression of the functions f
3k~
-
R. Benzi et at., The lattice Boltzcnann equation: theory and
applications 161
Once the functions g21 and g3, are obtained, it is necessary to
control the remainder f~1.This last stepis performed as in the
classical Boltzmann equation, where one can calculate the order of
theremainder. The details of such a computation are reported in
ref. [19].
3.3. Spurious invariants
As discussed in the previous section, under suitably smooth
initial conditions, the continuousBoltzmann equation (35) converges
to the incompressible NavierStokes equations. The proof oftheorem 3
is general and does not depend on the presence of the stirring
stochastic process, which isonly needed to prove the validity of
the Boltzmann approximation. When the continuous Boltzmannequation
is considered as a model in its own, the hydrodynamic behaviour of
the macroscopic scales isthen ensured. Equation (35) is a
particular discretization, in space, time and momentum, ofthe
classicalBoltzmann equation. The kinetic equation (31), which is
the one practically used, can be considered asa particular
finite-differences approximation of the continuous version (35).
This discretization may leadto difficulties similar to those
encountered in other numerical schemes. In particular, as we shall
seebelow, one should take care in identifying the invariants of the
discretized model.
For simplicity, let us consider a three state system in one
dimension, with c. (1, 1, 0) and labelthe lattice site x by the
integer m. This model has also been studied in detail in ref.
[57].Consider thequantities
QE(t) = ~ [N1(2m, t) N2(2m, t)] , Q0(t) = ~ [N1(2m + 1, t) N2(2m
+ 1, t)] , (58)
which correspond to the momentum evaluated at even (QE) and odd
(Q0) sites of the latticerespectively. From the definition of the
model, it follows
QE(t + 1) = ~ N1(2m 1, t) + 41(2m 1) N2(2m + 1, t) 42(2m + 1) =
Q0(t), (59)
where in the latter equality we have used the conservation of
mass and momentum. Similarly,Q0(t + 1) = QE(t) so that we have a
new invariant of motion: (l)[QE(t) Q0(t)]. This new invariantis an
artifact of the discretized version of the lattice Boltzmann
equation. In fact, in the continuousversion, eq. (31) becomes
+ (c~. 8)N = 4(N). (60)Using the definition J(x, t) = ~ !V~(x,
t)c,, we find that the invariant is proportional to J au i3x dx
whichis trivially equal to zero.
It has been shown [8,43, 44, 71, 72] that invariants similar to
the one previously discussed can befound in both two- and
three-dimensional lattice gas automata. In the case of the
automata, anon-linear coupling between the densities corresponding
to spurious invariants and the hydrodynamicdensities can produce
major drawbacks in the continuous limit. Such a coupling is in fact
able to changethe equations of motion in the hydrodynamic limit.
Instead of the incompressible NavierStokesequations, one finds some
other partial differential equations. For the FHP lattice, the
spuriousdensities also introduce anisotropic effects in the
evolution equation for the hydrodynamic variables.However the
spurious fields do not self-generate: if they are initially zero,
they will stay zero for latertimes [14].
-
162 R. Benzi et a!., The lattice Boltzmann equation: theory and
applications
From the above discussion it follows that the hydrodynamic limit
for the discretized model is not asstraightforward as it might seem
at a first glance. In particular the choice ofthe initial
conditions and/orboundary conditions can produce macroscopic
unwanted effects. In the model discussed in section 3.2,such
problems do not arise, because of the stochastic stirring process
added in the dynamics. Actually,for most applications, the stirring
process requires too much computational effort to be chosen as
apractical tool to handle spurious invariants. On the other hand, a
suitable choice of the initialconditions, i.e. a choice which
avoids spurious invariants, is not readily implemented, because
theexplicit form of the invariants depends on the lattice
symmetries and the dynamics. One could naivelyreach the conclusion
that (31) and the lattice gas automata are not interesting as a
numerical tool tointegrate NavierStokes equations, because they
require too much care in their application. Such aconclusion would
however be too pessimistic. Indeed, the spurious invariants are
generally very smallquantities. This statement follows from the
fact that the spurious invariants are roughly proportional tothe
gradients of the hydrodynamic fields. We have seen that only for
suitably smooth initial conditionsthe hydrodynamic limit can be
identified with the incompressible NavierStokes equations. In the
limitof small Knudsen numbers (which is the region where lattice
gas automata are used), such quantitiesare then of higher order
compared to the hydrodynamic fields themselves. Moreover, this
implies thatthe effects of spurious invariants are of the same kind
as those introduced by the other non-hydrodynamic fields (ghost
fields) present in the models. We discuss these variables in the
next section,where we show that their dynamics too is strongly
affected by anisotropic effects. So long as the initialconditions
are suitably smooth and the free parameters of the model are chosen
in such a way that thescales of the order of the lattice site are
not excited, we have not to worry about unwanted macroscopiceffects
due to spurious invariants and/or ghost fields. A counterexample is
provided by the stochastical-ly perturbed LBE,
N,(x + c1, t + 1) N1(x, t) = 4(N) + m(x~t) , (61)
where ~1(x,t) is an external stochastic noise. Here, the effects
of spurious invariants can be relevant ifthe noise has in the
average a non-zero projection on the spurious fields. This is the
case, for instance, ifE[r~,(x, t)r1~(x+y, t + T)] = S11K( I v I r)
and the correlation function K is a rapidly decaying function
ofboth T and I yI~In this case, the anisotropic dynamics of both
spurious invariants and ghost fields arelikely to produce
macroscopic effects in the hydrodynamic limit.
4. The lattice Boltzmann equation
4.1. From the boolean microdynamics to the Boltzmann
equation
Because the dynamics of lattice gas automata (LGA) is based on
boolean variables, all thesimulations performed by this technique
are affected by the practical drawback of statistical noise.
Inorder to get reasonably resolved macroscopic fields, it is
necessary to average over a possiblecombination of large regions of
the lattice, long times and a wide range of initial conditions.
Thispenalty is particularly felt whenever quantities involving
derivatives, such as vorticity, need to beexamined. On the other
hand, considerable advantages can be gained by building dedicated
machines,such as the MIT cellular automaton [54]or the RAP machine
at the Ecole Normale Suprieure in Paris[17],taking advantage of the
boolean character of the variables. As usual, no numerical scheme
is
-
R. Benzi et a!., The lattice Boltzmann equation: theory and
applications 163
perfect and the choice of the technique strongly depends on the
particular phenomenon to be simulatedand on the available
machine.
We will now show how the problem of noise can be overcome by
switching from the booleandynamics to the Boltzmann equation. In
section 2.4, we have shown that by the assumption ofmolecular chaos
it is possible to write the following kinetic equation,
N1(x + c1, t + 1) N,(x, t) = 4(N). (62)Here, 4(N) is obtained
from the boolean collision term by simply substituting the boolean
populationn, with the ensemble averaged population N,.
The problem of noise is obviously absent in eq. (62), because N,
is a real variable and no average atall is needed to get the
macroscopic fields. For this reason, McNamara and Zanetti
[53]proposed to useeq. (62) directly for hydrodynamic simulations,
with the 4 arising from the known boolean models. Inparticular,
they studied the model defined by the FHP-III rules [41],by
simulating the decay of shearand sound waves of definite
wavelength. The comparison between the experimental values and
theChapmanEnskog multiscale predictions shows that the hydrodynamic
value is accurate to better than5%, even for a lattice as small as
4. Also the behaviour of sound waves is definitely in agreement
withthe expectations.
Actually, as observed by Higuera and Jimenez in ref. [37], it is
possible to further simplify themodel. The reason is that
macrodynamic equations in lattice gas models (and then
NavierStokesequations) formally arise in the double limit of small
Knudsen numbers and small Mach numbers. It isthen convenient to
consider the expansion of the collision term in the rhs of (62)
corresponding to theseconditions. Let us write N~as in (12),
= N~(p, v) + N~~(Op,liv), (63)and further decompose ~eq as
= N~~+ N~1~+ N~2~+ 0(v3), (64)
where the upper index refers to the order in v. The explicit
expression of the various terms is given in
(9). The corresponding expansion of the collision operator
is4(N) 4(N~)+ ~ N~~+ ~J(N~2~+ N~~)+ ~ aN~,aNkN~~N~~ (65)
where all the derivatives are calculated at the state of zero
velocity N~= d = p/b. We now use the
property that, for any equilibrium distribution, the following
equality holds:
4(N~)= 0. (66)
Specializing eq. (66) to the case of uniform equilibria (zero
velocity), we have 4(N~~)= 0. For ageneric equilibrium
distribution, eqs. (65) and (66) yield
8~f N~N~0 67~ aN
1 ~ 2aNJaNk j k
-
164 R. Benzi et a!., The lattice Boltzmann equation: theory and
applications
Plugging (67) into (65), we finally obtain4(N) K.J(NJ Np),
(68)
where
K11an~jj- (69)
= ~ (s1 s~)A(s*s)d~(1 d)~P(s1 s), (70)
and p = E,s~.Remark that, due to the symmetries of the collision
matrix K,~,the rhs of eq. (68) can bewritten as K1J(N~, N~
2~),which is more convenient for computational purposes.Despite
its apparent linearity, the expression (68) accounts for
second-order terms in the expansion
of the collision operator. The passage from the complete
collision operator to the form (68) is clearlyadvantageous from the
point of view of simplicity and storage requirements of the
numerical scheme.On the other hand, as will become clear in the
following, the reduced expression (68) is exposed tonumerical
instabilities.
4.2. Lattice Boltzmann equation with enhanced collisions
The starting point in the definition of the lattice Boltzmann
equation with enhanced collisions is thelinearized kinetic equation
obtained in the last section,
N~(x+c1,t+l)N1(x,t)=.11(N1N~), i=1,...,b, (71)
governing the evolution of the mean particle population N, in
the b possible states per site. Here, C, arethe velocities, sf41 is
the collision matrix (the reasons for the change of notation with
respect to thepreceding section will become clear in a while),
whose element a~1determines the scattering ratebetween directions i
and j, and N~ is the equilibrium population. In the definition of
the latticeBoltzmann equation with enhanced collisions a different
point of view is taken: the choice of thequantities in (71) is no
more forced by an underlying boolean microdynamics, but it is
rather dictatedby the macroscopic equations to be reproduced. This
possibility was used in ref. [39]in the case ofhydrodynamics and it
is reviewed here. Further specializations for different
hydrodynamical equationsare given in sections 4.5, 6.2 and 6.3.
The arguments of the previous section suggest the following
definitions:(i) The equilibrium population*) has the same
expression as (9),
= ~ (i + ~ vacia + Qiap1~at~p), Q,~= CiaCip (C2ID)i5ap .
(72)(ii) The general element a,
1 only depends on the angle between directions c, and c1.(iii)
Collisions conserve mass and momentum, i.e.*) The constant in the
nonlinear term of the equilibrium population could actually be
arbitrarily chosen. By a convenient choice, one could then
eliminate the spurious factor g(p) which arises in the
hydrodynanuc equations of the model. This could be useful in
multi-phase flows. As noted inref. 145] this freedom can also be
used to remove the quadratic correction in the pressure term (by
the addition of rest particles) or to use lessregular lattices, a
rectangular one for instance 147].
-
R. Benzi et at., The lattice Bolrzmann equation: theory and
applications 165
~ j=1,...,b. (73)
Notice that the matrix elements a,1 are now numerical parameters
which can be changed at will.Apart from this freedom, the matrix
.cfIq defined by (ii) and (iii), has the same symmetries as
thecollision matrix K,1 obtained in the previous section from the
boolean microdynamics. In the followingwe will then skip the label
with enhanced collisions whenever this does not lead to
confusion.
The possible angles between the various directions are 0, rr/3,
2ir/3, ~rfor the FHP lattice and0, ir/3, rr/2, 2ir/3, ir for the
FCHC lattice. According to (ii), the number of possibly different
elementsa,1 of the collision matrix is four for the 6-particle FHP
and five for the 24-particle FCHC. The inclusionof a rest particle
implies the introduction of two new independent parameters, to
account for theinfluence of the resting particle on itself and on
the other directions. In the following, for simplicity, weshall
consider the case without rest particles.
The condition (iii) imposes some additional constraints on the
number of independent elements of~ Denoting by a0 the matrix
elements a,1 such that c, C1 = c
2 cos 0, it is easy to verify that eqs. (73)are equivalent
to
a0+2a60+2a120+a180=0, a0+a60a120a180=0, (74)
for the FHP model. In the FCHC case, the corresponding equations
are
a0 + 8a60 + 6a90 + 8a120 + a180 = 0, a0 + 4a60 4a120 a180 = 0.
(75)Thanks to the property that the matrix .t~ is symmetric and
cyclic, the independent coefficients a0
can be expressed [70]in terms of the non-zero eigenvalues of the
matrix. For the FHP, the non-zeroeigenvalues are
A=6(a0+a60), cr=6(a0+2a60), (76)with multiplicities 2 and 1
respectively. For the FCHC, the same calculations lead to
A = a0 2a90 + a180, a- = ~(a~ a180), r = ~(a0 + 6a90 + a180),
(77)
with muhiplicities 9, 8 and 2. In both cases the eigenvectors
are mutually orthogonal and do not dependon the matrix
coefficients. In particular, the eigenvectors associated to the
eigenvalue A are theD(D + 1)12 1 linearly independent elements of
the set of vectors
Let us now consider the range of the possible values of the
coefficients a0. In the homogeneous case,an obvious condition for
the stability of the scheme is that the non-zero eigenvalues of the
collisionmatrix be negative and larger than 2. In the
non-homogeneous case, the first check one has to make isthe linear
stability of the scheme. In the linear approximation, one neglects
in (71) the non-linear termin the equilibrium population. By
Fourier transforming the resulting equation, one obtains
{[exp(i(k. c, w)r) 1],1 N1 an G.1(w, k)N1 = 0. (78)For the sake
of clarity, the time step r is explicitly reintroduced. As usual,
the normal modes are
-
166 R. Benzi et a!., The lattice Boltzmann equation: theory and
applications
determined by imposing that the determinant of the matrix G,1 is
zero. By letting w = (1 + iy andrequiring y
-
R. Benzi et a!., The lattice Boltzmann equation: theory and
applications 167
4.3.1. The FHP caseThanks to the symmetries imposed on the
collision matrix, all the eigenvalues and five of the six
eigenvectors (1, c~,Cj)~and the two independent components 0f
Qiap) of the collision matrix arealready known. One can show that
the other eigenvector is (1). The generic population N~can thenbe
decomposed as
= ~p + ~pciav + ~QIaP~ap+ ~ (82)
Equations (81) can now be projected onto the orthogonal basis of
the eigenvectors. Multiplyingsuccessively by 1, C,a~Qiap (1) and
summing over i, one obtains
3tP+aJa=0~ atJa+aa(p12)+apSap=0,(83)
+ ITIap +1?a~y~9yP~= A(Sap S~), a~+4RapyySap =
Here
Rap..,, ~ (~)Qiap~iy, S~= pg(p)(v~vp ~V2ap),(84)
g(p)=(3p)I(6p), Hap=aaJp+apJa(a.yJy)oapRemark that the
non-isotropy introduced by the rotational discretization of the
lattice affects theexpression of the non-hydrodynamic fields, i.e.
the ghost field ~ and the higher-order contributions tothe stress
tensor.
4.3.2. The FCHC caseDue to the dimension of the matrix, the
calculation of the spectral properties of the FCHC collision
matrix is much lengthier than in FHP. A significant advantage
can be achieved by defining a reducedcollision matrix. For
simplicity, let us consider the two-dimensional case. When the
four-dimensionallattice is projected onto the xy plane, some
vectors project onto the same two-dimensional vector [forinstance,
the four vectors (1,0,1,0), (1,0,1,0), (1,0,0,1), (1,0,0, 1) all
project onto thetwo-dimensional vector (1, 0)]. Only the sum of the
four populations is relevant for the calculation oftwo-dimensional
fields. Without loss of generality, it can be assumed that all the
populations projectingonto the same two-dimensional vector have the
same value. We are then left with only nine distinctpopulations
N~,ranging from zero to one. It must however be remembered that
each populationcontributes to the calculation of the fields with a
weight
[1 for diagonal directions, 85 I. 4 otherwise.
For instance, the density p is calculated as
p4(N1+N3+N5+N7+N9)+N2+N4+N6+N8, (86)
where N1 propagates along the positive x-axis, N9 is the rest
particle and the remaining seven
-
168 R. Benzi et al., The lattice Boltzmann equation: theory and
applications
populations are numbered counterclockwise. It is now natural to
introduce a 9 X 9 reduced collisionmatrix ~, expressing the effect
of collisions on the aforementioned nine populations. The value of
theelements of the matrix ~ as a function of the original a0 is
reported in appendix A. The reduction in thedimension of the matrix
~ is very convenient also from a computational point of view.
The matrix ~ is no longer symmetric and cyclic and its
eigenvectors are not orthogonal. The problemcan however be solved
by introducing the following weighted scalar product,
A.Ban>..p1A~B,. (87)
By standard calculations, one can verify that ~ has the same set
of eigenvalues (0, A, a- and r) as theoriginal matrix .~1,with
multiplicities 3, 3, 2 and 1. The eigenvectors constitute an
orthogonal basisaccording to the scalar product defined by (87). It
follows that the generic population N~can beexpressed as
N1(x, t) = ~ A~(x, t), (88)
where A~are the eigenvectors and ~ (n) are the corresponding
fields.It is readily checked that the subspace of the conserved
vectors (zero eigenvalue) is spanned by
A~~=(1,1,1,1,1,1,1,1,1)an11, A~2~=(1,1,0,1,1,1,0,1,0)=c~~,
(89)A~3~=(0, 1, 1, 1,0, 1,i, 1,0)=c,~
The identification of ~ ~ with the density p and of ~ (2), ~ (3)
with the xy projection of the currentI = pv is immediate. After
some algebra, one finds also
A~9~= (1, 2, 1, 2, 1, 2, 1, 2, 2) an r,(90)
= r.c,~, = r,c,ywith eigenvalues r, a- and a- respectively.
Formula (90) suggests the identification of the fields ~7) and
(8) as the xy projection of a density current ire, whose density
field is 4~(9), hereafter denoted by ~. Weshall refer to i and p~as
ghost fields, for reasons which will become clear in the following.
Finally, A~4~and A~5~coincide with Q,~and Q~and the vector A~6~has
the following expression: A~6~=Q,,,., + ~Q1~.Hereafter, we find it
more convenient to use the tensor Qiap instead of ~ A~5~and~ In
this case, we loose the orthogonality of the basis but, as we shall
see below, the definition of thestress tensor Sap becomes
straightforward: Sap = E
1 Pi14QiapBacked up by the list of the eigenvectors, one can
project the equations (81), as in the FHP. The
result is the following set of non-linear partial differential
equations:
~p+ aaja =0, a~1.i.+8afla = ~ , atJa + aa(p/2) + apSap 0,
(91)+ 0a(/~L/2)+ apTap = t7~1a, a~S
0~+ ~ + Gap = A(SaP S~~)
-
R. Benzi et a!., The lattice Boltzmann equation: theory and
applications 169
Here
g(p) = ~(12 p)/(24. p), S~ = pg(p)(vavp ~v26ap), Tap = ~
PITINiQIaP
1 1 (92)Hap = aafp + apJa ~13y1yap , ~ an PiTiCiaCipl~iyCj
8 , G~,p= Rap..,~ay
We remark the formal similarity of the lhs of the equations for
the ghost fields and for thehydrodynamic fields, which will be
useful in the following. In particular, it is possible to switch
from oneblock to the other by changing the weights of the various
directions: p, ~ p1r1. The different weightsimply the non-isotropy
of the ghost stress tensor:
~ ~ T~~=2S~~, (93)
where Tr denotes the trace of a matrix.Using eqs. (91), it is
also possible to prove the uniqueness of the symmetries used to
define the
collision matrix in LBE. Let us start with the most general 9 x
9 matrix .s~,and let us impose thefollowing requirements: (i) the
conservation of mass and momentum, (ii) ~ has the same symmetries
ofthe lattice, (iii) in the macroscopic limit the LBE reproduces
NavierStokes behaviour. It is possible toverify that, under the
above constraints, the resulting matrix has the same structure as
~. We argue thatthis uniqueness is not peculiar to the FCLIC, but
can be extended to other lattices.
By similar but lengthier, calculations one can treat also the
three-dimensional FCHC. The dimensionof the reduced collision
matrix is 18 x 18. The expression of the eigenvectors is given in
appendix B.The resulting macrodynamic equations have essentially
the same structure as in 2D. The resultsobtained for the latter
case can be transposed to 3D with only minor modifications. In the
following weshall then restrict ourselves to the two-dimensional
equations.
4.4. Hydrodynamic behaviour of the lattice Boltzmann equationLet
us now discuss the macrodynamic equations obtained in the last
section, focusing on the
possibility of recovering the equations of hydrodynamics.In
order to obtain the incompressible NavierStokes equations from the
sets of equations (83) or
(91), it is sufficient to satisfy the following three
requirements. The first is the possibility of neglectingghost
fields with respect to hydrodynamic fields. The second is the usual
incompressibility conditionp const. The third is the validity of
the adiabatic approximation, i.e. the time derivative term in
theequation of the stress tensor Sap be much smaller than the other
terms in the same equation. Let us nowsubstitute the expression of
the stress tensor corresponding to these assumptions in the
equation for thecurrent. One can easily check that NavierStokes
equations are recovered, apart from the usualconstant factor g(p),
which can be easily rescaled out.
The first condition is strictly related to the issue of
higher-order terms of the multiscale expansionused in the last
section. Equations (83) and (91) suggest that the various fields
have generally thefollowing order:
Sv2+ ev, ,~ ev2+ s~v, p.--.O(ei). (94)
-
170 R. Benzi et a!., The lattice Boltzmann equation: theory and
applications
Because the corrections to (81) are at least of second order,
the rates ~IS and j.~IS tend to zero ase ~ 0. Figures 4 and 5
provide a visual confirmation that the activity of ghost fields is
mainly confined tosmall scales. When the adiabatic expression of
the stress tensor is substituted into the equation for thecurrent,
a viscous term 0(e2) is generated. It is then necessary to include
the second-order contribu-tions to this equation, coming from the
expansion of the streaming operator. In section 2, thesecond-order
expansion of the streaming operator was performed in order to
obtain the macroscopicequations for a lattice gas model. These
calculations can be transposed with no modification to our case.One
can thus verify that the final result is the inclusion of the
propagation viscosity contribution.
Concerning the incompressibility issue, it is well known
[50]that this approximation requires that thevelocities of the
fluid be much smaller than the speed of sound and has already been
discussed in thegeneral context of lattice gas models.
The physical meaning of the adiabatic approximation is that the
typical hydrodynamic time scale ismuch longer than the time scale
of relaxation to the local thermodynamic equilibrium.
Non-equilibriumfields are then adiabatically slaved to the
equilibrium fields.
To obtain a quantitative constraint on the eigenvalues of the
collision matrix, let us observe that, thespeed of sound being of
the order one, the inverse time scale of propagation associated to
aperturbation having a wave number k is of the order k. In the
continuous version of the equations forthe stress tensor, the
relaxation time is equal to 1/IA. It is then reasonable that, in
order to verify theadiabatic approximation, the inequality
IAl~k (95)must be satisfied. Condition (95) is in agreement with
the experimental observation that hydrodynamicbehaviour is already
attained for the modes having a wavelength of few lattice
spacings.
With respect to the dynamics of the other non-equilibrium
fields, one should require that theircharacteristic time scales are
smaller or at least comparable to that of the stress tensor.
Denoting by ~the generic non-zero eigenvalue of the collision
matrix, the condition I ~l I Al naturally arises. In thediscrete
case, the maximum speed of relaxation is attained for ~= 1. The use
of this value for theeigenvalues of the ghost fields was suggested
in ref. [39].On the other hand, we expect that the
~ ~ c
~
Fig. 4. Typical snapshot of the hydrodynamic vorticity field
(from ref. Fig. 5. Typical snapshot of the ghost vorticity field
(from ref. 169]) at169]) for a 1282 simulation with Mach number M =
0.2. the same time and with the same parameters as in fig. 4.
The
amplitudes are scaled down by six orders of magnitude with
respect tothe fields in fig. 4.
-
R. Benzi et a!., The lattice Boltzmann equation: theory and
applications 171
behaviour of the system may change in the neighbourhood of A =
2, where the viscosity is very small.It is in fact well known in
statistical mechanics that, when one of the kinetic coefficients
tends to zero,macroscopic equations must be modified, by including
higher order terms of the multiscale expansion[12].
A simple example where the previous observations are relevant
can be provided. Let us consider therelaxation of a macroscopic
perturbation as a function of A in the two-dimensional FCHC
model.Non-linear terms, which do not contribute to dissipation, are
discarded. The dynamics is well repre-sented by the following set
of equations
a~J~=0, atJa +aa( p12)+apSap + ~apapJa =0,(96)
aiSap + ~(aaJp + pJa) = A(Sap S~).Notice that we have included
the contribution corresponding to the propagation viscosity
(otherwise thevalue A = 2 would not be critical). Thanks to the
isotropy, there is no lack of generality in consideringthe case k~=
0 and the substitution k~~k is sufficient to obtain the eigenvalues
in full generality. Bylooking for the solution in terms of a
Fourier series E k exp(ikx xkt), the following dispersion
relationis easily found,
(97)
In the limit k ~ I Al, the square root can be developed in terms
of k/I Al. At the leading order, theexpression of the eigenvalues
is
X~A+0(k2), ~~~~k2(1+2IA)+O(k4). (98)One also finds that, at the
leading order, the evolution of the fields, as a function ofthe
initial values, is
J~(t)= J~(0)exp(x~t)+ ~ exp(x~t)],(99)
S~~(t)= S~~(0)exp(x~t)+ (ik~I3A)J~(0)exp(x~t)The results are the
same as those one would get by using the adiabatic approximation.
In the oppositecase (IA I s k), the relaxation time is very long,
the non-equilibrium field S~,is not slaved to J~,and thebehaviour
is not hydrodynamic. This confirms the validity of (95).
Let us now consider the limit where A is very close to 2. Within
the scales verifying the inequality(95), there is a range of modes
such that the term 0(k4) in the expression of x~has the same order
ofmagnitude as the first term. These scales are in fact no longer
described by eqs. (96) and higher-orderterms in e must be included.
In the general case these contributions are not isotropic (at least
for FHPand FCHC lattices) and the model is no longer representative
of the behaviour of a real fluid in thisrange of scales.
In summary, we have shown that the lattice Boltzmann equation is
a hyperbolic approximation of theNavierStokes equations, i.e. the
stress tensor is slaved to its hydrodynamic expression within a
delaytime of the order 1/I Al. When the viscosity is not too small,
the lattice Boltzmann equation convergesto NavierStokes equations
better and better as the viscosity is decreased. When the
eigenvalue A is
-
172 R. Benzi et a!., The lattice Bo!tzmann equation: theory and
applications
very close to 2, non-isotropic and non-universal higher-order
terms of the multiscale expansionbecome of relevance. This issue
will be discussed in more details in the following section.
4.5. The limit of zero viscosityThe observations made in the
previous section concerning the limit of zero viscosity can be
quantitatively clarified by the analysis of a simplified
one-dimensional model. The advantage is that asolution of the model
in its fully discrete form can be found, with no need of any
multiscale expansion.
The model is defined on a one-dimensional lattice with two
states per node. Particles can moverightwards and leftwards with a
unit speed. The equations corresponding to (71) are
N,(x + c,, t+ 1) N,(x, t) = .s141(N3 Np). (100)
Because our aim is to obtain a diffusive behaviour on the
macroscopic scales, we impose that collisionsconserve the mass.
Consequently, the collision matrix only depends on the coefficient
a, governing thescattering rate between the nghtwards and leftwards
directions. In particular, the matrix elements area11 = a22 = a and
a12 = a21 = a. The eigenvectors are (1, 1) with zero eigenvalue and
c, = (1, 1)with eigenvalue 2a. The corresponding fields are ~ = 1N1
and J = N,c,. The equilibrium popula-tion needed to obtain a
diffusive behaviour*) is simply N~ = 4 /2. The same projection
procedure usedpreviously can be obviously repeated in this case.
The equations corresponding to (96) are
~a~a~=0,a1J+a~4=_2aJanAJ, (101)where J = E~N,c,. In the
macroscopic limit and in the adiabatic hypothesis, the behaviour of
the model
is purely diffusive and the diffusion coefficient D( A)
isD(A)=(1IA+~). (102)
Remark that D( A) depends on the parameter A in the same way as
the viscosity in hydrodynamics. Inparticular, in the limit A~ 2,
the kinetic coefficient vanishes.
Let us now consider the discrete solution. The model is linear
and the solution is most convenientlysought in terms of plane
waves,
exp[ikm Xkfl], (103)where m and n are integers. It is easy to
obtain the dispersion relation. One of the eigenvalues describesa
pure relaxation, while the other is associated to diffusive
behaviour. The frequency of the diffusivemode can be recast in the
following form
Xk = [D(A)/Q(A,0)]k2. (104)
Here D( A) is the macroscopic value of the diffusion
coefficient, 0 is the wavenumber normalized to thelattice spacing
and
*) Remark that by using N~= 4il2 + c4.214 at the leading orders
we obtain the Burgers equation.
-
R. Benzi et a!., The lattice Bo!tzinann equation: theory and
applications 173
Q(A,0)~02[(2+A)IA]log{fl(2+A)cosO+\fA2(2+A)2sin20]} (105)is a
function which embodies the effect of the lattice discreteness
[52](the parameter appearing in ref.[52] is equal to A /2). As one
can check by direct inspection Q(A, 0) = 1, in agreement with
(102). It isnow of interest to examine the behaviour of this
function. A series of curves for different values of A inthe
interval (0, 2) are shown in fig. 6. From this figure, we see
that:
(i) The region of convergence to the macroscopic value extends
as I Al grows, provided that A is nottoo close to 2. For values of
A far enough from 2 and 0, the corrections to the hydrodynamic
valueQ = 1 are very small for the scales of interest.
(ii) For small values of A, the corrections tend to overdamp the
modes. In the opposite limit therelaxation rate of the modes is
decreased.
(iii) In the neighbourhood of 2, for a fixed k, the corrections
tend to increase when I Al grows andthe transition to
non-dissipative behaviour becomes more abrupt.
The behaviour of the system is definitely in agreement with the
phenomenological predictions madein the previous section. When the
kinetic coefficient approaches zero (Ap 2), there is obviously
noproblems with isotropy as in the multidimensional case and the
higher-order terms only reflect in thefact that the model function
Q( A, 0) displays a sharper dependence on 0.
We argue that (iii) has a certain generality. Also in
hydrodynamics the value 2 is indeed thefrontier between the stable
and the unstable regions. When transferred to the context of
hydro-dynamics, these considerations suggest that, by pushing the
viscosity too low, undamped scales areexcited and the scheme is
prone to numerical instabilities, as observed in numerical
experiments.
4.6. Numerical efficiencyAlthough lattice gas models bear an
intrinsic interest as fictitious ab initio models offluid flows, it
is
clear that much of the attention they have been capturing in the
last few years is to be attributed totheir potential as a new
computational tool for numerical fluid dynamics. The purpose of
this section is
I ________________________theta
Fig. 6. The function Q( A, 0) expressing the effect of lattice
discreteness on the value of the diffusion coefficient versus 9 for
various As. Frombottom to top: A = 1.02; A = 1.2; A = 1.4 and A =
1.6.
-
174 R. Benzi et a!., The lattice Boltzmann equation: theory and
applications
therefore to outline the main concepts which allow a
semi-quantitative assessment of the numericalefficiency of the
lattice Boltzmann equation.
We begin with some definitions. Let L be the integral scale of
the flow, 1d the dissipative scale;1!mfp = v/c, the particle mean
free path, a the lattice spacing. According to the discussion of
section 2.4,the Reynolds number R achievable with N lattice sites
(L = Na) is given by:
R=MR*N, (106)
where R* = c,alv a/lmfp and M = v/c, is the sound Mach number.
The dissipative length 1d is relatedto the integral length by the
relation Id LIRtm (m = 1/2 in d = 2 and m = 3/4 in d = 3), whence
weobtain
R = (LIld)Vm = (aIld)~mNhJm. (107)From these expressions we see
that the Reynolds number is basically controlled by the particle
meanfree path (R* = in lattice units). As shown in section 4.4, the
viscosity ii = lmfpCs is related to theleading eigenvalue of the
collision matrix, A, by
v[c2/(D+2)](1IA+ ~), (108)which shows that, by letting A come
close to 2, one could hope for the possibility of
reachingarbitrarily high values of the Reynolds number, even
working in a finite lattice.
It is useful to identify two main working-regimes for LBE: (a)
adiabatic regime: 1mfp ~ d (b)numerically resolved: a ~ d~
Obviously, the aim is to work in the adiabatic regime (in order for
LBE tobe a true picture of the NavierStokes equations) and having
enough resolution to guarantee thevalidity of the multiscale
expansion. Hence the right ordering is mfp ~ a ~ d For the sake of
clarity, letus specialize to the two-dimensional case. The
numerically resolved regime is attained for a givenReynolds number
whenever the number of nodes exceeds a minimum threshold NNR, given
by
ld/a=N/R1, NNNR=R~2. (109)
On the other hand, the adiabatic regime is characterized by the
condition
1 Ia 1 10* ~1I2iafp mfp = III~ =~__>~ (110Id Id/a N/RV2
NR*
which identifies the adiabatic threshold NAD as
NAD = RII2IR*. (111)
From this equation we see that for R * > 1 (the usual lattice
gas regime), once numerical resolution hasbeen ensured,
adiabaticity will ensue automatically, while the reverse is not
true. Differently restated,this means that, at variance with the
earliest lattice gas schemes (R* 1), the limits of LBE are fixed
bycomputational resolution rather than by the discreteness of
velocity space.
It is now instructive to represent the equation (106) in the RN
plane. In this plane, (106) is
-
R. Benzi et a!., The lattice Boltznsann equation: theory and
applications 175
represented by a series of straight lines whose slope is given
by 1 /MR*. Thus by increasing R~, for afixed R, one linearly
reduces the number of computational nodes. However, in view of eq.
(111),represented in fig. 7 by the solid line, we see that this
reduction is really effective only as long as N doesnot fall below
the threshold NNR. Otherwise 1d becomes smaller than the lattice
spacing and the wholemultiscale expansion breaks down. This
clarifies the reason why the limit v*0 with A * 2 is
purelyformal.
Let us now examine more closely the numerical properties of
LBE.First of all, notice that, as usual for numerical schemes
working at a unit Courant number yr/a (r was
introduced in (78)), the LBE scheme is free of numerical
dispersion and diffusion.The second issue concerns the numerical
stability of the scheme. The linear stability discussed in
section 4.2 applies only to quasi-uniform flows, with small
departures from zero flow speed uniformequilibria, N~(v= 0) = d.
The dynamics of the fluctuations around non zero-speed equilibria
is moreand more exposed to the effects of non-linear modemode
coupling between the various populationsNi. As is well known,
non-linear modemode coupling can give rise to high-frequency modes,
whosecorrect representation in the discrete grid is mandatory to
preserve the positivity of the distributionfunction. Violation of
this condition may result in catastrophic instabilities, because
terms which arephysically stabilizing change sign and destabilize
the system. This is easily seen by expliciting thedefinition of the
flow current v = E 1s1
1c1 in the expression of the non-linear term in the
equilibriumpopulation. This yields
+ (c1 O)N, = ~ N~) P4Jk(N1 Nr)(Nk Np), (112)
where
P4jk = P(J(P)~9(4hQhapt~jaCkp , (113)which clearly reveals the
non-linearity hidden in the expression of the equilibrium
population. At aqualitative stage, the scenario for the development
of non-linear instabilities can be devised byidentifying the rhs of
eq. (112) with a restoring force which drags the system to
equilibrium. When vincreases, counterfiow populations (v~c1
-
176 R. Benzi et a!., The lattice Boltzmann equation: theory and
applications
around the corresponding equilibrium will suffice to make the
restoring term negative, turning it into arepelling one and thus
triggering the instability.
Specifically, it is a common finding of the authors that
whenever the viscosity becomes too small, i.e.so small that scales
comparable to the lattice pitch are excited, numerical
instabilities develop in theflow. These instabilities may proceed
via two mechanisms: either a conspicuous flow speed sets uplocally
(local violation of the low Mach number limit) or strong gradients
are generated (local violationof the Knudsen limit). In both cases,
a careful monitoring has evidenced that they are invariably
relatedto the violation of the constraint on the distribution
function: 0 Ni 1.
These instabilities could be cured by using the full non-linear
Boltzmann collision term, but thiswould considerably tax the
computational efficiency of the method. This operator would indeed
requireof the order of 2b flops instead of b
2. Intermediate solutions, i.e. higher-order expansion ofthe
collisionoperator might prove effective in solving this
problem.
Having discussed the stability of LBE, we can now turn to its
numerical efficiency. The dynamics ofLBE is driven by the streaming
operator and the collision operator. The streaming operator is
local invelocity space and non-local in configuration space, while
the opposite is true for the collision operator.One can arrange the
distribution function in a 4D array F(I, LX, LY, LZ) with I
representing thevelocity index and LX, LY and LZ the spatial
indices. The streaming step involves b address-shiftings ofthe
spatial indices, while the collision step requires of the order of
b2 floating point operations (flop)between different Is for the
same grid point. Assuming for a while that the cost of data
transfer from/tomemory can be neglected, it appears that the
computational kernel of LBE consists of 0(b2)flops Ispatial site.
Remark that, for the FCHC lattice, b does not coincide with the
number of links ofthe four-dimensional lattice. Thanks to the
degeneracies discussed in section 4.2, in two dimensions 9fields
are needed, while in three dimensions this number increases to 18.
Actually, it is worth notingthat the storage requirements of LBE
are somehow increased by the presence of the ghost fields. In 2Dwe
have to solve for 9 fields, but only 6 (density, velocity and
stress tensor) would be needed for theaim of a hydrodynamic
analysis. In three dimensions the situation is 18 fields against
10. One could tryto avoid this waste by storing only the
hydrodynamic fields and converting them to/from thecorresponding b
population fields just before/after the move cycle. This choice
obviously corre-sponds to the suppression of the ghost field
dynamics.
The scheme being explicit in time and local in space, one
concludes that LBE is an ideal scheme forvector and parallel
computing, in precisely the same way as boolean lattice gases are.
When the schemeis implemented in a specific computer architecture,
some caution is needed, however, in order to fullyexploit the
potential of computational concurrency offered by the scheme. Of
particular importance, tothis concern, is the minimization of the
costs associated with data transfer from/to storage to/from
theprocessing units.
In the case of IBM 3090 vector-multiprocessor, the machine to
which most of the authors experiencerefers to, data-transfer
minimization is achieved by accessing data at stride one, i.e.
along contiguousmemory locations (stride 2 is equally good). This
allows a full bandwidth transfer from central memoryto a high-speed
buffer (cache) from which operands are delivered to the processing
unit at a rate of oneword per machine cycle. The collision step is
particularly well behaved in this respect, in that it requiresmany
( b2) flops per each item reference. The move-step, while much less
demanding in principle (noflops at all), is of course much more
exposed to the negative effects of awkward data access. This
isparticularly true in three dimensions, where strides are of order
ofN2. Therefore some care is needed inDO loops ordering and
arrangement before the computational cost becomes really
negligible, as itshould be in view of the much smaller
computational work required [65].To date, on a single processor
-
R. Benzi et a!., The lattice Bo!tzmann equation: theory and
applications 177
of the IBM 3090-VF, sustained rates of 3050 Mflops are currently
achieved, which correspond to about1 Msite/s in two dimensions and
0.1 Msite/s in three. More recently, LBE has been timed on theIBM
RISC system 6000 superscalar workstation, where processing rates of
the order of0.3 Msite/ s havebeen measured in two dimensions.A
detailed comparison for the case of a 1282 grid (which will be
discussed in section 5.1) has proved
LBE to be roughly as fast as a pseudo-spectral code. This
comparison is however of little importance ascompared to the real
advantage of LBE, which is linear scalability for parallel
processing. It isremarkable that this linear scalability can
already be observed on non-dedicated machines, such as theIBM 3090,
where speed up factors of 5.5 have been achieved when passing from
the mono to the fullsix-processor configuration. The use of
massively parallel SIMD (single instruction multiple
data)architectures should allow the full exploitation of the
capabilities of the scheme.
5. Applications
5.1. Two-dimensional homogeneous turbulence
The validity of LBE as a numerical scheme for fluid flows was
first shown for the case of moderateReynolds number (R < 100)
two-dimensional flows (see figs. 8a and 8b) past a cylinder
[38].Thesesimulations were limited to a maximum value of R* = 7.57,
for the LBE scheme was still in aone-to-one correspondence with the
underlying FCHC lattice gas automaton.
The ability of LBE to reproduce two-dimensional turbulence was
investigated in detail in ref. [2]with the model in the enhanced
version (cf. section 4.2). As a first insight in the capability of
LBE,the scheme was compared against a pseudo-spectral simulation
for the case of a homogeneous forcedturbulent flow. Three levels of
resolutions were adopted: low (64 x 64), moderate (128 X 128) and
high(512 x 512). In fig. 9 we show the time series of the energy E
and the enstrophy LI for both LBE andpseudo-spectral (PS)
simulations, in the case of low numerical resolution. From this
figure we see that,apart from some spiky fluctuations in the early
stage of the evolution, the two methods yield quite asimilar answer
in terms of the statistical behaviour of the flow. The comparison
was subsequentlypushed forth by inspecting the energy spectrum E(k)
at moderate resolution. This is shown in fig. 10,which clearly
displays the excellent match between the two methods (it is to be
mentioned that thisspectrum pertains to the time-asymptotic
regime). In particular, it is worth noting that beyond a given
SIREAKLII[S ~ II
0 ~ 21
Fig. 8. (a) Streaklines representation of a typical vortex
shedding instability computed with the lattice Boltzmann equation
(from ref. 1381). (b) Thevorticity field corresponding to the same
situation as in (a) (from ref. [38]).
-
178 R. Beazi et a!., The lattice Boltzmann equation: theory and
applications
Energy Spectrum 64x84 grid
~BE II 1007
~~~___] 10021003-1004- . .. ... LOlE~O5 ~ SpecS,I
~ ~
1072Energy 10-13
____________________________________________________________
1016
____________________________________________________________
50 100 150 200 250 0 10 20 30 40 50 60 70time Wavenumber
Fig. 9. Energy and enstrophy time series for a 642 lattice
Boltzmann Fig. 10. Energy spectrum for a 642 simulation with the
pseudospectraland spectral simulation (from ref. [2]). (solid line)
and lattice Boltzmann method (dotted line) (from ref. [2]).
maximum wavenumber a flat spectrum sets in. It is remarkable
that the landmark wavenumber for thislack of dissipation is
basically the same in the two cases. The last step, and the most
severe one, of thisanalysis was focused on the ability of LBE to
reproduce the inertial statistical properties, where theenergy
spectrum has the form of a power law E(k) = k~. The universality of
the exponent a is stillunder debate. The numerical parameters were
chosen in such a way as to yield a nominal Reynoldsnumber of about
5000 (based on the global size of the computational box). The
energy spectrum isshown in fig. 11 from which no clear evidence of
a scaling regime can be deduced. This contrasts withprevious
findings of k3 spectra observed in pseudo-spectral simulations with
the same number of gridpoints [51]. A tentative explanation of this
discrepancy can be traced back to the use in the PSsimulation of
superviscosity terms proportional to 48, which reduce dissipation
in the high-frequencyregion of the spectrum, and inverse
dissipation terms 41 which enhance dissipation at large
scales.Obviously, none of these mechanisms is active in the LBE
simulation, as witnessed by the absence ofsmall-scale eddies