30.01.2015 Views

On the GE Lattice Boltzmann Problem - SERC

On the GE Lattice Boltzmann Problem - SERC

On the GE Lattice Boltzmann Problem - SERC

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

A priori derivation of lattice <strong>Boltzmann</strong> equations for rotating fluids<br />

Paul J. Dellar ∗<br />

Department of Applied Ma<strong>the</strong>matics and Theoretical Physics,<br />

University of Cambridge, Silver Street, Cambridge CB3 9EW, UK †<br />

(Dated: Submitted 16th October 2000, Revised: 8th December 2001)<br />

<strong>Lattice</strong> <strong>Boltzmann</strong> equations suitable for simulating <strong>the</strong> rotating incompressible Navier-Stokes<br />

equations are constructed from <strong>the</strong> continuum Boltzman equation. The <strong>Boltzmann</strong> equation in a<br />

rotating frame contains a velocity-dependent Coriolis force term, unlike <strong>the</strong> velocity-independent<br />

potential forces considered previously. The microscopic velocity dependence of <strong>the</strong> equilibrium distribution<br />

and Coriolis force is expanded in Hermite polynomials and truncated consistently. In<br />

particular, a higher order contribution from <strong>the</strong> Coriolis force eliminates an o<strong>the</strong>rwise spurious<br />

term in <strong>the</strong> viscous stress due to <strong>the</strong> leading order Coriolis contribution. A modified distribution<br />

function is introduced to construct a fully explicit second order scheme that does not require additional<br />

“spin” steps. Extension to <strong>the</strong> rotating shallow water and planetary geostrophic equations is<br />

straightforward. Numerical experiments are presented for flow in a rotating channel.<br />

PACS numbers: 05.20.Dd 51.10.+y 47.11.+j 92.10.Ei<br />

I. INTRODUCTION<br />

Methods based on lattice <strong>Boltzmann</strong> equations (LBE) are a promising alternative to conventional numerical methods<br />

for simulating fluid flows [1]. <strong>Lattice</strong> <strong>Boltzmann</strong> methods are straightforward to implement and have proved especially<br />

effective for simulating flows in complicated geometries, and for exploiting parallel computer architectures. For<br />

<strong>the</strong>se reasons, Salmon [2, 3] has recently advocated <strong>the</strong> use of lattice <strong>Boltzmann</strong> methods in oceanography. Most<br />

oceanographic and atmospheric flows are strongly influenced by <strong>the</strong> Earth’s rotation [4, 5], and so require a lattice<br />

<strong>Boltzmann</strong> scheme that incorporates <strong>the</strong> Coriolis force present in a rotating frame fixed to <strong>the</strong> Earth. By contrast,<br />

<strong>the</strong> centrifugal force is usually negligible in geophysical applications.<br />

The compressible Navier-Stokes equations in a frame rotating with constant angular velocity Ω, neglecting <strong>the</strong><br />

centrifugal force, are<br />

∂ t ρ + ∇· (ρu) = 0,<br />

∂ t (ρu) + ∇· (pI + ρuu) + 2ρΩ×u = ∇·(2µS),<br />

(1a)<br />

(1b)<br />

where <strong>the</strong> viscous stress has been written in terms of <strong>the</strong> dynamic viscosity µ and strain tensor S. For an ideal<br />

monatomic gas, S αβ = 1 2 (∂ αu β + ∂ β u α − 2 3 δ αβ∇·u), so that S αα = 0 in three dimensions. We follow [1] in using<br />

Greek indices for vector components, reserving Roman indices for labelling discrete velocity vectors. The relative<br />

importance of <strong>the</strong> viscous stress is denoted by <strong>the</strong> Reynolds number Re = uL/ν, where L is some lengthscale of <strong>the</strong><br />

flow and ν = µ/ρ is <strong>the</strong> kinematic viscosity. The term 2ρΩ×u is <strong>the</strong> Coriolis force. In geophysical applications, Ω is<br />

often taken to be just <strong>the</strong> component of <strong>the</strong> angular velocity parallel to <strong>the</strong> local gravity vector, and thus varies with<br />

latitude over <strong>the</strong> surface of a sphere [4, 5].<br />

<strong>Lattice</strong> <strong>Boltzmann</strong> equations are most commonly used to simulate nearly incompressible flows, with Mach number<br />

Ma = |u|/c s ≪ 1, where c s is <strong>the</strong> sound speed. Solutions of Eqs. (1a-b) <strong>the</strong>n approximate solutions of <strong>the</strong><br />

incompressible Navier-Stokes equations,<br />

∇· u = 0, (2a)<br />

∂ t u + u · ∇u + ρ −1<br />

0 ∇p + 2Ω×u = ν∇2 u. (2b)<br />

Density variations are negligible in this limit, ρ = ρ 0 + O(Ma 2 ), so Eq. (1a) implies that ∇·u = O(Ma 2 ). Most lattice<br />

<strong>Boltzmann</strong> equations adopt an iso<strong>the</strong>rmal equation of state, p = c 2 s ρ with constant sound speed c s [1, 6, 7]. This<br />

changes <strong>the</strong> viscous stress to 2µS αβ = µ(∂ α u β + ∂ β u α ). In o<strong>the</strong>r words, an iso<strong>the</strong>rmal fluid possesses a bulk viscosity<br />

∗ Electronic address: pdellar@na-net.ornl.gov<br />

† Now at: OCIAM, Ma<strong>the</strong>matical Institute, 24–29 St Giles’, Oxford, OX1 3LB, UK


µ ′ = (2/3)µ as well as a shear viscosity µ [8]. Since ∇·u = O(Ma 2 ), this difference becomes negligible in <strong>the</strong> low<br />

Mach number limit.<br />

The derivation of <strong>the</strong> Navier-Stokes equations from <strong>the</strong> continuum <strong>Boltzmann</strong> equation in a rotating frame has<br />

caused considerable controversy in <strong>the</strong> past [9–13]. Although <strong>the</strong> correct rotating Navier-Stokes equations are obtained<br />

at <strong>the</strong> first two orders in <strong>the</strong> Chapman-Enskog perturbation expansion based on a small mean free path (see Sec. II),<br />

higher order momentum and heat transport terms are affected by <strong>the</strong> Coriolis force [9, 10]. However, it is to be<br />

expected that <strong>the</strong> properties of a material rotating with respect to an inertial frame will be affected by <strong>the</strong> influence<br />

of Coriolis and centrifugal forces on <strong>the</strong> material’s microscopic dynamics. These perturbations are proportional to<br />

<strong>the</strong> inverse molecular Ekman number E −1 d = 2Ωd 2 /ν, where d is <strong>the</strong> mean free path [12]. While E −1 d is very small<br />

for most real materials, where d is comparable with <strong>the</strong> molecular spacing, <strong>the</strong> same is not necessarily true for lattice<br />

<strong>Boltzmann</strong> models, since d is <strong>the</strong> lattice spacing, and nor is it necessarily true for suspensions of particles in a viscous<br />

fluid [12]. However, numerical experiments indicate that <strong>the</strong> lattice <strong>Boltzmann</strong> equation does demonstrate <strong>the</strong> correct<br />

continuum behaviour, even in fairly unsuitable parameter regimes of modest Reynolds numbers and Mach numbers.<br />

A lattice <strong>Boltzmann</strong> equation (LBE) is a discrete velocity model of <strong>the</strong> continuum <strong>Boltzmann</strong> equation designed<br />

to reproduce <strong>the</strong> necessary structure that leads to <strong>the</strong> Navier-Stokes equations. Although LBEs were originally<br />

constructed empirically as extensions of lattice gas automata (LGA) [14, 15] to continuous distribution functions<br />

[7, 16], it was later realised that <strong>the</strong> most common iso<strong>the</strong>rmal LBEs correspond to systematic truncations of <strong>the</strong><br />

continuum <strong>Boltzmann</strong> equation in velocity space based on tensor Hermite polynomials [17–20]. This construction<br />

leads to particular expressions for <strong>the</strong> discrete equilibrium distributions, whereas <strong>the</strong> moment constraints necessary<br />

to reproduce <strong>the</strong> Navier-Stokes equations usually leave at least one undetermined function [2, 3, 20, 21]. In two<br />

dimensions, <strong>the</strong> Euler equations impose six constraints (one scalar, one vector, one symmetric tensor) which is precisely<br />

right for schemes based on hexagonal lattices, as used in [14–16, 22–24]. For <strong>the</strong> now more common nine speed lattice<br />

illustrated in Fig. 1, this leaves three undetermined functions. Two are constrained by <strong>the</strong> form of <strong>the</strong> viscous stress,<br />

and <strong>the</strong> ninth constraint is need to suppress a grid-scale density instability [25]. For general equations of state this<br />

stability criterion gives different equilibria to those obtained by <strong>the</strong> above Hermite truncation, but <strong>the</strong>y coincide for<br />

iso<strong>the</strong>rmal fluids.<br />

A velocity-space truncation of <strong>the</strong> continuum <strong>Boltzmann</strong> equation was also used [26–30] to incorporate a body force<br />

ρA in <strong>the</strong> Navier-Stokes momentum equation,<br />

∂ t (ρu) + ∇· (pI + ρuu) = ρA + ∇·(2µS). (3)<br />

In this previous work <strong>the</strong> body force was velocity independent, and moreover <strong>the</strong> gradient of a potential. This body<br />

force was intended to simulate a more realistic equation of state than a perfect monatomic gas. <strong>Lattice</strong> <strong>Boltzmann</strong><br />

simulations of incompressible flow driven by pressure gradients, for instance flow through porous media [1, 31],<br />

often use body forces instead because a true pressure gradient would require an unreasonably large density gradient.<br />

Moreover, lattice <strong>Boltzmann</strong> equations typically remains stable for higher Reynolds numbers when <strong>the</strong> flow is driven<br />

by a body force instead of a pressure gradient [32].<br />

In <strong>the</strong> current work A will be a generic body force except where particular properties of <strong>the</strong> Coriolis force ρA =<br />

−2ρΩ×u are indicated. The Coriolis force has been dealt with before [2, 3, 24], but <strong>the</strong>se previous treatments suffer<br />

from an incorrect viscous stress due to <strong>the</strong>ir discrete form of <strong>the</strong> body force. In particular, <strong>the</strong>y do not simulate<br />

rotating Poiseuille flow correctly (see Sec. IX). This error is in addition to <strong>the</strong> usual ∇·(ρuuu) error arising from an<br />

equilibrium truncated at O(u 2 ) in <strong>the</strong> most commond unforced lattice <strong>Boltzmann</strong> equations [6] that may be corrected<br />

by employing more particle speeds [33, 34].<br />

<strong>Lattice</strong> gases with body forces that are linear in <strong>the</strong> particle velocities, notably <strong>the</strong> Coriolis force, were considered<br />

previously in [15]. Since lattice gas populations, and hence momenta, are restricted to discrete values, <strong>the</strong> authors of<br />

[15] proposed a stochastic redistribution of populations at each lattice point designed to produce <strong>the</strong> correct average<br />

momentum change. This forcing scheme does not appear to have been implemented, although a similar stochastic<br />

approach for velocity-independent forcing was tested in [22].<br />

2<br />

II.<br />

THE BOLTZMANN EQUATION WITH A BODY FORCE<br />

The continuum <strong>Boltzmann</strong>-BGK equation with a body force is [35–37],<br />

∂ t f + ξ · ∇f + a · ∇ ξ f = − 1 τ (f − f (0) ), (4)<br />

where f(x, ξ, t) is <strong>the</strong> single-particle distribution function, and ξ <strong>the</strong> microscopic particle velocity. The third term on<br />

<strong>the</strong> left hand side is <strong>the</strong> acceleration a applied to each particle by external forces, where <strong>the</strong> lower case a indicates


a possible dependence on <strong>the</strong> microscopic velocity ξ. For <strong>the</strong> Coriolis force, this acceleration is a = −2Ω×ξ. While<br />

most derivations of <strong>the</strong> continuum <strong>Boltzmann</strong> equation explicitly exclude velocity-dependent body forces, heuristic<br />

justifications for this particular body force may be found in [36] for <strong>the</strong> ma<strong>the</strong>matically equivalent Lorentz force<br />

exerted on charged particles by a uniform magnetic field, and in [10]. They rely on <strong>the</strong> fact that ∇ ξ · a = 0, so<br />

a · ∇ ξ f = ∇ ξ · (af) for all f. A systematic derivation of Eq. (4) from <strong>the</strong> Liouville equation in a rotating frame via<br />

<strong>the</strong> Bogoliubov-Born-Green-Kirkwood-Yvon (BBGKY) hierarchy [35, 38] is given in appendix A.<br />

The right hand side of Eq. (4) uses <strong>the</strong> Bhatnagar-Gross-Krook (BGK) approximation [39] to <strong>Boltzmann</strong>’s original<br />

binary collision term, in which f relaxes towards a Maxwell-<strong>Boltzmann</strong> equilibrium distribution f (0) with a single<br />

relaxation time τ. This equilibrium is<br />

( )<br />

f (0) ρ<br />

=<br />

(2πθ) exp (ξ − u)2<br />

− , (5)<br />

3/2 2θ<br />

where ρ, u and θ are <strong>the</strong> dimensionless macroscopic density, velocity and temperature, in units where <strong>the</strong> particle<br />

masses and <strong>Boltzmann</strong>’s constant are both unity. Velocities are scaled so that <strong>the</strong> iso<strong>the</strong>rmal sound speed c s = θ 1/2 .<br />

The three macroscopic quantities in Eq. (5) are defined by moments of <strong>the</strong> distribution function f,<br />

∫<br />

∫<br />

ρ = fdξ, ρu = ξfdξ, ρθ = 1 ∫<br />

|ξ − u| 2 fdξ, (6)<br />

3<br />

where <strong>the</strong> integrals with respect to ξ are taken over all of R 3 . For given ρ, u and θ, <strong>the</strong> Maxwell-<strong>Boltzmann</strong><br />

distribution minimises <strong>the</strong> <strong>Boltzmann</strong> entropy functional H = ∫ f ln(f)dξ. The simplified BGK collision term on <strong>the</strong><br />

right hand side of Eq. (4), like <strong>Boltzmann</strong>’s original binary collision term, drives <strong>the</strong> distribution function f towards a<br />

local Maxwell-<strong>Boltzmann</strong> equilibrium f (0) while conserving <strong>the</strong> local density, momentum, and temperature (internal<br />

energy). These properties are sufficient to reproduce <strong>the</strong> Navier-Stokes equations [35–38, 40]. The Navier-Stokes<br />

equations also involve two o<strong>the</strong>r macroscopic quantities, <strong>the</strong> stress (or momentum flux density) tensor Π, and <strong>the</strong><br />

equilibrium stress tensor Π (0) , given by <strong>the</strong> second order moments,<br />

∫<br />

∫<br />

Π = ξξfdξ, Π (0) = ξξf (0) dξ = θρI + ρuu. (7)<br />

3<br />

The trace of Π (0) gives <strong>the</strong> equation of state p = θρ = c 2 s ρ. <strong>On</strong>ly <strong>the</strong> trace of <strong>the</strong> stress tensor is conserved by <strong>the</strong><br />

collision term on <strong>the</strong> right hand side of Eq. (4), and <strong>the</strong> difference Π − Π (0) gives rise to a viscous stress.<br />

A. Chapman-Enskog expansion<br />

The Navier-Stokes equations with a body force may be derived from moments of <strong>the</strong> continuum <strong>Boltzmann</strong> equation<br />

in <strong>the</strong> limit of slow variations in space and time via a Chapman-Enskog expansion. Although <strong>the</strong> Chapman-Enskog<br />

expansion itself appears widely in <strong>the</strong> literature [1, 35–38, 40], <strong>the</strong> necessary modifications for a body force, and<br />

especially a velocity dependent body force, seem to be less readily accessible. In particular, <strong>the</strong> usual Navier-Stokes<br />

viscous stress emerges from subtle cancelations between three different terms.<br />

The Chapman-Enskog expansion introduces a small parameter ɛ into <strong>the</strong> collision time, so that Eq. (4) becomes<br />

∂ t f + ξ · ∇f + a · ∇ ξ f = − 1<br />

ɛτ (f − f (0) ). (8)<br />

Thus spatial and temporal derivatives appear at lower order in ɛ than <strong>the</strong> collision term, corresponding to slowly<br />

varying solutions. The parameter ɛ may be identified physically with <strong>the</strong> dimensionless mean free path, or Knudsen<br />

number, but its main purpose is to sidestep <strong>the</strong> moment closure problem that plagues hydrodynamic turbulence.<br />

By assuming a particular form for <strong>the</strong> solution, only moments of <strong>the</strong> known equilibrium distribution f (0) and <strong>the</strong>ir<br />

derivatives in space and time appear [40].<br />

The Chapman-Enskog expansion poses a multiple scale expansion of both f and t in powers of ɛ,<br />

f = f (0) + ɛf (1) + ɛ 2 f (2) + · · · , ∂ t = ∂ t0 + ɛ∂ t1 + · · · , (9)<br />

where t 0 and t 1 are advective and diffusive timescales respectively, with <strong>the</strong> solvability conditions<br />

∫<br />

∫<br />

f (n) dξ = 0, and ξf (n) dξ = 0, for n = 1, 2, . . . . (10)


Thus <strong>the</strong> higher order terms f (1) , f (2) , . . . do not contribute to <strong>the</strong> macroscopic density or momentum. These constraints<br />

determine evolution equations for <strong>the</strong> macroscopic quantities. For simulating low Mach number flows it<br />

∫ is convenient to impose a constant temperature, θ = θ 0 is constant, instead of <strong>the</strong> <strong>the</strong> extra solvability condition<br />

|ξ − u| 2 f (n) dξ = 0 for n = 1, 2, . . . that would yield an evolution equation for θ. These two approaches agree to<br />

O(Ma 2 ), <strong>the</strong> discrepancy being a bulk viscous stress proportional to ∇·u as analysed in [8].<br />

Substituting <strong>the</strong>se expansions into <strong>the</strong> <strong>Boltzmann</strong> equation (8), we obtain<br />

(∂ t0 + ξ · ∇ + a · ∇ ξ ) f (0) = − 1 τ f (1) , (11a)<br />

4<br />

∂ t1 f (0) + (∂ t0 + ξ · ∇ + a · ∇ ξ ) f (1) = − 1 τ f (2) ,<br />

(11b)<br />

at O(1) and O(ɛ). The leading order continuity and momentum equations, Eqs. (1a) and (3) with ν = 0, follow from<br />

<strong>the</strong> first two moments of Eq. (11a),<br />

∫<br />

∂ t0 ρ + ∇· (ρu) + ∇ ξ · (af (0) )dξ = 0,<br />

(12a)<br />

∫<br />

∂ t0 (ρu) + ∇·Π (0) + ξ∇ ξ · (af (0) )dξ = 0,<br />

(12b)<br />

where ρ, u and Π (0) are defined in Eqs. (6) and (7). The right hand sides vanish by virtue of <strong>the</strong> solvability conditions<br />

in Eq. (10). These two equations are equivalent to <strong>the</strong> Euler equations for an inviscid rotating fluid, equations (1a,b)<br />

with ν = 0, since <strong>the</strong> first two moments (1, ξ) of <strong>the</strong> Coriolis term are 0 and 2ρΩ×u respectively (see Appendix C).<br />

In <strong>the</strong> non-iso<strong>the</strong>rmal case an evolution equation for <strong>the</strong> temperature would result from multiplying Eqs. (11a,b) by<br />

|u − ξ| 2 and integrating over ξ [8, 35, 36].<br />

At next order in ɛ, from Eq. (11b) and <strong>the</strong> solvability conditions, we obtain<br />

∫<br />

∂ t1 ρ + ∇ ξ · (af (1) )dξ = 0,<br />

(13a)<br />

∫<br />

∂ t1 (ρu) + ∇·Π (1) + ξ∇ ξ · (af (1) )dξ = 0.<br />

(13b)<br />

The body force term in Eq. (13a) vanishes, being an exact divergence, so <strong>the</strong> correct continuity equation (1a) is<br />

recovered to <strong>the</strong> first two orders in ɛ. Similarly, <strong>the</strong> third term in Eq. (13b) vanishes from <strong>the</strong> solvability conditions<br />

(see Appendix B).<br />

The stress Π (1) = ∫ ξξf (1) dξ is given, from <strong>the</strong> ξξ moment of Eq. (11a), by<br />

[<br />

(∫ ) ∫<br />

]<br />

Π (1) = −τ ∂ t0 Π (0) + ∇· ξξξf (0) dξ + ξξ∇ ξ · (af (0) )dξ , (14)<br />

that reduces (see Appendix B) to <strong>the</strong> Newtonian viscous stress Π (1)<br />

αβ<br />

= −θτρ (∂ αu β + ∂ β u α ). The multiple scales<br />

expansion in time determines ∂ t0 Π (1) via <strong>the</strong> known quantities ∂ t0 ρ and ∂ t0 (ρu). Thus if τ = ν/θ <strong>the</strong> viscous<br />

Navier-Stokes momentum equation (3) is recovered from <strong>the</strong> continuum <strong>Boltzmann</strong> equation at this order. The<br />

disappearance of <strong>the</strong> body force from <strong>the</strong> stress Π (1) relies upon an exact cancelation between <strong>the</strong> last term in<br />

Eq. (14) and a contribution to ∂ t0 Π (0) from <strong>the</strong> body force appearing in <strong>the</strong> leading order momentum equation.<br />

B. Moments of <strong>the</strong> body force<br />

∫ The above derivation of <strong>the</strong> Navier-Stokes equations with a body force contains <strong>the</strong> moments ρ, ρu, Π (0) , and<br />

ξξξf (0) dξ of <strong>the</strong> equilibrium distribution. The body force term a∇ ξ f = ∇ ξ · (af) also only appears via its<br />

moments, <strong>the</strong> first three (1,ξ,ξξ) moments given by<br />

∫<br />

∇ ξ · (af (0) )dξ = 0,<br />

(15a)<br />

∫<br />

ξ∇ ξ · (af (0) )dξ = −ρA,<br />

(15b)<br />

∫<br />

ξξ∇ ξ · (af (0) )dξ = −ρ(Au + uA),<br />

(15c)


where A is <strong>the</strong> macroscopic acceleration due to <strong>the</strong> body force. For velocity-independent body forces A = a. For <strong>the</strong><br />

velocity-dependent Coriolis force, a = −2Ω×ξ and A = −2Ω×u as expected.<br />

In previous work [26–29] <strong>the</strong> acceleration a did not depend upon <strong>the</strong> microscopic velocity ξ, so <strong>the</strong> required three<br />

moments (15a-c) followed automatically from an integration by parts and <strong>the</strong> use of Eq. (6). Moreover, <strong>the</strong>se moments<br />

held for all distributions f, not just for <strong>the</strong> equilibrium distribution f (0) . In appendix C we show that <strong>the</strong>se three<br />

moments of ∇ ξ · (af (0) ) do also hold for <strong>the</strong> Coriolis force. However, <strong>the</strong> second moment equation (15c) does not<br />

hold for general distribution functions f, so <strong>the</strong> Coriolis force contributes to <strong>the</strong> so-called Burnett terms. These are<br />

higher order corrections to <strong>the</strong> Navier-Stokes equations arising from f (2) and higher terms in <strong>the</strong> Chapman-Enskog<br />

expansion [9, 10].<br />

5<br />

III.<br />

BOLTZMANN EQUATION WITH DISCRETE VELOCITY SPACE<br />

The above derivation of <strong>the</strong> rotating Navier-Stokes equations from <strong>the</strong> continuum <strong>Boltzmann</strong> equation (4) via<br />

<strong>the</strong> Chapman-Enskog expansion requires <strong>the</strong> first four moments (1, ξ, ξξ, ξξξ) of <strong>the</strong> equilibrium distribution f (0) ,<br />

and <strong>the</strong> first three moments (1, ξ, ξξ) of <strong>the</strong> body force a · ∇ ξ f (0) . The lattice <strong>Boltzmann</strong> philosophy restricts <strong>the</strong><br />

microscopic velocity ξ to a discrete set {ξ 0 , . . . , ξ N }, and replaces f(x, ξ, t) by a discrete set of functions f i (x, t),<br />

while reproducing <strong>the</strong> moment structure of <strong>the</strong> continuum <strong>Boltzmann</strong> equation as closely as possible In particular <strong>the</strong><br />

macroscopic variables, now given by <strong>the</strong> discrete moments<br />

N∑<br />

N∑<br />

N∑<br />

ρ = f i , ρu = ξ i f i , Π = ξ i ξ i f i , (16)<br />

i=0<br />

i=0<br />

should satisfy <strong>the</strong> same Navier-Stokes equations as <strong>the</strong> continuum moments in <strong>the</strong> last section when <strong>the</strong> f i evolve<br />

according to <strong>the</strong> lattice <strong>Boltzmann</strong> equation<br />

i=0<br />

∂ t f i + ξ i · ∇f i = − 1 τ (f i − f (0)<br />

i ) + R i , for i = 0, . . . , N. (17)<br />

The body force term a · ∇ ξ f has been replaced by some source terms R i . The Chapman-Enskog expansion of<br />

Sec. II proceeds slightly differently if R i depends only upon <strong>the</strong> macroscopic ρ and u, since a · ∇ ξ f (0) is replaced by<br />

−R i = −R (0)<br />

i , and <strong>the</strong> a · ∇ ξ f (n) vanish for n = 1, 2, . . .. The analogues of (11a,b) are<br />

(∂ t0 + ξ i · ∇)f (0)<br />

i = − 1 τ f (1)<br />

i + R i , (18a)<br />

∂ t1 f (0) + (∂ t0 + ξ i · ∇)f (1)<br />

i = − 1 τ f (2)<br />

i , (18b)<br />

so <strong>the</strong> explicit a · ∇ ξ f (1) body force terms in (13a,b) that were shown to vanish in appendix B are now absent. The<br />

required constraints on f (0)<br />

i and R i are thus (from Eqs. 6, 7, 15a-c)<br />

N∑<br />

i=0<br />

f (0)<br />

i = ρ,<br />

N∑<br />

i=0<br />

ξ i f (0)<br />

i<br />

= ρu,<br />

N∑<br />

i=0<br />

ξ i ξ i f (0)<br />

i = θρI + ρuu, (19)<br />

N∑<br />

i=0<br />

ξ α ξ β ξ γ f (0)<br />

i = ρu α u β u γ + θρ (u α δ βγ + u β δ γα + u γ δ αβ ) , (20)<br />

N∑<br />

R i = 0,<br />

i=0<br />

N∑<br />

ξ i R i = ρA,<br />

i=0<br />

N∑<br />

ξ i ξ i R i = ρ(Au + uA). (21)<br />

i=0<br />

The ρu α u β u γ term in Eq. (20) is often dropped, being O(Ma 3 ), as explained in Appendix B.<br />

In order to motivate <strong>the</strong> following calculations, many previous lattice <strong>Boltzmann</strong> schemes with body forces have<br />

implicitly set <strong>the</strong> second moment in Eq. (15c) or Eq. (21) to zero, removing <strong>the</strong> last term in Eq. (14). These schemes<br />

<strong>the</strong>refore produce <strong>the</strong> incorrect viscous stress<br />

Π (1) = −τθρ [ ∇u + (∇u) T] − τρ(uA + Au). (22)


6<br />

6<br />

2<br />

5<br />

3<br />

0<br />

1<br />

7<br />

4<br />

8<br />

FIG. 1: The nine particle speeds in <strong>the</strong> 2D square lattice. Integrating <strong>the</strong> lattice <strong>Boltzmann</strong> equation along a characteristic for<br />

a timestep ∆t in Sec. VI is equivalent to moving particles from one lattice point to ano<strong>the</strong>r.<br />

Luo [26, 27] drew attention to <strong>the</strong> second moment Eq. (15c) of <strong>the</strong> continuum body force, and observed that most<br />

previous work had implicitly set <strong>the</strong> analogous discrete moment to zero. However, Luo [26, 27] seemed to have been<br />

motivated only by a desire for a truncation order consistent with <strong>the</strong> usual moment expansion of <strong>the</strong> equilibrium<br />

distribution (see Sec. IV), and did not exhibit a concrete error in previous work comparable to <strong>the</strong> second term in<br />

Eq. (22).<br />

No unexpected effects are visible in forced Poiseuille flow, <strong>the</strong> most common test problem [32, 41, 42], because<br />

<strong>the</strong> spurious stress has zero divergence. In this geometry <strong>the</strong> spurious stress −τρ(Au + uA) = (−2τρAu)ŷŷ, ŷ<br />

being a unit vector in <strong>the</strong> streamwise direction. The divergence of this stress vanishes because τ, ρ, u and A are all<br />

independent of <strong>the</strong> streamwise coordinate y. By contrast, <strong>the</strong> velocity profile for rotating Poiseuille flow with <strong>the</strong><br />

most common body force term, as in [2, 3, 24], deviates from <strong>the</strong> expected parabola (see Sec. IX) by an amount in<br />

agreement with <strong>the</strong> deviation due to <strong>the</strong> second term in Eq. (22).<br />

IV.<br />

UNFORCED NINE SPEED LATTICE BOLTZMANN EQUATION<br />

The most common scheme in two dimensions uses nine particle speeds arranged on a square lattice as shown in<br />

Fig. 1. Equations (19) impose six constraints on <strong>the</strong> nine discrete equilibria f (0)<br />

i , and <strong>the</strong> form of <strong>the</strong> viscous stress<br />

imposes only two more. This leaves one undetermined function that must be chosen to suppress a grid-scale density<br />

instability [25]. Although this is not how it was originally constructed, <strong>the</strong> most common nine speed lattice <strong>Boltzmann</strong><br />

scheme for iso<strong>the</strong>rmal fluids [7] coincides with a systematic truncation of <strong>the</strong> continuum <strong>Boltzmann</strong> equation in velocity<br />

space [17, 18], and this is <strong>the</strong> procedure we use below. However, it should be pointed out that this procedure leads<br />

to unstable schemes for o<strong>the</strong>r barotropic equations of state like <strong>the</strong> shallow water equations [25], even though <strong>the</strong><br />

shallow water equations also have a continuum kinetic formulation [43, 44].<br />

In <strong>the</strong> low Mach number limit, |u| ≪ c 2 s = θ, <strong>the</strong> exact Maxwell-<strong>Boltzmann</strong> distribution (5) may be expanded as<br />

(<br />

f (0) = ρw(ξ) 1 + ξ · u<br />

)<br />

(ξ · u)2<br />

+<br />

θ 2θ 2 − u2<br />

+ O(u 3 ), (23)<br />

2θ<br />

where w(ξ) is <strong>the</strong> weight function<br />

w(ξ) = (2πθ) −D/2 exp ( −ξ 2 /2θ ) . (24)<br />

As explained in appendix D, this series expansion in u is equivalent to retaining <strong>the</strong> first three terms in an expansion<br />

of <strong>the</strong> Maxwell-<strong>Boltzmann</strong> distribution in tensor Hermite polynomials [17, 18, 45], <strong>the</strong> coefficients being given by


<strong>the</strong> moments in Eqs. (6). These Hermite polynomials are mutually orthogonal with respect to <strong>the</strong> weighted inner<br />

product defined by <strong>the</strong> Gaussian weight function w(ξ). The ρu α u β u γ term in Eq. (20) disappears to this order of<br />

approximation.<br />

Each moment of this approximate f (0) that appears in <strong>the</strong> continuum <strong>the</strong>ory now comprises <strong>the</strong> integral of a<br />

polynomial p(ξ) of degree five or less in ξ multiplying <strong>the</strong> weight function w(ξ). These integrals may be evaluated<br />

exactly using a Gaussian quadrature formula based on <strong>the</strong> Hermite polynomials,<br />

∫<br />

p(ξ) exp (−ξ 2 /2θ)dξ =<br />

N∑<br />

w i p(ξ i ), (25)<br />

where <strong>the</strong> points ξ i are <strong>the</strong> quadrature points, and <strong>the</strong> coefficients w i are <strong>the</strong> corresponding weights [46]. It is sufficient<br />

to use a three point Gaussian quadrature separately for <strong>the</strong> ξ x and ξ y coordinates [17, 18]. The quadrature points<br />

form an integer lattice, with ξ x , ξ y ∈ {−1, 0, 1} as illustrated in Fig. 1, in units where θ = 1 3<br />

. This is where <strong>the</strong><br />

iso<strong>the</strong>rmal (constant θ) approximation is needed to make <strong>the</strong> lattice vectors uniform in length.<br />

The one dimensional weights { 1 3 , 2 3 , 1 3<br />

} combine to give<br />

⎧<br />

⎪⎨ 4/9, i=0,<br />

w i = 1/9, i=1,2,3,4,<br />

(26)<br />

⎪⎩<br />

1/36, i=5,6,7,8,<br />

and <strong>the</strong> discrete equilibria are [1, 7, 17, 18]<br />

f (0)<br />

i<br />

= w i ρ<br />

i=0<br />

(1 + 3ξ i · u + 9 2 (ξ i · u) 2 − 3 2 u2 )<br />

, (27)<br />

from substituting ξ = ξ i and w(ξ) = w i in Eq. (23). Although <strong>the</strong> results follow from <strong>the</strong> above construction via<br />

Gaussian quadratures, we may also verify that Eq. (27) has <strong>the</strong> required discrete moments given in Eqs. (19) and (20)<br />

(albeit without <strong>the</strong> ρu α u β u γ term) with <strong>the</strong> aid of identities such as [21]<br />

7<br />

8∑<br />

w i ξ i = 0,<br />

i=0<br />

8∑<br />

w i ξ i ξ i = 1 3 I,<br />

i=0<br />

8∑<br />

w i ξ i ξ i ξ i = 0. (28)<br />

i=0<br />

The equilibria in Eq. (27) are not <strong>the</strong> only ones with <strong>the</strong> necessary moments, Eqs. (19) and (20), but <strong>the</strong>y are <strong>the</strong><br />

unique equilibria determined by <strong>the</strong> stability requirement in [25]. The fact that <strong>the</strong> truncated Hermite expansion<br />

satisfies this requirement for an iso<strong>the</strong>rmal equation of state (only) appears to be coincidental.<br />

The factorisation of <strong>the</strong> two-dimensional integral explains why we need nine speeds instead of <strong>the</strong> more obvious<br />

five, namely four along <strong>the</strong> coordinate axes plus one rest particle. The extra diagonal speeds renders <strong>the</strong>se lattice<br />

<strong>Boltzmann</strong> equations genuinely multidimensional, whereas most conventional upwind schemes require fur<strong>the</strong>r work in<br />

more than one space dimension [47, 48]. There is also an alternative two-dimensional quadrature using an equilateral<br />

triangular lattice, with speeds on <strong>the</strong> six vertices of a hexagon as in [14–16, 22–24], but numerical experiments suggest<br />

that <strong>the</strong> nine speed square lattice remains stable at higher Reynolds numbers [21].<br />

V. EXPANSION OF THE BODY FORCE<br />

Luo [26] proposed using a similar low Mach number, or Hermite polynomial, expansion for <strong>the</strong> a · ∇ ξ f term,<br />

a · ∇ ξ f = −ρw(ξ)θ −1 [ (ξ − u) + θ −1 (ξ · u)ξ ] · A + O(u 3 ), (29)<br />

where A is assumed to be O(u). The coefficients of <strong>the</strong> expansion in u and ξ have been chosen so that <strong>the</strong> first<br />

three moments of <strong>the</strong> right hand side Eq. (29) are exactly as in (15a-c). This formula may be derived by substituting<br />

<strong>the</strong> moments from Eqs. (15a-c) as coefficients of an expansion in orthogonal Hermite polynomials, as indicated in<br />

appendix D. A similar formula appeared in [29], though <strong>the</strong>se authors chose a different weight function proportional<br />

to exp(−ξ 2 /2) that ignored <strong>the</strong> θ dependence of <strong>the</strong> exponent in <strong>the</strong> Maxwell-<strong>Boltzmann</strong> distribution (see appendix<br />

D). A discrete formula follows from substituting ξ = ξ i and w(ξ) = w i as for <strong>the</strong> equilibrium distribution above,<br />

R i = −ρw i θ −1 [ (ξ i − u) + θ −1 (ξ i · u)ξ i<br />

]<br />

· A. (30)


Although Luo’s derivation relied upon a being independent of ξ, <strong>the</strong> formula (29) may also be used for <strong>the</strong> Coriolis<br />

force,<br />

and in discrete form<br />

a · ∇ ξ f = ρw(ξ)θ −1 ( 1 + θ −1 ξ · u ) ξ · (2Ω×u) + O(u 3 ), (31)<br />

R i = −ρw i θ −1 ( 1 + θ −1 ξ i · u ) ξ i · (2Ω×u), (32)<br />

because <strong>the</strong> first three moments of a · ∇ ξ f (0) with <strong>the</strong> Coriolis force a = −2Ω×ξ still have <strong>the</strong> required form as in<br />

Eqs. (15a-c). As with <strong>the</strong> discrete equilibria in Sec. IV, each of <strong>the</strong>se formulas based on <strong>the</strong> Hermite expansion is only<br />

one of many possibilities with <strong>the</strong> required moments. In two dimensions, Eqs. (15a-c) impose only six constraints on<br />

<strong>the</strong> R i , but <strong>the</strong>re are typically nine independent functions.<br />

Luo [26] also noted that <strong>the</strong> simpler forcing term<br />

a · ∇ ξ f = −ρw(ξ)θ −1 ξ · A + O(u 2 ), (33)<br />

is often used [3, 24, 30, 42], and amounts to setting <strong>the</strong> second moment (15c) of <strong>the</strong> true forcing term a · ∇ ξ f to zero.<br />

As shown in Sec. III this omission gives rise to a spurious contribution to <strong>the</strong> viscous stress as in Eq. (22). This may<br />

also be seen in <strong>the</strong> energy equation derived from <strong>the</strong> trace of <strong>the</strong> second moment of <strong>the</strong> <strong>Boltzmann</strong> equation. The<br />

trace of Eq. (14) gives (see [8] for details)<br />

( 1<br />

∂ t0<br />

2 ρu2 + 3 ) ( 1<br />

2 θρ + ∇·<br />

2 ρu2 u + 5 )<br />

2 θρu − ρA · u = − 1 2 TrΠ(1) , (34)<br />

where −ρA · u on <strong>the</strong> left hand side accounts for <strong>the</strong> work done by <strong>the</strong> body force ρA. This term disappears when <strong>the</strong><br />

approximation (33) is used for <strong>the</strong> body force. Since Eq. (34) in fact contains no new information for an iso<strong>the</strong>rmal<br />

fluid (because ∂ t0 ρ, ∂ t0 u, and ∂ t0 θ = 0 are already known) consistency with <strong>the</strong> momentum equation requires that<br />

ρA · u appears in − 1 2 TrΠ(1) on <strong>the</strong> right hand side, in agreement with Eq. (22). For a <strong>the</strong>rmal fluid <strong>the</strong> situation<br />

is more serious, because <strong>the</strong> extra solvability condition TrΠ (1) = 0 turns Eq. (34) into an evolution equation for <strong>the</strong><br />

temperature θ (again, see [8] for details). Thus <strong>the</strong> work done by <strong>the</strong> body force that is not accounted for by <strong>the</strong><br />

missing −ρA · u term incorrectly goes into changing <strong>the</strong> internal energy or temperature.<br />

In an alternative approach, He et al. [28] used <strong>the</strong> fact that <strong>the</strong> exact Maxwell-<strong>Boltzmann</strong> equilibrium distribution<br />

(5) satisfies<br />

8<br />

to approximate <strong>the</strong> forcing term by<br />

∇ ξ f (0) = − ξ − u f (0) , (35)<br />

θ<br />

a · ∇ ξ f ≈ a · ∇ ξ f (0) = −θ −1 a · (ξ − u)f (0) , (36)<br />

or in discrete form<br />

R i = −θ −1 a · (ξ i − u)f (0)<br />

i . (37)<br />

For <strong>the</strong> particular case of <strong>the</strong> Coriolis force, we may simply replace a by A = −2Ω×u in Eq. (36), due to <strong>the</strong> vector<br />

identity (Ω×ξ) · (u − ξ) = (Ω×u) · (u − ξ). Using a small Mach number expansion of f (0) , <strong>the</strong> above expression<br />

agrees with Luo’s formula (29) up to O(u 2 ). However, Eq. (36) contains additional terms of O(u 3 ) and higher that<br />

are inconsistent with <strong>the</strong> truncation of f (0) at O(u 2 ).<br />

Martys et al. [29] suggested that <strong>the</strong> ad hoc replacement of f by f (0) in Eq. (36) may be justified because <strong>the</strong> first<br />

two Hermite coefficients of f and f (0) always coincide. In fact, <strong>the</strong> first three moments of Eq. (36) are correct,<br />

∫<br />

− θ −1 a · (ξ − u)f (0) = 0,<br />

∫<br />

− ξθ −1 a · (ξ − u)f (0) = −ρA, (38)<br />

∫<br />

− ξξθ −1 a · (ξ − u)f (0) = −ρ(Au + uA),


for a = A independent of ξ, provided f (0) is taken to be <strong>the</strong> exact Maxwell-<strong>Boltzmann</strong> distribution (5). If instead<br />

f (0) is taken to be <strong>the</strong> approximate equilibrium distribution truncated at O(Ma 2 ), as in Eq. (23), <strong>the</strong> second moment<br />

acquires a spurious extra term,<br />

∫<br />

− ξξθ −1 a · (ξ − u)f (0) = −ρ(Au + uA) − θ −1 ρ(A · u)uu. (39)<br />

9<br />

This extra term is only O(Ma 3 ) so <strong>the</strong> forcing term (36) is still an improvement on <strong>the</strong> simpler force in Eq. (33),<br />

although not as good as Luo’s force (29). The divergence of <strong>the</strong> spurious stress in Eq. (39) typically vanishes for<br />

channel flows of <strong>the</strong> form u = u(x)ŷ, such as Poiseuille or Couette flow, as considered in Sec. IX, and vanishes<br />

identically for <strong>the</strong> Coriolis force because A · u = 0.<br />

VI.<br />

FULLY DISCRETE LATTICE BOLTZMANN EQUATION WITH BODY FORCE<br />

Equation (17) must be approximated in x and t, as well as in ξ, to obtain a fully discrete lattice <strong>Boltzmann</strong> equation.<br />

Integrating Eq. (17) along a characteristic for a time interval ∆t yields<br />

f i (x + ξ i ∆t, t + ∆t) − f i (x, t) =<br />

where <strong>the</strong> g i combine <strong>the</strong> collision and body force terms,<br />

g i (˜x, ˜t) = − 1 τ<br />

(<br />

f i (˜x, ˜t) − f (0)<br />

i<br />

∫ ∆t<br />

0<br />

g i (x + ξ i s, t + s)ds, (40)<br />

)<br />

(˜x, ˜t) + R i (˜x, ˜t). (41)<br />

A second order accurate numerical scheme requires a second order accurate quadrature, for instance <strong>the</strong> trapezium<br />

rule,<br />

∫ ∆t<br />

0<br />

g i (x + ξ i s, t + s)ds = ∆t (<br />

)<br />

g i (x + ξ<br />

2<br />

i ∆t, t + ∆t) + g i (x, t) + O(∆t 3 ). (42)<br />

Unfortunately, g i (x+ξ i ∆t, t+∆t) is not known independently of <strong>the</strong> f i (x+ξ i ∆t, t+∆t), because f (0)<br />

i and usually R i<br />

depend implicitly on <strong>the</strong> f i via <strong>the</strong>ir moments, <strong>the</strong> macroscopic variables ρ and u. Thus a straightforward application<br />

of Eq. (42) to Eq. (40) yields a set of coupled nonlinear algebraic equations for <strong>the</strong> f i at time t + ∆t.<br />

He et al. [28, 30] observed that <strong>the</strong> combined equations (42) and (40) may be rendered fully explicit by a change<br />

of variables. Introducing an alternative set of distribution functions f i defined by<br />

f i (x, t) = f i (x, t) + ∆t<br />

2τ<br />

<strong>the</strong> scheme Eqs. (40) and (42) is algebraically equivalent to <strong>the</strong> fully explicit scheme<br />

f i (x + ξ i ∆t, t + ∆t) − f i (x, t) =<br />

(<br />

)<br />

f i (x, t) − f (0)<br />

i (x, t) − ∆t<br />

2 R i(x, t), (43)<br />

τ∆t<br />

τ + ∆t/2 R ∆t<br />

(<br />

)<br />

i(x, t) −<br />

f<br />

τ + ∆t/2 i (x, t) − f (0)<br />

i (x, t) . (44)<br />

The macroscopic density, momentum and stress are readily reconstructed from moments of <strong>the</strong> f i ,<br />

ρ =<br />

8∑<br />

f i , ρu =<br />

i=0<br />

8∑<br />

i=0<br />

ξ i f i + ∆t (<br />

2 ρA, 1 + ∆t )<br />

Π =<br />

2τ<br />

8∑<br />

ξ i ξ i f i + ∆t<br />

2τ Π(0) + ∆t ρ(Au + uA). (45)<br />

2<br />

In <strong>the</strong> absence of a body force, R i = 0, Eq. (44) is <strong>the</strong> usual form for a lattice <strong>Boltzmann</strong> equation, and resembles<br />

a first order approximation to Eq. (40) except for <strong>the</strong> replacement of τ by τ + 1 2∆t [1]. However, it is perhaps not<br />

always recognised that this simple replacement also implicitly replaces f i in <strong>the</strong> continuum equations with f i in <strong>the</strong><br />

discrete equations, and f i differs by O(∆t) from f i . So <strong>the</strong> strain field, for instance, is not given simply by Π − Π (0)<br />

as it is in <strong>the</strong> continuum equations, where u and Π denote <strong>the</strong> ξ and ξξ moments of f i . For <strong>the</strong> Coriolis force, where<br />

<strong>the</strong> macroscopic acceleration A = −2Ω×u itself depends on u, <strong>the</strong> second of Eqs. (45) may still be solved for u as<br />

(<br />

1 + ∆t 2 |Ω| 2) u = u − ∆tΩ×u + ∆t 2 u · ΩΩ. (46)<br />

i=0


This simplifies to u = u − ∆tΩ×u + O(∆t 2 ), consistent with overall second order accuracy, but <strong>the</strong> exact expression<br />

gave much smaller errors for fixed Ω∆t in numerical experiments.<br />

Our proposed scheme thus comprises Eq. (44) for evolving <strong>the</strong> variables f i as defined at discrete lattice points.<br />

The relaxation time is τ + ∆t/2, τ being chosen so that τθ = ν is <strong>the</strong> desired kinematic viscosity. The equilibrium<br />

distribution f (0)<br />

i and body force term R i , defined by Eqs. (27) and (32) respectively, are evaluated using u and ρ<br />

computed from <strong>the</strong> moments of <strong>the</strong> f i via Eqs. (45). The original variables f i are no longer necessary. The combination<br />

+ τ −1 R i may be regarded as defining a modified equilibrium distribution, one that transforms Eq. (44) into a<br />

conventional lattice <strong>Boltzmann</strong> equation, except <strong>the</strong> modified BGK collision term fails to conserve momentum by<br />

precisely <strong>the</strong> right amount to simulate <strong>the</strong> Coriolis force.<br />

Similar variables f i − 1 2 ∆tR i were introduced previously in [41]. This treatment followed <strong>the</strong> opposite approach<br />

of Taylor-expanding a postulated discrete equation like Eq. (44) to obtain a system of partial differential equations<br />

(PDEs), ra<strong>the</strong>r than viewing Eq. (44) as a finite difference approximation to a known system of PDEs. They [41]<br />

realised that a direct solution of Eq. (44) required an alternative expansion of <strong>the</strong> form<br />

f (0)<br />

i<br />

f i = f (0)<br />

i + ɛ(f (1)<br />

i + g (1)<br />

i ) + ɛ 2 (f (2)<br />

i + g (2)<br />

i ) + · · · , (47)<br />

with f (1)<br />

i , f (2)<br />

i , . . . all taken to be independent of <strong>the</strong> body force. The solvability conditions in Eq. (10) applied only to<br />

<strong>the</strong>se functions, while g (1)<br />

i was assumed to be linear in <strong>the</strong> body force, and subsequently found to be g (1)<br />

i = − 1 2 ∆tR i.<br />

Salmon [2] originally solved <strong>the</strong> combination of Eqs. (40) and (42) using a second order predictor-corrector scheme<br />

to estimate f i (x + ξ i ∆t, t + ∆t) before evaluating <strong>the</strong> formula Eq. (42). In a subsequent paper, Salmon [3] noted that<br />

this predictor-corrector scheme required many iterations to converge, especially in three dimensions, and proposed an<br />

improved scheme. This revised scheme is equivalent to a second order Strang splitting [49, 50] that interleaves one<br />

timestep of a conventional discretization of <strong>the</strong> unforced lattice <strong>Boltzmann</strong> equation,<br />

∂ t f i + ξ i · ∇f i = − 1 τ (f i − f (0)<br />

i ), (48)<br />

between two half steps of solving ordinary differential equations for <strong>the</strong> Coriolis terms,<br />

∂ t f i = R i = −3ρw i (1 + 3ξ i · u)ξ i · (2Ω×u). (49)<br />

The two separate half steps are required to achieved global second order accuracy. As indicated below Eq. (45), <strong>the</strong><br />

unforced lattice <strong>Boltzmann</strong> equation (48) may be solved with second order accuracy by absorbing <strong>the</strong> O(∆t) error<br />

into a redefinition of τ [1]. The ordinary differential equations (49) may be solved by first solving ∂ t u = A for u(t),<br />

after which <strong>the</strong> right hand side becomes a known function of t that may be integrated. The additional 3ξ i · u in <strong>the</strong><br />

R i term renders Eq. (49) quadratic in u, so <strong>the</strong> integrated expression is more complicated than in [3].<br />

10<br />

VII.<br />

PLANETARY <strong>GE</strong>OSTROPHIC AND UNSTEADY STOKES EQUATIONS<br />

In geophysical fluid dynamics, <strong>the</strong> momentum equation (1b) is commonly nondimensionalised as<br />

Ro [∂ t (ρu) + ∇·(ρuu)] + ∇p + ρ ˆΩ×u = E∇·(2ρS). (50)<br />

The Rossby number Ro = u/(2ΩL) denotes <strong>the</strong> relative importance of inertial and Coriolis effects, where L is a<br />

typical lengthscale and ˆΩ is a unit vector parallel to Ω. The Ekman number E = ν/(2ΩL 2 ) is <strong>the</strong> inverse Reynolds<br />

number based on <strong>the</strong> Coriolis velocity scale 2ΩL. For large scale geophysical applications <strong>the</strong> Rossby number is often<br />

sufficiently small that <strong>the</strong> inertial terms may be discarded, leaving <strong>the</strong> geostrophic momentum equation [4, 5],<br />

∇p + ρ ˆΩ×u = E∇·(2ρS). (51)<br />

This is usually combined with a Boussinesq equation for temperature to form <strong>the</strong> planetary geostrophic equations,<br />

although <strong>the</strong> viscous term is often replaced or supplemented by an algebraic damping term such as −λρu [4, 5].<br />

The ρuu term in Eq. (50), which comes from <strong>the</strong> ρuu term in <strong>the</strong> equilibrium stress Π (0) , may be removed [2, 3, 31]<br />

by truncating <strong>the</strong> small Mach number expansion of <strong>the</strong> equilibrium distribution at O(u) instead of O(u 2 ), leading to<br />

f (0)<br />

i = w i ρ (1 + 3ξ i · u) , (52)


instead of Eq. (27). The lattice <strong>Boltzmann</strong> equation with this equilibrium distribution solves <strong>the</strong> rotating compressible<br />

unsteady Stokes equations in <strong>the</strong> form<br />

∂ t ρ + ∇· (ρu) = 0, (53)<br />

∂ t (ρu) + ∇p + 2ρΩ×u = ∇·[ν(∇(ρu) + ∇(ρu) T )].<br />

In principle <strong>the</strong> time derivative ∂ t (ρu) should also be discarded, since it is usually of comparable magnitude to <strong>the</strong><br />

∇·(ρuu) term, but this is not possible within <strong>the</strong> confines of an explicit lattice <strong>Boltzmann</strong> model.<br />

While we still recover <strong>the</strong> rotating incompressible unsteady Stokes equations in <strong>the</strong> small Mach number limit, <strong>the</strong><br />

density gradient now enters <strong>the</strong> viscous stress at finite Mach numbers because it is no longer canceled by terms<br />

previously present in ∂ t0 (ρuu). The ∇ρ terms may be eliminated using <strong>the</strong> leading order (inviscid) momentum<br />

equation, but this now brings in extra terms proportional to ∂ t (ρu). Steady states will however be solutions of<br />

∇p + 2ρΩ×u = ∇·(νρ [ ∇u + (∇u) T] ). (54)<br />

provided <strong>the</strong> Coriolis force is included with <strong>the</strong> improved body force term Eq. (29). It is perhaps surprising that <strong>the</strong><br />

extra term in <strong>the</strong> body force is still needed, but this is because <strong>the</strong> viscous stress Π (1) only involves <strong>the</strong> time derivative<br />

of <strong>the</strong> leading order stress Π (0) . Thus in a steady state <strong>the</strong> viscous stress is unchanged by <strong>the</strong> omission of <strong>the</strong> ∂ t0 ρuu<br />

term in ∂ t0 Π (0) , and would still contain <strong>the</strong> spurious τρ(Au + uA) term.<br />

11<br />

VIII.<br />

SHALLOW WATER EQUATIONS<br />

The shallow water equations (SWE) are commonly used in geophysical fluid dynamics as a prototype for studying<br />

phenomena like wave-vortex interactions present in more complex models. They model a thin layer of incompressible<br />

fluid with a free surface, and are equivalent to <strong>the</strong> two dimensional compressible Navier-Stokes equations, with equation<br />

of state p = 1 2 gρ2 , when <strong>the</strong> density ρ is identified with <strong>the</strong> layer height, ra<strong>the</strong>r than <strong>the</strong> (constant) density of <strong>the</strong><br />

fluid composing <strong>the</strong> layer [4, 5]. A nine speed SWE lattice <strong>Boltzmann</strong> formulation has been devised by Salmon [2].<br />

The equilibrium distributions are<br />

(<br />

f (0) 9<br />

0 = w 0 ρ<br />

4 − 15 8 gρ − 3 )<br />

2 u2 , (55)<br />

( 3<br />

2 gρ + 3ξ i · u + 9 2 (ξ i · u) 2 − 3 )<br />

2 u2<br />

f (0)<br />

i<br />

= w i ρ<br />

for i ≠ 0,<br />

with corresponding moments ρ, ρu and Π (0) = 1 2 gρ2 I + ρuu. <strong>On</strong>ly <strong>the</strong> equation of state, and hence <strong>the</strong> constant term<br />

in <strong>the</strong> expansion of f (0) in powers of u, differs from <strong>the</strong> iso<strong>the</strong>rmal Navier-Stokes distributions. However Eq. (55)<br />

is not <strong>the</strong> truncated Hermite expansion with <strong>the</strong>se moments. The truncated Hermite equilibria are unstable to a<br />

grid-scale instability associated with <strong>the</strong> remaining degree of freedom that is not constrained by <strong>the</strong> eight moments<br />

appearing in <strong>the</strong> Chapman-Enskog expansion [25].<br />

The viscous force takes <strong>the</strong> unusual form [2, 25]<br />

∇·Π (1) = −τθ [ ∇ 2 (ρu) + 2∇∇·(ρu) + O(Ma 2 /Fr 2 ) ] , (56)<br />

where <strong>the</strong> Froude number Fr = u/ √ gρ is <strong>the</strong> ratio of <strong>the</strong> fluid speed to <strong>the</strong> surface gravity wave speed. The O(Ma 2 /Fr 2 )<br />

term is due to <strong>the</strong> time derivative ∂ t0 Π (0) , and so vanishes for steady states. The cancelation of <strong>the</strong> density gradient<br />

that gives a Newtonian viscous stress (see appendix B) does not occur with <strong>the</strong> shallow water equation of state (see<br />

[25] for details). However, <strong>the</strong> O(Ma 2 /Fr 2 ) term is asymptotically smaller than <strong>the</strong> o<strong>the</strong>r terms in <strong>the</strong> normal lattice<br />

<strong>Boltzmann</strong> limit of small Mach number, and may be made arbitrarily smaller by making <strong>the</strong> Mach number sufficiently<br />

small, equivalent to taking sufficiently small timesteps.<br />

The explicit lattice <strong>Boltzmann</strong> model constructed in <strong>the</strong> previous section works equally well for <strong>the</strong> rotating shallow<br />

water equations if <strong>the</strong> previous discrete equilibrium distributions Eq. (27) are replaced by those in Eq. (55). Discarding<br />

<strong>the</strong> O(u 2 ) terms from Eq. (55) gives a a planetary geostrophic form of <strong>the</strong> shallow water equations.<br />

IX.<br />

NUMERICAL EXPERIMENTS<br />

We illustrate <strong>the</strong> discrepancy due to <strong>the</strong> simpe body force term Eq. (33) for simulating Poiseuille flow in a two<br />

dimensional rotating channel. The flow is driven by a spatially uniform body force F ŷ directed along <strong>the</strong> channel,


12<br />

FIG. 2: Bounce back boundary conditions assign incoming population densities from points (gray circle) outside <strong>the</strong> boundary<br />

(thick line) by reversing outgoing particles from points inside <strong>the</strong> boundary (black circle). The effective boundary (thick line)<br />

is half way between lattice points.<br />

and adopts a steady state depending only upon <strong>the</strong> cross-channel coordinate x. The dimensionless flow parameters,<br />

low Reynolds number and moderate Mach number, are chosen to highlight <strong>the</strong> discrepancy due to <strong>the</strong> spurious body<br />

force. The discrepancy is correspondingly smaller, though still present, in more common parameter regimes with<br />

higher Reynolds numbers and lower Mach numbers.<br />

A. Iso<strong>the</strong>rmal Navier-Stokes<br />

Assuming ρ = ρ(x) and u = v(x)ŷ, <strong>the</strong> two-dimensional, iso<strong>the</strong>rmal Navier-Stokes equations (1a,b) simplify to<br />

c 2 ∂ρ<br />

s<br />

∂x = 2ρΩv, −F = ∂ (<br />

µ ∂v )<br />

, (57)<br />

∂x ∂x<br />

where <strong>the</strong> iso<strong>the</strong>rmal equation of state is p = c 2 s ρ. The rotation axis is taken to be <strong>the</strong> z axis, so Ω = Ωẑ. No slip<br />

boundary conditions are v(0) = v(1) = 0. Mass conservation requires ∫ 1<br />

ρ(x)dx = 1 if <strong>the</strong> flow is assumed to have<br />

0<br />

developed from an initial state with unit density.<br />

The analysis is greatly simplified if <strong>the</strong> dynamic viscosity µ is independent of <strong>the</strong> density ρ, as for a dilute monatomic<br />

gas. This surprising result, subsequently verified experimentally, was one of <strong>the</strong> first successes of classical kinetic <strong>the</strong>ory<br />

[38]. To reproduce this property with <strong>the</strong> BGK approximation, for which ν = θτ and µ = ρθτ, it is necessary to take<br />

τ ∝ ρ −1 , making τ a function of x and t instead of a constant. Fortunately, <strong>the</strong> analysis of Sec. VI and appendix B<br />

is unchanged when τ = τ(x, t).<br />

For constant µ, <strong>the</strong> fluid velocity is <strong>the</strong> usual parabolic Poiseuille profile v(x) = F x(1 − x)/(2µ), unaffected by<br />

rotation. This flow gives rise to a Coriolis force in <strong>the</strong> cross-stream (x) direction that is balanced by a pressure and<br />

density gradient, giving<br />

( ΩF x 2 )<br />

(3 − 2x)<br />

ρ(x) = ρ 0 exp<br />

6µc 2 . (58)<br />

s<br />

The constant ρ 0 is chosen so that ∫ 1<br />

ρ(x)dx = 1, an integral that must be evaluated numerically.<br />

0<br />

The unsteady lattice <strong>Boltzmann</strong> scheme derived in Sec. VI was used to simulate a flow starting from rest with<br />

uniform density ρ = 1. Rigid side walls were simulated using <strong>the</strong> “bounce back” boundary conditions [1, 21, 23, 41]<br />

applied directly to <strong>the</strong> f i . For flow aligned with <strong>the</strong> lattice, <strong>the</strong>se boundary conditions have <strong>the</strong> effect of placing <strong>the</strong><br />

rigid wall half a lattice spacing outside <strong>the</strong> lattice point at which <strong>the</strong>y are applied, as illustrated in Fig. 2. This is<br />

why <strong>the</strong> outermost data points in Figs. 3 and 4 do not coincide with <strong>the</strong> boundaries at x = 0, 1. Previous analyses<br />

of <strong>the</strong>se boundary conditions [32, 41] did not have additional R i forcing terms in <strong>the</strong> transformation (43) from f i to<br />

f i , so <strong>the</strong> R i should perhaps be subtracted out before applying <strong>the</strong> bounce back boundary conditions. However, <strong>the</strong><br />

scheme as implemented did converge with second order spatial accuracy as expected.<br />

The transformation from f i to f i giving a fully explicit lattice <strong>Boltzmann</strong> scheme also gives a relation Eq. (45) for<br />

<strong>the</strong> fluid velocity u in terms of u = ∑ i ξ if i . For <strong>the</strong> body force ρA = F ŷ − 2ρΩ×u that itself depends on u, Eq. (45)


13<br />

1<br />

0.8<br />

0.6<br />

v<br />

0.4<br />

0.2<br />

exact solution<br />

simple force<br />

Luo’s force<br />

0<br />

0 0.2 0.4 0.6 0.8 1<br />

x<br />

FIG. 3: The velocity profile for Ω = 50 computed using both <strong>the</strong> simple body force in Eq. (33) and Luo’s improved force in<br />

Eq. (29). The former’s departure from <strong>the</strong> exact parabolic solution is clearly visible. The o<strong>the</strong>r parameters were µ = 0.05,<br />

Ma = √ 3/20 ≈ 0.0866, F = 0.4, using 80 lattice points. <strong>On</strong>ly some lattice points are shown for clarity.<br />

1.1<br />

exact solution<br />

Luo’s force<br />

1.05<br />

ρ<br />

1<br />

0.95<br />

0.9<br />

0 0.2 0.4 0.6 0.8 1<br />

x<br />

FIG. 4: The numerical density profile for Ω = 20 with body force from Eq. (29) compared with <strong>the</strong> exact solution Eq. (58).<br />

For <strong>the</strong>se parameters ρ 0 ≈ 0.9026. The grid used 80 points, only half of which are shown.<br />

implies that<br />

u = ( ū + ∆tΩ¯v + ∆t 2 ΩF/(2ρ) ) / ( 1 + ∆t 2 Ω 2) ,<br />

v = (¯v − ∆tΩū + ∆tF/(2ρ)) / ( 1 + ∆t 2 Ω 2) ,<br />

(59a)<br />

(59b)<br />

where u = (u, v, 0) and u = (ū, ¯v, 0). Numerical accuracy is improved by retaining <strong>the</strong> O(∆t 2 ) terms, although <strong>the</strong><br />

convergence remains formally second order if <strong>the</strong>y are neglected.<br />

Figure 3 shows <strong>the</strong> computed velocity profiles for Ω = 50 with <strong>the</strong> simple forcing, and with Luo’s improved forcing<br />

Eq. (29). The parameters for <strong>the</strong> simulation in Figs. 3 and 4 were µ = 0.05, Ma = √ 3/20 ≈ 0.0866, F = 0.4, and


14<br />

0.025<br />

0.02<br />

measured error<br />

O(δ) approximation<br />

0.015<br />

0.01<br />

0.005<br />

∆ v<br />

0<br />

−0.005<br />

−0.01<br />

−0.015<br />

−0.02<br />

Ω=20 (Luo’s force)<br />

Ω=5<br />

Ω=10<br />

Ω=20<br />

−0.025<br />

0 0.2 0.4 0.6 0.8 1<br />

x<br />

FIG. 5: Deviations from <strong>the</strong> parabolic exact solution for rotating Poiseuille flow. The deviation due to <strong>the</strong> use of <strong>the</strong> simple<br />

body force, and its associated spurious stress, for Ω = 5 agrees well with <strong>the</strong> O(δ) approximation given by Eq. (61). The<br />

agreement is less good at Ω = 20, since more terms in <strong>the</strong> series are required. The deviation for Ω = 20 using Luo’s force (- - -)<br />

is not visible on this plot. All simulations used 80 lattice points, though for clarity not all points are shown.<br />

80 lattice points, <strong>the</strong> particular values of F and µ being chosen to make <strong>the</strong> maximum speed u = 1 at x = 0.5. The<br />

deviation from <strong>the</strong> exact parabolic profile due to <strong>the</strong> spurious stress in <strong>the</strong> simple forcing term Eq. (33) is clearly<br />

visible. Figure 4 shows that <strong>the</strong> density from a numerical experiment with Ω = 20 and Luo’s forcing Eq. (29) agrees<br />

well with <strong>the</strong> analytical expression in Eq. (58). The scaling constant is ρ 0 ≈ 0.9026 for <strong>the</strong>se parameter values.<br />

No detectable difference was found between <strong>the</strong> two different body forces in Eqs. (29) and (36), because <strong>the</strong><br />

divergence of <strong>the</strong> spurious stress at O(Ma 3 ) due to He et al.’s forcing Eq. (36) vanishes in a uniform channel. However,<br />

Luo’s forcing term Eq. (29) is preferable because it lacks this spurious term completely. The extra term ∂ γ (ρu α u β u γ )<br />

at O(Ma 3 ) in <strong>the</strong> viscous stress (see appendix B) also vanishes exactly for this geometry since u = vŷ and ∂ y = 0.<br />

B. Iso<strong>the</strong>rmal Navier-Stokes with spurious stresses<br />

The simple body force in Eq. (33) introduces a spurious stress µc −2<br />

s (Au + uA) into <strong>the</strong> momentum equation. For a<br />

channel geometry <strong>the</strong> divergence of this stress is µc −2<br />

s ∂ x (A x v) = 4µc −2<br />

s Ωv∂ x (v), so <strong>the</strong> modified continuum equations<br />

are<br />

(<br />

c 2 ∂ρ<br />

∂ 2<br />

s<br />

∂x = 2ρΩu, −F = µ v<br />

∂x 2 + 4Ωc−2 s v ∂v )<br />

. (60)<br />

∂x<br />

The latter equation unfortunately has no exact solution, but an asymptotic solution may be found by expanding v(x)<br />

in <strong>the</strong> small parameter δ = ΩF/(µc 2 s ),<br />

v(x) = F (<br />

2µ x(1 − x) 1 + δ<br />

)<br />

30 (6x3 − 9x 2 + x + 1) + O(δ 2 ) . (61)<br />

Figure 5 compares <strong>the</strong> difference between <strong>the</strong> numerical velocity profile using <strong>the</strong> simple force and <strong>the</strong> exact parabolic<br />

solution with <strong>the</strong> O(δ) correction due to <strong>the</strong> spurious stress given by Eq. (61). It shows good agreement for Ω = 5<br />

(δ = 0.3) but <strong>the</strong> agreement is less good for Ω = 20, for which more terms in <strong>the</strong> series in δ are needed. The streamwise<br />

forcing F does not appear on <strong>the</strong> right hand side of Eq. (60), so no unexpected effects are visible in non-rotating<br />

Poiseuille flow.


15<br />

X. CONCLUSION<br />

The hydrodynamic equations derived from <strong>the</strong> continuum <strong>Boltzmann</strong> equation in a rotating frame by <strong>the</strong> Chapman-<br />

Enskog expansion correspond to <strong>the</strong> Navier-Stokes equations with a Newtonian viscous stress. The Coriolis force,<br />

and more generally any body force, disappears from <strong>the</strong> viscous stress via a subtle cancelation of terms between <strong>the</strong><br />

macroscopic momentum equation and <strong>the</strong> second moment of <strong>the</strong> forcing term, Eq. (15c). Thus one extra moment of<br />

<strong>the</strong> forcing term is required beyond that necessary to reproduce <strong>the</strong> correct leading order momentum equation, as it<br />

appears in Eq. (14) for <strong>the</strong> viscous stress. Many previous lattice <strong>Boltzmann</strong> equations for forced flows neglect this<br />

extra moment, and thus produce <strong>the</strong> erroneous viscous stress calculated in Eq. (22). This is in addition to <strong>the</strong> usual<br />

∇·(ρuuu) contribution from using a truncated nine speed equilibrium [6] that may be corrected by employing more<br />

particle speeds [33, 34].<br />

The extra discrepancy was verified by simulating Poiseuille flow in a rotating channel, and precisely corresponds to<br />

<strong>the</strong> calculated error in <strong>the</strong> viscous stress. Conversely, <strong>the</strong> forcing term suggested by Luo [26, 27] that retains one more<br />

order in <strong>the</strong> small u expansion does give a correct viscous stress. No discrepancy is visible in non-rotating Poiseuille<br />

flow because <strong>the</strong> spurious stress has zero divergence, and so has no effect on <strong>the</strong> velocity.<br />

Although <strong>the</strong> Coriolis force in <strong>the</strong> continuum <strong>Boltzmann</strong> equation depends upon <strong>the</strong> microscopic particle velocity<br />

as derived in Appendix A, unlike <strong>the</strong> forces in almost all previous work, but <strong>the</strong> resulting formulas Eqs. (32) and (37)<br />

are identical to those that would be obtained for a force 2Ω×u instead of 2Ω×ξ.<br />

While it might be argued that <strong>the</strong> spurious terms disappear anyway in <strong>the</strong> small Mach number and high Reynolds<br />

number limit, since <strong>the</strong>y are easily removed by a small modification to <strong>the</strong> body force <strong>the</strong>re is no reason not to remove<br />

<strong>the</strong>m. Their removal will only improve <strong>the</strong> accuracy of numerical solutions at fixed Mach number and Reynolds<br />

number, and <strong>the</strong>ir presence is enough to disrupt an attempt to demonstrate that a lattice <strong>Boltzmann</strong> scheme converges<br />

to an intended exact solution, ra<strong>the</strong>r than to a solution of <strong>the</strong> wrong continuum equations as modified by <strong>the</strong> spurious<br />

stress. This paper arose partly out of <strong>the</strong> author’s failure to establish that Salmon’s lattice <strong>Boltzmann</strong> scheme for <strong>the</strong><br />

shallow water equations [2, 3] converged to solutions obtained with conventional numerical methods.<br />

Conversely, it is useful to have quantified <strong>the</strong> error due to <strong>the</strong> use of a simpler forcing term such as Eq. (33). For<br />

instance, in lattice <strong>Boltzmann</strong> formulations of magnetohydrodynamics <strong>the</strong> magnetic field B is typically known at<br />

lattice points, but its derivative J = ∇×B is not. Thus <strong>the</strong> Lorentz force J×B is most easily incorporated [51, 52]<br />

by changing <strong>the</strong> second moment of <strong>the</strong> equilibrium to be<br />

Π (0) = θρI + ρuu + 1 2 |B|2 I − BB. (62)<br />

The last two terms comprise <strong>the</strong> Maxwell stress, with divergence −J×B since ∇·B = 0. Since <strong>the</strong> macroscopic<br />

momentum equation now includes <strong>the</strong> Lorentz force, <strong>the</strong> viscous stress acquires an error −τ [(J×B)u + u(J×B)] as<br />

in Eq. (22), but <strong>the</strong> necessary correction term cannot be written as <strong>the</strong> divergence of a stress. Fortunately <strong>the</strong> error<br />

is only O(Ma 3 /Re) in <strong>the</strong> usual scaling with |B| 2 = O(ρ|u| 2 ) [52].<br />

In ano<strong>the</strong>r possible application, Verberg & Ladd [53] solved directly for steady states of <strong>the</strong> forced Stokes equations<br />

using a linear system solver in conjunction with a lattice <strong>Boltzmann</strong> equation omitting <strong>the</strong> nonlinear u 2 terms from<br />

<strong>the</strong> equilibria. The same approach could not be used to find zero Rossby number solutions of Eq. (50) with <strong>the</strong> forcing<br />

term Eq. (32), because this term is quadratic in u even though <strong>the</strong> macroscopic term Coriolis force 2Ω×u itself is<br />

linear. A simpler forcing term such as Eq. (33) would have to be used, with a corresponding error in <strong>the</strong> viscous stress<br />

as calculated.<br />

Finally, <strong>the</strong> particular formula (30) is just one of many with <strong>the</strong> required moments given by Eqs. (15a-c). These<br />

moments impose only six constraints in two dimensions, but most lattice <strong>Boltzmann</strong> schemes use more than six<br />

particle speeds. Some stability criterion may be needed to determine <strong>the</strong> forcing terms R i uniquely, like that in [25]<br />

for unforced nine-speed equilibria. The need for such criteria is more acute in schemes for simulating <strong>the</strong>rmal flows.<br />

These typically use 13 or more speeds in two dimensions [1, 33, 34] so <strong>the</strong>re are many more as yet undetermined<br />

degrees of freedom.<br />

Acknowledgments<br />

The author thanks Rick Salmon for useful conversations and advance copies of his papers, and Stephane Zaleski for<br />

a useful conversation. Some of this work was undertaken at <strong>the</strong> 2000 Summer Study Program in Geophysical Fluid<br />

Dynamics at Woods Hole Oceanographic Institution, supported by ONR and NSF. Financial support from St John’s<br />

College, Cambridge, UK is gratefully acknowledged.


16<br />

APPENDIX A: DERIVATION OF THE BOLTZMANN EQUATION FROM THE LIOUVILLE EQUATION<br />

IN A ROTATING FRAME<br />

Most derivations of <strong>the</strong> <strong>Boltzmann</strong> equation explicitly exclude velocity-dependent body forces like <strong>the</strong> Coriolis force<br />

[35, 38]. A heuristic justification for <strong>the</strong> <strong>Boltzmann</strong> equation with a Coriolis force was given by Woods [10], and by<br />

Chapman & Cowling [36] for <strong>the</strong> ma<strong>the</strong>matically equivalent Lorentz force exerted on charged particles by a uniform<br />

magnetic field. In this appendix we outline a more systematic derivation from <strong>the</strong> Liouville equation in a rotating<br />

frame via <strong>the</strong> Bogoliubov-Born-Green-Kirkwood-Yvon (BBGKY) hierarchy [35, 38]. Such a derivation has been given<br />

previously by Delcroix [54] in a French language summer school proceedings, again for charged particles in a uniform<br />

magnetic field, but we have been unable to locate a more acccessible treatment. Our approach follows that of Huang<br />

[35] and Uhlenbeck & Ford [38] as modified by a rotating frame.<br />

The equation of motion for a single particle of mass m moving with velocity ξ under a potential Φ in a frame<br />

rotating with angular velocity Ω is<br />

( )<br />

dξ<br />

m<br />

dt + 2Ω×ξ = − ∂Φ<br />

∂x .<br />

(A1)<br />

The potential Φ(x) may include a centrifugal term 1 2 m|Ω×x|2 , but this is usually negligible in geophysical applications.<br />

This equation may be put in Hamiltonian form using <strong>the</strong> canonical variables q = x and p = m(ξ + R), where R(x)<br />

is any vector field satisfying ∇×R = 2Ω. In geophysical fluid dynamics <strong>the</strong> combination p = m(u − fy, v + fx, w)<br />

is often used, for 2Ω = fẑ, and goes by <strong>the</strong> name “geostrophic momentum.” This change of variables may be more<br />

familiar for <strong>the</strong> Lorentz force, with R = A being a vector potential for <strong>the</strong> magnetic field B = 2Ω [55]. The single<br />

particle Hamiltonian is <strong>the</strong> total energy as seen in <strong>the</strong> rotating frame,<br />

H 1 = 1 2 m|ξ|2 + Φ(x) = 1<br />

2m |p|2 − p · R + ˜Φ(q),<br />

in terms of p and q, where ˜Φ = Φ + 1 2 m|R|2 . Hamilton’s equations are [4, 56]<br />

(A2)<br />

The left hand side of Eq. (A3b) is<br />

dq α<br />

dt<br />

dp α<br />

dt<br />

= ∂H 1<br />

∂p α<br />

= 1 m p α − R α = ξ α , (A3a)<br />

= − ∂H 1<br />

∂q α<br />

= − ∂ ˜Φ<br />

∂q α<br />

+ p β<br />

∂R β<br />

∂q α<br />

.<br />

(A3b)<br />

dp α<br />

dt<br />

= m d dt (ξ α + R α ) = m dξ α<br />

dt + m∂R α<br />

· dq β<br />

∂q β dt = mdξ α<br />

dt + ∂R α<br />

(p β − mR β ),<br />

∂q β<br />

(A4)<br />

from which Eq. (A3b) may be rearranged to coincide with Eq. (A1),<br />

m dξ α<br />

dt = mξ β<br />

( ∂Rβ<br />

− ∂R )<br />

α<br />

− ∂Φ = [2mξ×Ω − ∇Φ]<br />

∂x α ∂x β ∂x α<br />

.<br />

α<br />

(A5)<br />

Next consider a system of N identical such particles, each with position q i and canonical momentum p i = m(ξ i +R),<br />

where i = 1, . . . , N. We assume <strong>the</strong> Hamiltonian is of <strong>the</strong> form<br />

H =<br />

N∑<br />

i=1<br />

1<br />

2m |p i − mR| 2 +<br />

N∑<br />

i=1<br />

Φ(q i ) + ∑ i


Denoting <strong>the</strong> 6 coordinates (q i , p i ) by z i for brevity, <strong>the</strong> N-particle density function D(z 1 , . . . , z N ) satisfies Liouville’s<br />

equation, [35, 36, 38, 40, 55]<br />

dD<br />

dt = ∂D<br />

N ∂t + ∑<br />

[<br />

˙q i · ∂D + ṗ i · ∂D ] [ ∂<br />

=<br />

∂q i ∂p i ∂t + h N (z 1 , . . . , z N )]<br />

D = 0,<br />

i=1<br />

that expresses conservation of volume in <strong>the</strong> 6N dimensional phase space. The structure of Eq. (A9) is unmodified by<br />

<strong>the</strong> Coriolis force, only <strong>the</strong> definition of <strong>the</strong> p i has changed [55]. The Hamiltonian operator h N (z 1 , . . . , z N ) is given<br />

by<br />

17<br />

(A9)<br />

h N (z 1 , . . . , z N ) =<br />

N∑<br />

i=1<br />

∂H<br />

∂p i<br />

·<br />

∂<br />

− ∂H ·<br />

∂q i ∂q i<br />

∂<br />

∂p i<br />

=<br />

N∑<br />

S i + 1 ∑<br />

P ij ,<br />

2<br />

i=1<br />

i≠j<br />

(A10)<br />

where <strong>the</strong> single and multi-particle contributions are<br />

( ) (<br />

1 ∂<br />

S i =<br />

m p iα − R α +<br />

∂q iα<br />

∂R β<br />

p iβ − ∂ ˜Φ<br />

)<br />

∂q iα ∂q iα<br />

(<br />

∂<br />

∂<br />

, P ij = K ij · −<br />

∂p iα ∂p i<br />

∂ )<br />

. (A11)<br />

∂p j<br />

The rotating frame introduces extra terms involving R into S i , but <strong>the</strong> Hamiltonian operator may still be rewritten<br />

in divergence form, so that<br />

h N (z 1 , . . . , z N )D =<br />

The Hamiltonian operator may be decomposed into<br />

N∑<br />

i=1<br />

(<br />

∂<br />

· D ∂H )<br />

−<br />

∂ (<br />

· D ∂H )<br />

. (A12)<br />

∂q i ∂p i ∂p i ∂q i<br />

h N (z 1 , . . . , z N ) = h s (z 1 , . . . , z s ) + h N−s (z s+1 , . . . , z N ) +<br />

s∑<br />

N∑<br />

i=1 j=s+1<br />

for s = 1, . . . , N − 1, and we observe, after integration by parts using <strong>the</strong> divergence form Eq. (A12), that<br />

∫<br />

dz s+1 · · · dz N h N−s (z s+1 , . . . , z N )D(z 1 , . . . , z N ) = 0.<br />

P ij ,<br />

(A13)<br />

(A14)<br />

Thus substituting <strong>the</strong> decomposition Eq. (A13) into <strong>the</strong> Liouville equation and integrating over z s+1 · · · z N causes <strong>the</strong><br />

term involving h N−s (z s+1 , . . . , z N ) to vanish, leaving <strong>the</strong> Bogoliubov-Born-Green-Kirkwood-Yvon (BBGKY) hierarchy<br />

(see [35, 36, 38] for references)<br />

( ∂<br />

∂t + h s)<br />

f s (z 1 , . . . , z s ) = −<br />

s∑<br />

∫<br />

dz s+1 K i,s+1 ·<br />

i=1<br />

∂<br />

∂p i<br />

f s+1 (z 1 , . . . , z s+1 ),<br />

for <strong>the</strong> reduced s particle distribution functions f s defined by<br />

∫<br />

N!<br />

f s (z 1 , . . . , z s , t) =<br />

dz s+1 · · · dz N D(z 1 , . . . , z N ).<br />

(N − s)!<br />

Each equation in <strong>the</strong> hierarchy comprises a streaming operator (∂ t + h s ) acting on <strong>the</strong> <strong>the</strong> s particle distribution<br />

function f s , and a collision term depending on f s+1 . This is <strong>the</strong> usual moment closure problem. However, <strong>the</strong> hope<br />

is that <strong>the</strong> right hand sides, denoting simultaneous interactions (“collisions”) involving two, three, four, and so on<br />

particles, become successively less important for a sufficiently dilute gas [35, 36, 38].<br />

The first equation, s = 1, is<br />

( ( )<br />

∂ 1<br />

∂t + m p 1α − R α<br />

The partial derivatives transform as<br />

(<br />

∂ ∂R β<br />

+ p 1β − ∂ ˜Φ<br />

)<br />

∂q 1α ∂q 1α ∂q 1α<br />

) ∫<br />

∂<br />

f 1 = −<br />

∂p 1α<br />

dz 2 K 12 ·<br />

∂<br />

∂p 1<br />

f 2 (z 1 , z 2 , t).<br />

(A15)<br />

(A16)<br />

(A17)<br />

( ∂<br />

∂q 1α<br />

)p<br />

( ∂<br />

=<br />

∂x α<br />

)ξ<br />

( ) ( ∂Rβ ∂<br />

−<br />

,<br />

∂x α ∂ξ β<br />

)x<br />

( ∂<br />

=<br />

∂p 1α<br />

)q 1 ( ∂<br />

, (A18)<br />

m ∂ξ α<br />

)x


under <strong>the</strong> change of variables x = q 1 , ξ = m −1 p 1 − R, bringing <strong>the</strong> left hand side of Eq. (A17) into <strong>the</strong> form of <strong>the</strong><br />

<strong>Boltzmann</strong> equation with a Coriolis force,<br />

( ∂<br />

∂t + ξ ∂<br />

α − 1 (<br />

∂Φ ∂ ∂Rβ<br />

+ ξ β − ∂R ) ) ∫<br />

α ∂<br />

∂<br />

f 1 = − dx 2 dξ<br />

∂x α m ∂x α ∂ξ α ∂x α ∂x β ∂ξ 2 K 12 · f 2 (z 1 , z 2 , t). (A19)<br />

α ∂ξ 1<br />

The collision operator on <strong>the</strong> right hand side of Eq. (A19) is unaffected by <strong>the</strong> Coriolis force, since <strong>the</strong> potential φ<br />

in K 12 is independent of ξ, and no R terms appear in <strong>the</strong> transformation relating ∂/∂p 1 and ∂/∂ξ. The collision<br />

operator may be shown to coincide with <strong>the</strong> usual <strong>Boltzmann</strong> binary collision term for spatially uniform systems<br />

[35, 38, 40, 55].<br />

The <strong>Boltzmann</strong> streaming operator may always be written in divergence form using canonical (q 1 , p 1 ) variables by<br />

observing that <strong>the</strong> left hand side takes <strong>the</strong> form<br />

( ∂<br />

∂t + ∂H 1<br />

∂p 1<br />

·<br />

∂<br />

∂q 1<br />

− ∂H 1<br />

∂q 1<br />

·<br />

)<br />

∂<br />

f 1 = ∂f 1<br />

∂p 1 ∂t +<br />

∂ ( )<br />

∂H 1<br />

· f 1 −<br />

∂q 1 ∂p 1<br />

18<br />

∂ ( )<br />

∂H 1<br />

· f 1 , (A20)<br />

∂p 1 ∂q 1<br />

where H 1 is <strong>the</strong> single particle Hamiltonian Eq. (A2) with no inter-particle terms. However, this is not true in <strong>the</strong><br />

original (x, ξ) variables unless <strong>the</strong> microscopic acceleration a satisfies ∇ ξ · a = 0, for instance when a is <strong>the</strong> sum of<br />

potential and Coriolis forces, a = −m −1 ∇Φ − 2Ω×ξ, as in Eq. (A19). Although implicit in Chapman & Cowling’s<br />

treatment of <strong>the</strong> Lorentz force [36], Cercignani [37] was perhaps <strong>the</strong> first to state that most heuristic derivations of<br />

<strong>the</strong> <strong>Boltzmann</strong> equation are valid provided ∇ ξ · a = 0, and do not actually need <strong>the</strong> stronger assumption a = a(x, t)<br />

as usually stated. In particular, ∇ ξ · a = 0 is enough to rewrite <strong>the</strong> <strong>Boltzmann</strong> equation in divergence form as<br />

∂ t f + ∇·(ξf) + ∇ ξ · (af) = − 1 τ (f − f (0) ),<br />

(A21)<br />

that may be more convenient for taking moments. Delcroix [55] required <strong>the</strong> stronger constraint ∂a x /∂ξ x = ∂a y /∂ξ y =<br />

∂a z /∂ξ z = 0 that holds for Coriolis and Lorentz forces, and implies ∇ ξ · a = 0.<br />

APPENDIX B: CANCELATION OF BODY FORCE TERMS AT VISCOUS ORDER<br />

The first correction stress Π (1) that appeared at viscous order in <strong>the</strong> Chapman-Enskog expansion of section II is<br />

determined by <strong>the</strong> second (ξξ) moment of equation (11a),<br />

∫<br />

∫<br />

Π (1) = ξξf (1) dξ = −τ ξξ (∂ t0 + ξ · ∇ + a · ∇ ξ ) f (0) dξ,<br />

(B1)<br />

∫<br />

(∫ ) ∫<br />

= −τ∂ t0 ξξf (0) dξ − τ∇· ξξξf (0) dξ − τ ξξa · ∇ ξ f (0) dξ,<br />

(<br />

∫<br />

)<br />

= −τ ∂ t0 Π (0) + ∇· ξξξf (0) dξ − ρ(Au + uA) .<br />

The third moment of <strong>the</strong> equilibrium distribution,<br />

∫<br />

ξ α ξ β ξ γ f (0) dξ = ρu α u β u γ + θρ (u α δ βγ + u β δ γα + u γ δ αβ ) ,<br />

(B2)<br />

depends only f (0) , and so is unchanged by a body force. The time derivative term,<br />

∂ t0 Π (0)<br />

αβ = ∂ t 0<br />

(pδ αβ + ρu α u β ) = δ αβ ∂ t0 p + u α ∂ t0 (ρu β ) + u β ∂ t0 (ρu α ) − u α u β ∂ t0 ρ,<br />

(B3)<br />

acquires an additional contribution ρ(Au + uA) from <strong>the</strong> body force in <strong>the</strong> momentum equation Eq. (3), as well as<br />

<strong>the</strong> usual terms that combine with Eq. (B2) to give <strong>the</strong> viscous stress [6, 21]. This extra contribution to ∂ t0 Π (0) is<br />

exactly compensated by <strong>the</strong> explicit body force term in Eq. (B1), so Π (1) remains <strong>the</strong> usual viscous stress [6, 21],<br />

Π (1)<br />

αβ = −θτρ (∂ αu β + ∂ β u α ) .<br />

(B4)<br />

The collision timescale τ remains outside <strong>the</strong> derivatives in Eq. (B1) so τ may depend on x and t. A fluid with a<br />

dynamic viscosity µ = θτρ that is independent of density may be simulated by taking τ ∝ ρ −1 (see Sec. IX).


The viscous stress in Eq. (B4) differs from <strong>the</strong> one commonly used in <strong>the</strong> compressible Navier-Stokes equations,<br />

(<br />

Π (1)NS<br />

αβ<br />

= −µ ∂ α u β + ∂ β u α − 2 )<br />

3 ∇·uδ αβ , (B5)<br />

by an an isotropic term proportional to ∇·u. The iso<strong>the</strong>rmal approximation leads to a nonzero bulk viscosity µ ′ = 2 3 µ,<br />

canceling <strong>the</strong> last term in Eq. (B5) [8]. Since ∇·u is O(Ma 2 ) in <strong>the</strong> small Mach number limit, this discrepancy is<br />

consistent with <strong>the</strong> iso<strong>the</strong>rmal approximation itself only being accurate to O(Ma 2 ).<br />

As noted in Sec. IV, <strong>the</strong> ρu α u β u γ term in Eq. (B2) is absent from <strong>the</strong> third moment of <strong>the</strong> approximate Maxwell-<br />

<strong>Boltzmann</strong> distribution Eq. (23). Thus <strong>the</strong> viscous stress in <strong>the</strong> Chapman-Enskog expansion of <strong>the</strong> lattice <strong>Boltzmann</strong><br />

equation differs from Eq. (B4),<br />

Π (1)LB<br />

αβ<br />

= −θτρ (∂ α u β + ∂ β u α ) + θτ∂ γ (ρu α u β u γ ). (B6)<br />

19<br />

but only by an O(Ma 3 ) term that is negligible in <strong>the</strong> small Mach number limit [6, 21].<br />

Finally, <strong>the</strong> last term in Eq. (13b) vanishes due to <strong>the</strong> solvability conditions,<br />

∫<br />

∫<br />

∫<br />

ξ∇ ξ · (af (1) )dξ = − af (1) dξ = 2Ω× ξf (1) dξ = 0.<br />

(B7)<br />

Thus to <strong>the</strong> first two orders in <strong>the</strong> Chapman-Enskog expansion, <strong>the</strong> Coriolis term a · ∇ ξ f in <strong>the</strong> <strong>Boltzmann</strong> equation<br />

yields <strong>the</strong> correct Coriolis force in <strong>the</strong> momentum equation and leaves <strong>the</strong> viscous term unchanged. However, higher<br />

order terms in <strong>the</strong> Chapman-Enskog expansion will be affected by <strong>the</strong> Coriolis force [9].<br />

APPENDIX C: MOMENTS OF THE CORIOLIS FORCE<br />

The first three moments (1,ξ,ξξ) of <strong>the</strong> Coriolis term, a · ∇ ξ f = ∇ ξ · (af) with a = −2Ω×ξ, are<br />

∫<br />

∇ ξ · (af)dξ = 0,<br />

∫<br />

∫<br />

ξ α ∇ ξ · (af)dξ = − a α fdξ = −ρA α ,<br />

∫<br />

M αβ = ξ α ξ β ∇ ξ · (af)dξ = 2ɛ αµν Ω µ Π νβ + 2ɛ βµν Ω µ Π να .<br />

(C1)<br />

(C2)<br />

(C3)<br />

For two dimensional flow in <strong>the</strong> xy plane, with Ω = Ωẑ, Eq. (C3) simplifies to<br />

M yy = −M xx = 4ΩΠ xy , M xy = M yx = 2Ω(Π xx − Π yy ). (C4)<br />

For <strong>the</strong> equilibrium distribution f (0) <strong>the</strong> second moment of <strong>the</strong> body force is precisely <strong>the</strong> same as if a were independent<br />

of ξ,<br />

∫<br />

ξξ∇ ξ · (af (0) )dξ = −ρ(Au + uA),<br />

(C5)<br />

on substituting Π (0) = pI + ρuu, but this identity does not hold for general f. The first correction term is (from<br />

Eq. (B4))<br />

∫<br />

ξ α ξ β ∇ ξ · (af (1) )dξ = 2ɛ αµν Ω µ Π (1)<br />

νβ + (α ↔ β) = 2θτρ (∂ β(ɛ αµν Ω µ u ν ) + ∂ ν (ɛ αµν Ω µ u β )) + (α ↔ β), (C6)<br />

where (α ↔ β) denotes <strong>the</strong> previous expression with α and β interchanged. However, since <strong>the</strong> ξξ moment of <strong>the</strong><br />

Coriolis term only appears itself at viscous order in <strong>the</strong> Chapman-Enskog expansion, <strong>the</strong> error due to evaluating this<br />

moment using <strong>the</strong> equilibrium stress Π (0) , instead of <strong>the</strong> true stress Π, only appears beyond viscous order at O(τ 2 ),<br />

along with <strong>the</strong> Burnett corrections to <strong>the</strong> Navier-Stokes equations [36].


20<br />

APPENDIX D: EXPANSION IN HERMITE POLYNOMIALS<br />

Many of <strong>the</strong> formulas in this paper may be derived by expanding <strong>the</strong> distribution function as a series of orthogonal<br />

polynomials,<br />

f(x, t, ξ) = w(ξ)<br />

∞∑<br />

n=0<br />

1<br />

n!θ n m[n] (x, t) : p [n] (ξ).<br />

(D1)<br />

The scaled tensor Hermite polynomials p [n] are defined by Rodrigues’ formula,<br />

p [n] (ξ) = (−θ) n 1<br />

w(ξ) ∇n w(ξ),<br />

(D2)<br />

and <strong>the</strong> corresponding weights m [n] are<br />

∫<br />

m [n] (x, t) =<br />

f(x, t, ξ)p [n] (ξ)dξ.<br />

(D3)<br />

Both m [n] and p [n] are tensors of rank n. The colon : in Eq. (D1) denotes a contraction of each of <strong>the</strong> n suffices<br />

on <strong>the</strong> m [n] with <strong>the</strong> corresponding suffix on <strong>the</strong> p [n] . The infinite series converges in <strong>the</strong> square integral (L 2 ) sense<br />

whenever w −1/2 f itself is square integrable [45, 57]. The first few orthogonal polynomials are<br />

P [0] = 1, P [1]<br />

α = ξ α , P [2]<br />

αβ = ξ αξ β − θδ αβ ,<br />

P [3]<br />

αβγ = ξ αξ β ξ γ − θ(ξ α δ βγ + ξ β δ γα + ξ γ δ αβ ).<br />

(D4)<br />

These formulae differ from some that appeared previously because <strong>the</strong> weight function is proportional to exp(−ξ 2 /2θ),<br />

as in [17, 18], ra<strong>the</strong>r than to exp(−ξ 2 /2) as in [20, 29, 45, 57]. Thus<br />

p [n] (ξ) = (θ) n/2 H [n] (ξ/θ 1/2 ),<br />

(D5)<br />

where <strong>the</strong> H [n] are Grad’s tensor Hermite polynomials [40, 45, 57]. Since <strong>the</strong> Chapman-Enskog expansion is based<br />

upon <strong>the</strong> true distribution function f being close to <strong>the</strong> Maxwell-<strong>Boltzmann</strong> equilibrium distribution f (0) it seems<br />

more natural to retain <strong>the</strong> temperature (θ) dependence by using <strong>the</strong> exponential behaviour of f (0) as <strong>the</strong> weight<br />

function. Moreover, <strong>the</strong> rate of convergence of <strong>the</strong> partial sums decreases when f decays ei<strong>the</strong>r more slowly or more<br />

quickly than <strong>the</strong> chosen weight function [58]. The p [n] are scaled so that <strong>the</strong> leading term is ξ n and <strong>the</strong> leading term<br />

in <strong>the</strong> moments m [n] coincides with <strong>the</strong> usual moments in Eqs. (6) and (7). For example, <strong>the</strong> second Hermite moment<br />

of <strong>the</strong> equilibrium distribution is<br />

∫<br />

m [2] = (ξξ − θI)f (0) dξ = (θρI + ρuu) − θρI = ρuu.<br />

The previous low Mach number expansion (23) now follows by expanding <strong>the</strong> exact Maxwell-<strong>Boltzmann</strong> distribution<br />

Eq. (5) in Hermite polynomials and truncating after <strong>the</strong> first three terms,<br />

(<br />

f (0) = w(ξ) ρ + 1 θ (ρu) · ξ + 1<br />

)<br />

2θ 2 (ρuu) : (ξξ − θI) + O(u 3 ). (D6)<br />

We may also formally differentiate <strong>the</strong> series expansion of f with <strong>the</strong> aid of Rodrigues’ formula (D2) to obtain [29]<br />

and<br />

∇ ξ f =<br />

∞∑ (−1) n<br />

m [n] (x, t) : ∇ n+1 w(ξ),<br />

n!<br />

n=0<br />

a · ∇ ξ f = −w(ξ)<br />

∞∑<br />

n=1<br />

(D7)<br />

1<br />

(n − 1)!θ n m[n−1] (x, t) : p [n] · a, (D8)<br />

where n − 1 suffices of p [n] are contracted with m [n−1] , and <strong>the</strong> remaining suffix is contracted with <strong>the</strong> vector a. Since<br />

<strong>the</strong> Hermite polynomials are symmetric in all indices this notation is unambiguous.


For <strong>the</strong> two cases of a independent of ξ, and a = −2Ω×ξ, <strong>the</strong> formula (D8) taken to second order in ξ yields<br />

Eqs. (29) and (31). Although Eq. (D8) has <strong>the</strong> advantage of giving an explicit formula, Martys et al. [29] found it<br />

simpler to construct a polynomial in ξ with <strong>the</strong> same moments as a · ∇ ξ f directly, using a formula such as Eq. (D6).<br />

Substituting <strong>the</strong> moments of <strong>the</strong> Coriolis force from Eqs. (15a-c) into Eq. (D6) we again recover Luo’s forcing term<br />

as in Eq. (31).<br />

21<br />

[1] S. Chen and G. D. Doolen, Annu. Rev. Fluid Mech. 30, 329 (1998).<br />

[2] R. Salmon, J. Marine Res. 57, 503 (1999).<br />

[3] R. Salmon, J. Marine Res. 57, 847 (1999).<br />

[4] R. Salmon, Lectures on Geophysical Fluid Dynamics (Oxford University Press, Oxford, 1998).<br />

[5] J. Pedlosky, Geophysical Fluid Dynamics (Springer-Verlag, New York, 1987), 2nd ed.<br />

[6] Y. H. Qian and S. A. Orszag, Europhys. Lett. 21, 255 (1993).<br />

[7] Y. H. Qian, D. d’Humières, and P. Lallemand, Europhys. Lett. 17, 479 (1992).<br />

[8] P. J. Dellar, Phys. Rev. E 64, 031203 (2001).<br />

[9] L. C. Woods, J. Fluid Mech. 136, 423 (1983).<br />

[10] L. C. Woods, An Introduction to <strong>the</strong> Kinetic Theory of Gases and Magnetoplasmas (Oxford University Press, Oxford,<br />

1993).<br />

[11] C. G. Speziale, Phys. Rev. A 36, 4522 (1987).<br />

[12] G. Ryskin and J. M. Rallison, appendix to G. Ryskin, J. Fluid Mech. 99, 525 (1980).<br />

[13] D. D. Joseph and L. Preziosi, Rev. Mod. Phys. 62, 375 (1990), addendum to Rev. Mod. Phys. 61, 41 (1989).<br />

[14] U. Frisch, B. Hasslacher, and Y. Pomeau, Phys. Rev. Lett. 56, 1505 (1986).<br />

[15] U. Frisch, D. d’Humières, B. Hasslacher, P. Lallemand, Y. Pomeau, and J.-P. Rivet, Complex Sys. 1, 649 (1987).<br />

[16] G. R. McNamara and G. Zanetti, Phys. Rev. Lett. 61, 2332 (1988).<br />

[17] X. He and L.-S. Luo, Phys. Rev. E 55, R6333 (1997).<br />

[18] X. He and L.-S. Luo, Phys. Rev. E 56, 6811 (1997).<br />

[19] T. Abe, J. Comput. Phys. 131, 241 (1997).<br />

[20] X. Shan and X. He, Phys. Rev. Lett. 80, 65 (1998), comp-gas/9712001.<br />

[21] S. Hou, Q. Zou, S. Chen, G. D. Doolen, and A. C. Cogley, J. Comput. Phys. 118, 329 (1995), comp-gas/9401003.<br />

[22] L. P. Kadanoff, G. R. McNamara, and G. Zanetti, Phys. Rev. A 40, 4527 (1989).<br />

[23] R. Cornubert, D. d’Humières, and D. Levermore, Physica D 47, 241 (1991).<br />

[24] H. Yu and K. Zhao, Phys. Rev. E 64, 056703 (2001).<br />

[25] P. J. Dellar, Non-hydrodynamic modes and a priori construction of shallow water lattice <strong>Boltzmann</strong> equations, To appear<br />

in Phys. Rev. E.<br />

[26] L.-S. Luo, Phys. Rev. Lett. 81, 1618 (1998).<br />

[27] L.-S. Luo, Phys. Rev. E 62, 4982 (2000), also ICASE Report TR-2001-8, Institute for Computer Applications in Science<br />

and Engineering, NASA Langley Research Center.<br />

[28] X. He, X. Shan, and G. D. Doolen, Phys. Rev. E 57, R13 (1998).<br />

[29] N. S. Martys, X. Shan, and H. Chen, Phys. Rev. E 58, 6855 (1998).<br />

[30] X. He, S. Chen, and G. D. Doolen, J. Comput. Phys. 146, 282 (1998).<br />

[31] A. J. C. Ladd, J. Fluid Mech. 271, 285 (1994).<br />

[32] Q. Zou and X. He, Phys. Fluids 9, 1591 (1997).<br />

[33] Y. Chen, H. Ohashi, and M. Akiyama, Phys. Rev. E 50, 2776 (1994), comp-gas/9310001.<br />

[34] J. R. Weimar and J. P. Boon, Physica A 224, 207 (1996).<br />

[35] K. Huang, Statistical Mechanics (Wiley, New York, 1987), 2nd ed.<br />

[36] S. Chapman and T. G. Cowling, The Ma<strong>the</strong>matical Theory of Non-Uniform Gases (Cambridge University Press, Cambridge,<br />

1991), 3rd ed.<br />

[37] C. Cercignani, The <strong>Boltzmann</strong> Equations and its Applications (Springer-Verlag, New York, 1988).<br />

[38] G. E. Uhlenbeck and G. W. Ford, Lectures in Statistical Mechanics, vol. 1 of Lectures in Applied Ma<strong>the</strong>matics (American<br />

Ma<strong>the</strong>matical Society, Providence, 1963).<br />

[39] P. L. Bhatnagar, E. P. Gross, and M. Krook, Phys. Rev. 94, 511 (1954).<br />

[40] H. Grad, in Thermodynamik der Gase, edited by S. Flügge (Springer-Verlag, Berlin, 1958), vol. 12 of Handbuch der Physik,<br />

pp. 205–294.<br />

[41] I. Ginzbourg and P. M. Adler, J. Phys. II France 4, 191 (1994).<br />

[42] X. He, Q. Zou, L.-S. Luo, and M. Dembo, J. Stat. Phys. 87, 115 (1997).<br />

[43] K. Xu, in 29th Computational Fluid Dynamics (von Karman Institute, Belgium, 1998), Lecture Series 1998-03, available<br />

from http://www.math.ust.hk/~makxu/PAPER/VKI_LECTURE98.ps.<br />

[44] K. Xu, Int. J. Mod. Phys. C 10, 505 (1999).<br />

[45] H. Grad, Commun. Pure Appl. Math. 2, 325 (1949).<br />

[46] P. J. Davis and P. Rabinowitz, Methods for Numerical Integration (Academic, New York, 1984), 2nd ed.<br />

[47] R. J. LeVeque, J. Comput. Phys. 131, 327 (1997).


[48] R. J. LeVeque, Numerical Methods for Conservation Laws (Birkhäuser, Basel, 1992), 2nd ed.<br />

[49] W. G. Strang, SIAM J. Numer. Anal. 5, 506 (1968).<br />

[50] A. Iserles, A First Course in <strong>the</strong> Numerical Analysis of Differential Equations (Cambridge University Press, Cambridge,<br />

1996).<br />

[51] S. Succi, M. Vergassola, and R. Benzi, Phys. Rev. A 43, 4521 (1991).<br />

[52] P. J. Dellar, <strong>Lattice</strong> kinetic schemes for magnetohydrodynamics, submitted to J. Comput. Phys. (2001).<br />

[53] R. Verberg and A. J. C. Ladd, Phys. Rev. E 60, 3366 (1999).<br />

[54] J. L. Delcroix, in La théorie des gaz neutres et ionisés; le problème des n corps à température non nulle (Wiley, New York,<br />

1960), Ecole d’été de physique théorique, Les Houches, (in French).<br />

[55] J. L. Delcroix, Plasma Physics, vol. 1 (Wiley, London, 1965).<br />

[56] H. Goldstein, Classical Mechanics (Addison-Wesley, Reading, 1980), 2nd ed.<br />

[57] H. Grad, Commun. Pure Appl. Math. 2, 331 (1949).<br />

[58] J. P. Boyd, Chebyshev and Fourier Spectral Methods (Dover, New York, 2000), 2nd ed.<br />

22


Journal of Marine Research, 57, 503–535, 1999<br />

The lattice <strong>Boltzmann</strong> method as a basis<br />

for ocean circulation modeling<br />

by Rick Salmon 1<br />

ABSTRACT<br />

We construct a lattice <strong>Boltzmann</strong> model of a single-layer, ‘‘reduced gravity’’ ocean in a square<br />

basin, with shallow water or planetary geostrophic dynamics, and boundary conditions of no slip or<br />

no stress. When <strong>the</strong> volume of <strong>the</strong> moving upper layer is sufficientlysmall, <strong>the</strong> motionless lower layer<br />

outcrops over a broad area of <strong>the</strong> nor<strong>the</strong>rn wind gyre, and <strong>the</strong> pattern of separated and isolated<br />

western boundary currents agrees with <strong>the</strong> <strong>the</strong>ory of Veronis (1973). Because planetary geostrophic<br />

dynamics omit inertia, lattice <strong>Boltzmann</strong> solutions of <strong>the</strong> planetary geostrophic equations do not<br />

require a lattice with <strong>the</strong> high degree of symmetry needed to correctly represent <strong>the</strong> Reynolds stress.<br />

This property gives planetary geostrophic dynamics a signi cant computational advantage over <strong>the</strong><br />

primitive equations, especially in three dimensions.<br />

1. Introduction<br />

Numerical ocean circulation modelers usually follow one of two strategies. Numerical<br />

models based upon <strong>the</strong> primitive equations represent <strong>the</strong> rst strategy. In primitive<br />

equation models, inertia-gravity waves are present even though <strong>the</strong>se waves are unimportant<br />

contributors to <strong>the</strong> large-scale ocean circulation.The presence of inertia-gravity waves<br />

severely limits <strong>the</strong> size of <strong>the</strong> time step in primitive equation models. However, because of<br />

<strong>the</strong> inertia-gravity waves, <strong>the</strong> primitive equations comprise relatively few diagnostic<br />

equations and are, <strong>the</strong>refore, relatively easy to code and solve.<br />

The second strategy employs balanced dynamical equations like <strong>the</strong> quasi-geostrophic<br />

or semi-geostrophic equations. In numerical models based upon balanced dynamics,<br />

inertia-gravity waves are absent; <strong>the</strong>refore, <strong>the</strong> time step can be much larger. However, <strong>the</strong><br />

approximations used to lter out <strong>the</strong> inertia-gravity waves require <strong>the</strong> solution of additional,<br />

typically elliptic, and frequently nonlinear diagnostic equations. The in nite<br />

propagation speed associated with <strong>the</strong> diagnostic equations is a direct result of <strong>the</strong> balance<br />

condition that lters out inertia-gravity waves. In complex geometry, that is, with realistic<br />

ocean bathymetry, <strong>the</strong> only practical methods for solving <strong>the</strong> diagnostic equations are<br />

iterative. Unfortunately, iterative solution of <strong>the</strong> diagnostic equations can be more difficult<br />

1. Scripps Institution of Oceanography, University of California, La Jolla, California, 92093-0225, U.S.A.<br />

email: rsalmon@ucsd.edu<br />

503


504 Journal of Marine Research [57, 3<br />

and less efficient than time-stepping <strong>the</strong> primitive equations, even when <strong>the</strong> solutions<br />

<strong>the</strong>mselves are nearly geostrophic.<br />

<strong>Lattice</strong> <strong>Boltzmann</strong> methods (hereafter LB) offer a third modeling strategy that, unlike<br />

both <strong>the</strong> primitive and balanced dynamical equations, is completely prognostic. Thus LB<br />

ocean models contain not only inertia-gravity waves but sound waves as well. In fact,<br />

because LB models contain an arbitrary number of dependent variables (corresponding to<br />

<strong>the</strong> arbitrary number of links between neighboring lattice points), LB models typically<br />

contain more types of waves than are actually present in <strong>the</strong> dynamical equations of<br />

interest. These extra modes, which we shall call fast modes, play a role that is closely<br />

analogous to <strong>the</strong> role played by inertia-gravity waves in solutions of <strong>the</strong> primitive<br />

equations. Although unimportant contributors to <strong>the</strong> whole solution, <strong>the</strong> fast modes carry<br />

information rapidly throughout <strong>the</strong> ow, removing <strong>the</strong> need for diagnostic equations of any<br />

kind.<br />

Despite <strong>the</strong> presence of many fast modes, LB methods are efficient because <strong>the</strong> fast<br />

modes can be made to propagate at speeds which, although much faster than <strong>the</strong> slow<br />

modes of real physical interest, are very much slower than, for example, <strong>the</strong> speed of real<br />

sound waves. Thus LB methods resemble still ano<strong>the</strong>r well-known scheme for modeling<br />

balanced dynamics, in which fast modes are not removed but instead simply slowed down<br />

by making parameter adjustments to <strong>the</strong> physics. However, compared to o<strong>the</strong>r methods for<br />

slowing down fast waves, LB methods, which amount to a technique of slowing and<br />

attenuation,seem more sophisticated.<br />

Usually, but perhaps mainly for historical reasons, we regard <strong>the</strong> LB equations as<br />

equations governing <strong>the</strong> average behavior of an underlying lattice gas. <strong>Lattice</strong> gases are<br />

highly idealized models of <strong>the</strong> complete molecular dynamics of real uids. However,<br />

because much of <strong>the</strong> energy in lattice gases is <strong>the</strong>rmal energy, lattice gases constitute ra<strong>the</strong>r<br />

noisy models of macroscopic uids. A principal advantage of <strong>the</strong> LB method over <strong>the</strong><br />

lattice gas method is that LB lters out this noise. Thus LB models are, in a sense, balanced<br />

models, which despite <strong>the</strong>ir many degrees of freedom and high proportion of fast modes,<br />

lter out <strong>the</strong> ultra fast modes corresponding to <strong>the</strong>rmal motions.<br />

The great practical advantage of LB models lies in <strong>the</strong> extraordinary simplicity of <strong>the</strong> LB<br />

equations, <strong>the</strong>ir numerical stability, and in <strong>the</strong> fact that <strong>the</strong> LB equations are massively<br />

parallel: At each timestep, <strong>the</strong> LB solution algorithm proceeds without consulting <strong>the</strong><br />

conditions at <strong>the</strong> neighboring lattice points. Thus each lattice point could have its own<br />

processor. These practical advantages more than compensate for <strong>the</strong> extra storage associated<br />

with <strong>the</strong> greater number of dependent variables.<br />

While it is <strong>the</strong>ir potential for parallel processing that virtually guarantees that LB<br />

methods will play an important role in ocean circulation modeling, it is <strong>the</strong>ir ma<strong>the</strong>matical<br />

simplicity that seems most appealing. With only slight exaggeration, one could say that <strong>the</strong><br />

LB method never requires <strong>the</strong> computation of a derivative. Never<strong>the</strong>less, one can interpret<br />

<strong>the</strong> LB equations as nite-difference approximations to a simple and completely hyper-


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

505<br />

bolic system of quasi-linear equations. This hyperbolic system neatly expresses <strong>the</strong> two<br />

fundamental components of LB dynamics: <strong>the</strong> propagation (usually called streaming) of<br />

information between neighboring lattice points, and <strong>the</strong> rapid relaxation of <strong>the</strong> variables at<br />

each lattice point toward a state of local equilibrium. The speci cation of this equilibrium<br />

state corresponds to a prescription of <strong>the</strong> basic dynamics.<br />

Despite <strong>the</strong>se important practical advantages, <strong>the</strong> LB method remains somewhat<br />

in exible, and this appears to be its primary disadvantage.For example, LB models almost<br />

inevitably contain a close approximation to <strong>the</strong> standard Navier-Stokes viscosity; <strong>the</strong>re is<br />

as yet no LB method for replacing this standard viscosity with a ‘‘higher order eddy<br />

viscosity’’ of <strong>the</strong> type that has proved convenient in ‘‘large eddy simulations.’’ (However,<br />

considering <strong>the</strong> problematic nature of higher order viscosities, particularly in <strong>the</strong> presence<br />

of boundaries, this may not be such a serious disadvantage.) More generally, despite <strong>the</strong><br />

promising work of Ancona (1994) and o<strong>the</strong>rs, <strong>the</strong>re is as yet no cookbook method for<br />

applying LB methods to arbitrary systems of partial differential equations. However, it<br />

seems likely that greater use of LB methods for a greater variety of applications will<br />

gradually lead to fur<strong>the</strong>r generalizations in <strong>the</strong> <strong>the</strong>ory and subsequent improvements in <strong>the</strong><br />

method.<br />

In this paper, we apply <strong>the</strong> LB method to a simple model of ocean circulation—<strong>the</strong><br />

so-called reduced gravity model for a homogeneous,wind-driven layer of uid overlying a<br />

denser layer that remains at rest even where it lies exposed to <strong>the</strong> wind. This model has<br />

frequently been studied by oceanographers. Here, however, we regard it mainly as a tool to<br />

assess <strong>the</strong> value of LB methods as <strong>the</strong> basis for more complicated, three-dimensionalocean<br />

circulation models.<br />

Section 2 offers a brief but self-contained introduction to LB <strong>the</strong>ory using language that<br />

should appeal to oceanographers. For a more complete introduction to <strong>the</strong> <strong>the</strong>ory, <strong>the</strong><br />

reader should consult <strong>the</strong> excellent reviews by Benzi et al. (1992) and Chen and Doolen<br />

(1998), and <strong>the</strong> wonderful book by Rothman and Zaleski (1997).<br />

In Section 3 we derive an 8-velocity LB model corresponding to <strong>the</strong> rotating shallow<br />

water equations. If terms corresponding to momentum advection are dropped from <strong>the</strong> LB<br />

formulae for <strong>the</strong> equilibrium populations of <strong>the</strong> particles, <strong>the</strong>n <strong>the</strong> same model yields<br />

solutions of <strong>the</strong> planetary geostrophic equations.<br />

Section 4 presents numerical solutions of <strong>the</strong> LB model for shallow water and planetary<br />

geostrophic dynamics in a square ocean basin with a two-gyre wind stress and boundary<br />

conditions of no slip or no stress. When <strong>the</strong> total volume of <strong>the</strong> moving uid layer is<br />

sufficiently large, <strong>the</strong> moving layer covers <strong>the</strong> whole basin, as seen in Figure 3. However,<br />

when <strong>the</strong> upper layer volume is smaller (Figure 4), <strong>the</strong> lower layer outcrops over a broad<br />

region of <strong>the</strong> nor<strong>the</strong>rn gyre, and both separated and isolated western boundary currents are<br />

present, in agreement with <strong>the</strong> <strong>the</strong>ory of Veronis (1973).<br />

In Section 5, we examine <strong>the</strong> solutions of a 4-velocity LB model of <strong>the</strong> planetary<br />

geostrophic equations, which requires half as much computation and storage as <strong>the</strong>


506 Journal of Marine Research [57, 3<br />

8-velocity model of Sections 3 and 4. In Sections 5 and 6, we speculate that <strong>the</strong><br />

three-dimensional analogue of <strong>the</strong> 4-velocity model holds great promise as <strong>the</strong> basis for a<br />

three-dimensional global ocean circulation model.<br />

<strong>Lattice</strong> gas models and LB models have been widely used in uid mechanics for about<br />

ten years, and several applications treat problems of geophysical uid dynamics. For<br />

example, Benzi et al. (1998) present results from a 512-processor LB calculation of<br />

Rayleigh-Benard convection on a 256 3 lattice. However, I have not seen <strong>the</strong> LB method<br />

applied to rotating ow. Since, <strong>the</strong>refore, few oceanographers are likely to be familiar with<br />

<strong>the</strong> LB method, this paper is designed to be as self-contained as possible.<br />

2. The lattice <strong>Boltzmann</strong> method<br />

We illustrate <strong>the</strong> lattice <strong>Boltzmann</strong> method by application to <strong>the</strong> uni-directional wave<br />

equation,<br />

h<br />

t 1<br />

c R(h) h<br />

5 0, (2.1)<br />

x<br />

for h(x, t) on <strong>the</strong> in nite domain 2 ` , x , 1 ` . Here, c R (h), a prescribed function, is <strong>the</strong><br />

speed of <strong>the</strong> ‘‘real’’ waves. Of course, solutionsof (2.1) generally become multivalued after<br />

a nite time unless a diffusion term is added to (2.1). Never<strong>the</strong>less, we begin by<br />

considering (2.1). Although this example is extremely simple, it illustrates nearly all of <strong>the</strong><br />

important ideas needed for <strong>the</strong> more complicated cases of interest.<br />

In <strong>the</strong> LB method we introduce two new dependent variables, h 1 (x, t) and h 2 (x, t), which<br />

are related to h(x, t) by<br />

The new dependent variables obey equations of <strong>the</strong> form<br />

h 5 h 1 1 h 2 . (2.2)<br />

h 1 (x 1 cD t, t 1 D t) 5 h 1 (x, t) 2 l D t(h 1 (x, t) 2 h 1 eq (h))<br />

h 2 (x 2 cD t, t 1 D t) 5 h 2 (x, t) 2 l D t(h 2 (x, t) 2 h 2 eq (h))<br />

(2.3)<br />

where <strong>the</strong> constants c, D t, and l , and <strong>the</strong> functions h 1 eq (h) and h 2 eq (h) remain to be speci ed.<br />

The strategy is to de ne <strong>the</strong>se functions and parameters such that solutions of (2.3)<br />

approximate <strong>the</strong> solutions of (2.1).<br />

We can regard (2.3) as nite-difference equations for h 1 and h 2 , de ned at lattice points<br />

separated by<br />

D x 5 cD t. (2.4)


l<br />

1<br />

1<br />

<br />

1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

507<br />

The h eq terms couple (2.3) toge<strong>the</strong>r. However, it is better to regard <strong>the</strong> discrete dynamics<br />

(2.3) as a cycle with two steps. The rst step corresponds to <strong>the</strong> collision<br />

h8 1 5 h 1 (x, t) 2 l D t(h 1 (x, t) 2 h 1 eq (h))<br />

h8 2 5 h 2 (x, t) 2 l D t(h 2 (x, t) 2 h 2 eq (h))<br />

(2.5)<br />

at each lattice point. The collision step relaxes each h i toward its local equilibrium value<br />

h eq i (h 1 1 h 2 ), which remains to be de ned. The primes denote <strong>the</strong> values immediately after<br />

<strong>the</strong> collision. The second step is a streaming<br />

h 1 (x 1 cD t, t 1 D t) 5 h8 1 (x, t)<br />

h 2 (x 2 cD t, t 1 D t) 5 h8 2 (x, t)<br />

(2.6)<br />

to <strong>the</strong> neighboring lattice points. In <strong>the</strong> limit l ® 0 of no collisions, h 1 propagates<br />

unchanged to <strong>the</strong> right at speed c, from one lattice point to <strong>the</strong> next in a time step, whereas<br />

h 2 propagates to <strong>the</strong> left at <strong>the</strong> same speed. This suggests that we regard h 1 as <strong>the</strong> population<br />

of rightward-moving particles, h 2 as <strong>the</strong> population of leftward-moving particles, and h 5<br />

h 1 1 h 2 as <strong>the</strong> total population.<br />

As a rst step, we investigate (2.3) in <strong>the</strong> usual manner of assessing nite-difference<br />

equations: We regard c as a xed constant and consider <strong>the</strong> limit D t ® 0, which <strong>the</strong>n<br />

corresponds to <strong>the</strong> limit of small time step and small lattice spacing. For D t ® 0, (2.3) take<br />

<strong>the</strong> form<br />

t 1<br />

<br />

t 2<br />

c <br />

x2 h 1 5 2 l (h 1 2 h 1 eq (h))<br />

c<br />

<br />

x2 h 2 5 2 l (h 2 2 h 2 eq (h))<br />

(2.7)<br />

of characteristic equations; <strong>the</strong> characteristics are <strong>the</strong> lines of constant x 6 ct. In <strong>the</strong> limit<br />

® 0 of no collisions, h 1 and h 2 are Riemann invariants. However, we shall see that <strong>the</strong><br />

collision terms are actually very important. In <strong>the</strong> physically relevant regime of relatively<br />

large l , <strong>the</strong> collision terms hold <strong>the</strong> populations h i very close to <strong>the</strong>ir corresponding<br />

equilibrium values h eq i .<br />

We manipulate (2.7) into a single equation for h, and <strong>the</strong>n choose h eq 1<br />

(h) and h eq 2<br />

(h) so<br />

that this equation approximates <strong>the</strong> equation (2.1) of interest. Let<br />

q ; h 1 2 h 2 , (2.8)<br />

and rewrite (2.7) in terms of h and q. By summing and differencing (2.7) we obtain<br />

h<br />

t 1<br />

c q<br />

x 5 2 l (h 2 heq (h)) (2.9)


508 Journal of Marine Research [57, 3<br />

and<br />

q<br />

t 1<br />

c h<br />

x 5 2 l (q 2 qeq (h)) (2.10)<br />

where<br />

h eq ; h 1 eq 1 h 2<br />

eq<br />

(2.11)<br />

and<br />

q eq ; h 1 eq 2 h 2 eq . (2.12)<br />

We assume that <strong>the</strong> local equilibrium has <strong>the</strong> same h as <strong>the</strong> actual, slightly disequilibrium,<br />

state. That is,<br />

h 1 eq 1 h 2 eq 5 h 1 1 h 2 ; h. (2.13)<br />

Eq. (2.13) is <strong>the</strong> rst of two equations that will determine <strong>the</strong> h i eq . Because of (2.13), <strong>the</strong><br />

collisions (2.5) conserve <strong>the</strong> total population, and (2.9) becomes<br />

h<br />

t 1<br />

c q<br />

5 0. (2.14)<br />

x<br />

1 l<br />

Thus, collision terms occur in <strong>the</strong> evolution equation (2.10) for q, but not in <strong>the</strong> equation<br />

(2.14) for h. This makes h <strong>the</strong> slow mode and q <strong>the</strong> fast mode.<br />

To obtain a closed equation for h, we apply / t to (2.14) and use (2.10) to eliminate q.<br />

The result<br />

h tt 2 c 2 h xx 1 l 1 h t 1<br />

x (cqeq (h)) 2 5 0. (2.15)<br />

We choose<br />

q eq (h) 5<br />

1<br />

c e c R (h) dh, (2.16)<br />

so that (2.15) becomes<br />

h tt 2 c 2 h xx 1 l (h t 1 c R (h)h x ) 5 0. (2.17)<br />

Eq. (2.16) is <strong>the</strong> second of two equations that determine <strong>the</strong> h i eq . By (2.13) and (2.16),<br />

h 1 eq 5<br />

h 2 eq 5<br />

h<br />

2 1 1<br />

2c e c R (h) dh<br />

h<br />

2 2 1<br />

2c e c R (h) dh.<br />

(2.18)


l<br />

l<br />

1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

509<br />

If we take <strong>the</strong> lattice spacing D x as given, <strong>the</strong>n, by (2.4), <strong>the</strong> choice of c corresponds to <strong>the</strong><br />

choice of time step D t. Thus <strong>the</strong> LB dynamics (2.3) is completely speci ed by (2.18) and<br />

<strong>the</strong> choice of c and l .<br />

Eq. (2.17) represents <strong>the</strong> sum of <strong>the</strong> ‘‘textbook’’ wave equation, with propagation speed<br />

c, plus l multiplied by <strong>the</strong> equation (2.1) of interest. Therefore we should choose l large<br />

enough so that <strong>the</strong> last two terms in (2.17) dominate <strong>the</strong> rst two terms. The second term in<br />

(2.17) is a diffusion term of <strong>the</strong> kind required to keep (2.1) well behaved. <strong>On</strong> <strong>the</strong> o<strong>the</strong>r<br />

hand, <strong>the</strong> rst term in (2.17) is unphysical, from <strong>the</strong> standpoint of (2.1). In summary <strong>the</strong>n,<br />

our strategy should be to choose l and c such that<br />

Then, neglecting only <strong>the</strong> smallest term, (2.17) becomes<br />

* h tt * ½ * c 2 h xx * ½ * l c R h x * . (2.19)<br />

h t 1 c R (h)h x 5<br />

c 2<br />

h xx , (2.20)<br />

D D<br />

l<br />

< <<br />

<strong>the</strong> diffusive form of (2.1). From (2.20), we see that for xed x and t, and hence xed c,<br />

controls <strong>the</strong> diffusion coefficient c 2 /l .<br />

Suppose that c R (h) is nearly uniform, ei<strong>the</strong>r because h is nearly uniform, or because<br />

c R (h) is a nearly constant function. Then since h t c R h x , we have h tt c 2 R h xx , and <strong>the</strong> rst<br />

inequality in (2.19) corresponds to<br />

By (2.4), this is just <strong>the</strong> usual CLF criterion,<br />

c R , c. (2.21)<br />

c R ,<br />

D x<br />

D t , (2.22)<br />

that <strong>the</strong> physical wave cannot propagate far<strong>the</strong>r than a lattice distance D x in a time step D t.<br />

If we include <strong>the</strong> effects of <strong>the</strong> rst term in (2.17) (still assuming h t < c R h x ), <strong>the</strong>n (2.20)<br />

becomes<br />

h t 1 c R (h)h x 5<br />

c 2 2<br />

2 c R<br />

h xx . (2.23)<br />

Thus, violation of <strong>the</strong> CLF criterion leads to instability in <strong>the</strong> form of a negative diffusion<br />

in (2.23).<br />

The present example is an especially simple one. In more complicated cases, particularly<br />

those involving more than one space dimension, such a direct analysis of <strong>the</strong> full set of<br />

population equations becomes impractical. In <strong>the</strong>se cases, it is better to use an approximation<br />

method—<strong>the</strong> Chapman-Enskog expansion—that explicitly tracks only <strong>the</strong> slow<br />

modes. Because it treats <strong>the</strong> more numerous fast modes only implicitly, <strong>the</strong> Chapman-


e<br />

510 Journal of Marine Research [57, 3<br />

Enskog expansion can be carried to a higher order in D t. This higher accuracy is important.<br />

For example, (2.20) suggests that <strong>the</strong> diffusion can be made arbitrarily small by making l<br />

arbitrarily large, whereas general experience with equations like (2.3) leads us to expect<br />

that l cannot be made much larger than about D t 2 1 . Using <strong>the</strong> more accurate result of <strong>the</strong><br />

Chapman-Enskog expansion, we nd that <strong>the</strong> diffusion can indeed be made arbitrarily<br />

small, but by making l close to <strong>the</strong> well-de ned upper bound 2/D t. This insight proves<br />

critical for applications.<br />

The Chapman-Enskog expansion is a dual expansion in D t and in <strong>the</strong> nearness of each h i<br />

to h eq i . The populations remain near <strong>the</strong>ir local equilibrium values because <strong>the</strong> decay<br />

parameter l is large. Thus e ; 1/l is <strong>the</strong> second small parameter. We assume that D t and e<br />

have <strong>the</strong> same small size, and we take <strong>the</strong> h eq i to be given by (2.18). Expanding (2.3) in D t,<br />

we obtain<br />

where<br />

(D i 1 1<br />

2D tD i 2 1 · · ·)h i 5 2 l (h i 2 h i eq ), i 5 1, 2 (2.24)<br />

D 1 5<br />

<br />

t 1<br />

c <br />

x<br />

and D 2 5<br />

<br />

t 2<br />

c <br />

x . (2.25)<br />

Then, expanding <strong>the</strong> h i about <strong>the</strong>ir prescribed equilibrium values,<br />

h i 5 h i eq 1 e h i (1) 1 e 2 h i (2) 1 · · · , e ; l<br />

2 1 , (2.26)<br />

and substituting (2.26) into (2.24), we obtain<br />

1 D i 1<br />

1<br />

2 D tD i 2 1 · · ·2 (h i eq 1 e h i (1) 1 · · ·) 5 2<br />

To <strong>the</strong> rst two orders in D t or e , (2.27) takes <strong>the</strong> form<br />

1<br />

(e h (1) i<br />

1 e 2<br />

h (2) i<br />

1 · · ·). (2.27)<br />

G<br />

i (0) 1 G<br />

i (1) 5 0, (2.28)<br />

where<br />

G<br />

i (0) 5 D i h i eq 1 h i<br />

(1)<br />

(2.29)<br />

contains all <strong>the</strong> order one terms and<br />

G i (1) 5 1<br />

2D tD i 2 h i eq 1 e D i h i (1) 1 e h i<br />

(2)<br />

(2.30)<br />

contains all <strong>the</strong> terms of order D t or e .<br />

To get a closed equation for <strong>the</strong> slow mode h(x, t), we sum (2.28) over i and use <strong>the</strong><br />

conservation property (2.13) of (2.18), which implies that<br />

o<br />

i<br />

h i (1) 5<br />

o<br />

i<br />

h i (2) 5 · · · 5 0. (2.31)


l<br />

2<br />

l<br />

2<br />

1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

511<br />

Thus, by (2.18),<br />

o<br />

i<br />

G i (0) 5<br />

o<br />

i<br />

D i h i eq 5<br />

h<br />

t 1<br />

c R(h) h<br />

x . (2.32)<br />

Similarly,<br />

o<br />

i<br />

G<br />

i (1) 5<br />

1<br />

2 D t o<br />

i<br />

D i 2 h i eq 1<br />

e o<br />

i<br />

D i h i (1) . (2.33)<br />

To consistent order, we may simplify (2.33) by substituting for h i (1) from <strong>the</strong> leading order<br />

approximation to (2.28), namely<br />

Thus, to consistent order,<br />

h i (1) 5 2 D i h i eq . (2.34)<br />

o<br />

i<br />

G i (1) 5<br />

1<br />

2 D t o<br />

i<br />

D i 2 h i eq 2<br />

e o<br />

i<br />

D i (D i h i eq ) 5 1<br />

D t<br />

2 2 1<br />

l 2 o<br />

i<br />

D i 2 h i eq . (2.35)<br />

5 2 Using (2.18) again, and <strong>the</strong> fact that h t c R h x at leading order, we nd that, to consistent<br />

order,<br />

o<br />

i<br />

D i 2 h i eq 5 h tt 1 2(c R h x ) t 1 c 2 h xx < (c 2 2 c R 2 )h xx . (2.36)<br />

Thus, to <strong>the</strong> rst two orders in D t and e , <strong>the</strong> Chapman-Enskog expansion yields<br />

1<br />

h t 1 c R (h)h x 5 1<br />

D t<br />

2 2 (c 2 2 c R 2 )h xx , (2.37)<br />

a more accurate version of (2.23). <strong>On</strong>ce again, if c is much larger than c R , <strong>the</strong>n (2.37)<br />

becomes<br />

1<br />

h t 1 c R (h)h x 5 1<br />

D t<br />

2 2 c 2 h xx . (2.38)<br />

Compare (2.38) to <strong>the</strong> corresponding but less accurate result (2.20). According to (2.38),<br />

<strong>the</strong> diffusion coefficient decreases with increasing l , vanishing as l approaches <strong>the</strong> critical<br />

value 2/D t. For still larger l , <strong>the</strong> solutions of <strong>the</strong> LB equations become unstable.<br />

3. The shallow-water equations<br />

In this section we derive <strong>the</strong> LB approximation to <strong>the</strong> shallow water equations,<br />

h<br />

t 1<br />

x a<br />

(u a h) 5 0 (3.1)


512 Journal of Marine Research [57, 3<br />

Figure 1. At each lattice point, particles move in one of 8 directions to an adjacent lattice point in a<br />

time step.<br />

and<br />

t (u a h) 1<br />

x b<br />

P a b 5 F a , (3.2)<br />

where<br />

P a b 5 1<br />

2gh 2 d a b 1 u a u b h. (3.3)<br />

Here, h is <strong>the</strong> uid depth, (u 1 , u 2 ) ; (u, v) ; u is <strong>the</strong> uid velocity, g is <strong>the</strong> gravity constant,<br />

and F a is <strong>the</strong> sum of all <strong>the</strong> forces including Coriolis force. Repeated Greek subscripts are<br />

summed from 1 to 2.<br />

We use a square two-dimensional lattice. Let D x be <strong>the</strong> distance between lattice points in<br />

ei<strong>the</strong>r direction. Refer to Figure 1. We adopt <strong>the</strong> 8-velocity model with<br />

for <strong>the</strong> velocity of <strong>the</strong> rest particle;<br />

c 0 5 0 (3.4)<br />

c 1 5 (c, 0), c 3 5 (0, c), c 5 5 (2 c, 0), c 7 5 (0, 2 c) (3.5)<br />

for <strong>the</strong> velocities of <strong>the</strong> particles moving in <strong>the</strong> 4 coordinate directions; and<br />

c 2 5 (c, c), c 4 5 (2 c, c), c 6 5 (2 c, 2 c), c 8 5 (c, 2 c) (3.6)


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

513<br />

for <strong>the</strong> particle velocities in <strong>the</strong> 4 diagonal directions. We take cD t 5 D x, so that all <strong>the</strong><br />

particles (except <strong>the</strong> rest particle) move from lattice point to adjacent lattice point in a<br />

timestep D t.<br />

As in Section 2, we regard h i (x, t) as <strong>the</strong> population of particles with velocity c i at lattice<br />

point x and time t. The equations<br />

8<br />

h(x, t) 5 h i (x, t) (3.7)<br />

oi5 0<br />

and<br />

8<br />

hu(x, t) 5 c i h i (x, t) (3.8)<br />

oi5 0<br />

relate <strong>the</strong> 9 populations 5 h i (x, t), i 5 0, 86 at lattice point x and time t to <strong>the</strong> uid depth<br />

h(x, t) and velocity u(x, t) at <strong>the</strong> same location and time. Since c 0 5 0, <strong>the</strong> rest particles do<br />

not contribute to <strong>the</strong> momentum. The three physical variables h, u, and v are <strong>the</strong> slow<br />

modes of <strong>the</strong> LB model. Thus <strong>the</strong>re are 9 2 3 5 6 fast modes.<br />

<strong>On</strong>ce again, <strong>the</strong> LB dynamics comprises two steps: a collision step, which adjusts <strong>the</strong><br />

populations at each lattice point, followed by a streaming step, in which particles move to<br />

<strong>the</strong> neighboring lattice points. The collision step is governed by<br />

h8 i (x, t) 5 h i (x, t) 2 l D t(h i (x, t) 2 h i eq (x, t)) (3.9)<br />

where l is <strong>the</strong> decay coefficient, and <strong>the</strong> prime denotes <strong>the</strong> value immediately after <strong>the</strong><br />

collision. The equilibrium populations<br />

h eq (x) ; 5 h 0 eq (x), h 1 eq (x), . . . , h 8 eq (x)6 (3.10)<br />

remain to be de ned. The streaming step is governed by<br />

h i (x 1 c i D t, t 1 D t) 1 h8 i (x, t) 1<br />

D t<br />

6c c 1<br />

2 ia 1 2 F a (x, t) 1<br />

1<br />

2 F a (x 1 c i D t, t 1 D t) 2 (3.11)<br />

where c ia is <strong>the</strong> component of c i in <strong>the</strong> a -direction. <strong>On</strong>ce again, repeated Greek indices are<br />

summed. Note that <strong>the</strong> forcing term in (3.11) represents an average of <strong>the</strong> values at <strong>the</strong><br />

departure point (x, t) and <strong>the</strong> arrival point (x 1 c i D t, t 1 D t) of <strong>the</strong> streaming particle; this<br />

proves essential to maintaining second order accuracy in <strong>the</strong> Chapman-Enskog expansion.<br />

Combining (3.9) and (3.11) into a single formula, we obtain <strong>the</strong> complete LB dynamics<br />

h i (x 1 c i D t, t 1 D t) 2 h i (x, t) 2<br />

D t<br />

6c c 1<br />

2 ia 1 2 F a (x, t) 1<br />

1<br />

2 F a (x 1 c i D t, t 1 D t) 2<br />

5 2 l D t(h i (x, t) 2 h i eq (x, t)).<br />

(3.12)<br />

<strong>On</strong>ce again, our strategy is to choose <strong>the</strong> constants c, D t, and l , and <strong>the</strong> 9 functions


514 Journal of Marine Research [57, 3<br />

h i eq (h, u, v) (where h, u, v are de ned by (3.6–8)) such that <strong>the</strong> slow modes computed from<br />

(3.12) approximately satisfy <strong>the</strong> shallow water equations. The choices<br />

h 0 eq 5 h 2<br />

2 5gh 2 2h<br />

6c 2 3c u · u 2 (3.13)<br />

h i eq 5<br />

gh 2<br />

6c 1 2<br />

h<br />

3c c 2 ia u a 1<br />

h<br />

2c c 4 ia c ib u a u b 2<br />

h<br />

u · u, odd i (3.14)<br />

2<br />

6c<br />

h i eq 5<br />

gh 2<br />

24c 1 2<br />

h<br />

12c 2 c ia u a 1<br />

h<br />

8c c 4 ia c ib u a u b 2<br />

h<br />

u · u, even i (3.15)<br />

2<br />

24c<br />

have <strong>the</strong> important properties that<br />

o<br />

i<br />

h i eq 5 h, (3.16)<br />

o<br />

i<br />

c ia h i eq 5 hu a , (3.17)<br />

and<br />

o<br />

i<br />

c ia c ib h i eq 5<br />

1<br />

2 gh2 d a b 1 u a u b h. (3.18)<br />

As always, <strong>the</strong> equilibrium populationsh i eq depend only on <strong>the</strong> slow modes h, u, and v. The<br />

speci c choices (3.13–15) are somewhat arbitrary, but we shall see that <strong>the</strong> properties<br />

(3.16–18) guarantee that <strong>the</strong> slow mode dynamics approximates <strong>the</strong> shallow-water equations<br />

(3.1–3). The properties (3.16) and (3.17) correspond to <strong>the</strong> conservation of mass and<br />

momentum, respectively, by <strong>the</strong> collisions (3.9). Property (3.18) makes <strong>the</strong> momentum ux<br />

of <strong>the</strong> LB particles equal to <strong>the</strong> momentum ux (3.3) of <strong>the</strong> shallow water equations. For a<br />

motivated derivation of (3.13–15), see <strong>the</strong> Appendix.<br />

The LB dynamics (3.12) comprises 9 evolution equations for <strong>the</strong> 9 population variables<br />

h i . Because <strong>the</strong>re are so many dependent variables, a direct analysis of <strong>the</strong> full set of<br />

equations like that performed in Section 2 is ra<strong>the</strong>r difficult. However, most of <strong>the</strong><br />

dependent variables represent fast modes. Therefore, <strong>the</strong> Chapman-Enskog expansion,<br />

which pursues only <strong>the</strong> slow modes, remains relatively easy. <strong>On</strong>ce again, <strong>the</strong> Chapman-<br />

Enskog expansion is a dual expansion in D t and e ; l<br />

2 1<br />

, which are assumed to be of <strong>the</strong><br />

same order. The smallness of D t (for xed c) corresponds to <strong>the</strong> assumption that <strong>the</strong><br />

population variables vary slowly on <strong>the</strong> scale of <strong>the</strong> lattice spacing and <strong>the</strong> time step. The<br />

smallness of e corresponds to <strong>the</strong> assumption that <strong>the</strong> collisions hold <strong>the</strong> populations near<br />

<strong>the</strong>ir equilibrium values (3.13–15). Expanding (3.12) in D t, and substituting<br />

h i 5 h i eq 1 e h i (1) 1 e 2<br />

h i (2) 1 · · · (3.19)


e<br />

1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

515<br />

we obtain<br />

1 D i 1<br />

1<br />

2 D t D i 2 1 · · ·2 (h i eq 1 e h i (1) 1 · · ·) 2<br />

1<br />

6c 2 c ia 1 1 1<br />

1<br />

5 2<br />

2 D t D i 1 · · ·2 F a (x, t)<br />

1<br />

(e h (1) i<br />

1 e 2<br />

h (2) i<br />

1 · · ·)<br />

(3.20)<br />

where<br />

D i ;<br />

<br />

t 1<br />

c ia<br />

x a<br />

. (3.21)<br />

To <strong>the</strong> rst two orders in e or D t, (3.20) is<br />

where<br />

G i (0) 1 G i (1) 5 0, (3.22)<br />

G<br />

i (0) 5 D i h i eq 2<br />

1<br />

6c 2 c ia F a 1 h i<br />

(1)<br />

(3.23)<br />

contains <strong>the</strong> order one terms, and<br />

G i (1) 5<br />

1<br />

2 D tD i 2 h i eq 1 e D i h i (1) 2<br />

D t<br />

12c 2 c ia D i F a 1 e h i<br />

(2)<br />

(3.24)<br />

contains <strong>the</strong> terms of order D t or e . As in Section 2, we may consistently use <strong>the</strong> leading<br />

order balance in (3.22) to simplify <strong>the</strong> next order terms. Thus solving G<br />

i (0) 5 0 for D i h eq i and<br />

substituting <strong>the</strong> result into (3.24) yields<br />

G<br />

i (1) < 1 e 2<br />

D t<br />

2 2 D i h i (1) 1 e h i (2) . (3.25)<br />

To obtain <strong>the</strong> slow mode dynamics, we apply S and S c ia to (3.22). Since <strong>the</strong> h eq de ned<br />

i i<br />

by (3.13–15) satisfy (3.16) and (3.17), it follows from (3.19) that<br />

o<br />

i<br />

h i (1) 5<br />

o<br />

i<br />

h i (2) 5<br />

o<br />

i<br />

c ia h i (1) 5<br />

o<br />

i<br />

c ia h i (2) 5 0. (3.26)<br />

Therefore (3.23) implies that<br />

o<br />

i<br />

G i (0) 5<br />

o<br />

i<br />

D i h i eq 5<br />

h<br />

t 1<br />

x a<br />

(hu a ), (3.27)<br />

and (3.25) implies that<br />

o<br />

i<br />

G<br />

i (1) 5 0. (3.28)


516 Journal of Marine Research [57, 3<br />

Thus <strong>the</strong> LB dynamics implies <strong>the</strong> shallow water continuity equation (3.1) with an acuracy<br />

of O(e 2<br />

).<br />

To obtain <strong>the</strong> corresponding momentum equation, we use (3.23), (3.26) and (3.16–18) to<br />

compute<br />

o<br />

i<br />

c ia G<br />

i (0) 5<br />

t (u a h) 1<br />

x b<br />

P a b 2 F a , (3.29)<br />

where P a b<br />

is given by (3.3). Similarly, from (3.25) we obtain<br />

o<br />

i<br />

c ia G<br />

i (1) 5 1 e 2<br />

D t<br />

2 2<br />

x b<br />

o<br />

i<br />

c ia c ib h i (1) . (3.30)<br />

Thus, with an accuracy of O(e 2<br />

), <strong>the</strong> LB dynamics implies<br />

t (u a h) 1<br />

x b<br />

P a b 2 F a 5 2<br />

x b<br />

T a b (3.31)<br />

where <strong>the</strong> viscous tensor<br />

T a b 5 1 e 2<br />

D t<br />

2 2 o<br />

i<br />

c ia c ib h i<br />

(1)<br />

(3.32)<br />

represents <strong>the</strong> higher order terms. To consistent order, we may substitute <strong>the</strong> leading order<br />

balance<br />

h i (1) 5 2 D i h i eq 1<br />

1<br />

6c 2 c ia F a (3.33)<br />

into <strong>the</strong> higher order term (3.32). We obtain<br />

T a b 5<br />

1<br />

D t<br />

2 2 e <br />

2 1 t<br />

o<br />

i<br />

c ia c ib h i eq 1<br />

x g<br />

o<br />

i<br />

c ia c ib c ig h i<br />

eq2<br />

. (3.34)<br />

If we choose c 2 ¾ gh—<strong>the</strong> analog of c ¾ c R in Section 2—<strong>the</strong>n <strong>the</strong> contribution of <strong>the</strong><br />

/ t-term in (3.34) is negligible. Using (3.14–15) to evaluate <strong>the</strong> o<strong>the</strong>r term, we obtain<br />

D t<br />

T a b 5 1 2 2 e 2<br />

1<br />

3 c2 5 = · (hu)d a b 1<br />

x a<br />

(hu b ) 1<br />

x b<br />

(hu a ) 6 . (3.35)<br />

Thus<br />

T a b D t<br />

5<br />

x b<br />

1 2 2 e 2<br />

1<br />

3 5 c2 2 <br />

= · (hu) 1<br />

x a<br />

<br />

2<br />

x b x b<br />

(hu a ) 6 . (3.36)


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

517<br />

The rst term in <strong>the</strong> curly bracket represents a small correction to <strong>the</strong> pressure; <strong>the</strong> second<br />

term resembles <strong>the</strong> usual viscosity. If we retain only this second term, <strong>the</strong>n (3.31) becomes<br />

t (u a h) 1<br />

x b<br />

P a b 2 F a 5 n<br />

2 (hu a )<br />

x b x b<br />

(3.37)<br />

where<br />

n 5<br />

1 1<br />

3 5<br />

c2 2<br />

l<br />

D t<br />

2 6 (3.38)<br />

is <strong>the</strong> viscosity coefficient. Thus, to <strong>the</strong> second order in e and D t, <strong>the</strong> LB dynamics implies<br />

<strong>the</strong> continuity equation (3.1) and <strong>the</strong> momentum equation (3.37) with viscosity coefficient<br />

(3.38).<br />

We conclude this section by summarizing <strong>the</strong> shallow water LB model as an algorithm<br />

with a 4-step cycle:<br />

(1) Given <strong>the</strong> populations h i (x, t) at every lattice point x, compute <strong>the</strong> uid depth and<br />

velocity from (3.7–8).<br />

(2) From <strong>the</strong>se h(x) and u(x), compute <strong>the</strong> equilibrium populations h i eq (x, t) from<br />

(3.13–15).<br />

(3) Collide <strong>the</strong> particles using (3.9).<br />

(4) Stream <strong>the</strong> particles using (3.11). Return to step (1).<br />

<strong>On</strong>ce again, to <strong>the</strong> rst two orders of approximation, this algorithm is equivalent to <strong>the</strong><br />

viscous shallow-water dynamics (3.1) and (3.37–38).<br />

4. Numerical experiments<br />

We consider an ocean composed of two immiscible layers with different uniform mass<br />

densities, and we assume that <strong>the</strong> lower layer is at rest. The upper layer is governed by <strong>the</strong><br />

shallow water equations with reduced gravity g. For <strong>the</strong>se we use <strong>the</strong> LB model derived in<br />

Section 3, with forcing<br />

F a 5 e a b fhu b 1<br />

h 1<br />

h<br />

d E<br />

t a . (4.1)<br />

Here, e a b is <strong>the</strong> permutation symbol, f 5 f 0 1 b y is <strong>the</strong> Coriolis parameter, t (x, y) 5 (t 1, t 2)<br />

is <strong>the</strong> prescribed wind stress (divided by 1 gm cm 2 3 ), and d E is <strong>the</strong> Ekman thickness, a<br />

prescribed constant. By <strong>the</strong> results of Section 3, solutions of <strong>the</strong> LB equations with forcing<br />

(4.1) approximately satisfy<br />

(hu) t 1 (huu) x 1 (hvu) y 1 f k 3 hu 5 2 gh= h 1<br />

h 1<br />

h<br />

d E<br />

t 1 n = 2 (hu) (4.2)


l<br />

2<br />

<br />

1 = 5<br />

<br />

= 5 <br />

518 Journal of Marine Research [57, 3<br />

and<br />

h<br />

t<br />

· (hu) 0, (4.3)<br />

where ( x, y) and<br />

1<br />

n 5 1<br />

1<br />

l max2<br />

c 2<br />

3 , (4.4)<br />

l 5 5 D<br />

l 5 l<br />

a<br />

d<br />

d<br />

, d<br />

d 5<br />

, , 5<br />

D 5<br />

5 3 2 5 5 2<br />

D 5 D 5 5<br />

b 5 5<br />

with max 2/D t and c x/D t as before.<br />

Models like (4.2–3), often called one-and-one-half layer models or reduced gravity<br />

models, are frequently studied prototypes for <strong>the</strong> more complex multi-layer or continuously<br />

strati ed ocean circulation models. The atypical features of (4.2) are <strong>the</strong> quotient<br />

preceding <strong>the</strong> wind stress, and <strong>the</strong> presence, inside <strong>the</strong> viscous Laplacian, of <strong>the</strong> factor h.<br />

The latter is a typical feature of LB calculations, an example of <strong>the</strong> ‘‘in exibility’’<br />

mentioned in Section 1. If u varies on a smaller lengthscale than h, <strong>the</strong>n <strong>the</strong> viscosity in<br />

(4.2) is practically <strong>the</strong> same as standard Navier-Stokes viscosity. However, in <strong>the</strong> present<br />

application, <strong>the</strong>re is no compelling reason to prefer one form of viscosity over <strong>the</strong> o<strong>the</strong>r. It<br />

is even conceivable that <strong>the</strong> dissipation operator in (4.2), which arises naturally from <strong>the</strong><br />

collide-and-stream algorithm, may have advantages over more arbitrarily chosen dissipation<br />

operators. Of course, one could turn off <strong>the</strong> viscosity in (4.2) by setting max, and<br />

<strong>the</strong>n insert a completely arbitrary dissipation into <strong>the</strong> forcing F . However, that would<br />

violate <strong>the</strong> aes<strong>the</strong>tic principle that LB dynamics should be based on <strong>the</strong> simplest feasible<br />

set of operations.<br />

As for <strong>the</strong> quotient in <strong>the</strong> wind forcing term, we imagine that all of <strong>the</strong> momentum put in<br />

by <strong>the</strong> wind stress is mixed downward through an ‘‘Ekman layer’’ of depth E by<br />

small-scale processes not contained in <strong>the</strong> model. If <strong>the</strong> upper layer depth h is much greater<br />

than E, <strong>the</strong>n <strong>the</strong> quotient in (4.1) is near unity, and <strong>the</strong> upper layer absorbs nearly all of <strong>the</strong><br />

momentum put in by <strong>the</strong> wind. However, if h E <strong>the</strong>n <strong>the</strong> upper layer absorbs only a<br />

fraction, h/d E, of <strong>the</strong> wind momentum; <strong>the</strong> rest is lost to <strong>the</strong> lower layer, which never<strong>the</strong>less<br />

remains at rest because of its great presumed thickness. This forcing strategy, which can be<br />

viewed as an alternative to interfacial friction, avoids <strong>the</strong> unrealistic behavior that could<br />

develop if a nite amount of wind mometum were spread over a vanishing upper layer<br />

depth. In all <strong>the</strong> solutions discussed, E 100 m.<br />

We solve (4.2–3) in <strong>the</strong> square box, 0 x, y L 4000 km. All <strong>the</strong> solutions discussed<br />

have 100 lattice points in each direction. Thus x 40 km. The reduced gravity has <strong>the</strong><br />

value g .002 9.8 m sec 2 . For an upper layer depth of h 500 m, this corresponds to<br />

an internal gravity wave speed (gh) 1/2 of 270 km day 1 . We choose c 540 km day 1 to<br />

ful ll <strong>the</strong> CLF criterion that c be larger than <strong>the</strong> speed of <strong>the</strong> gravity waves, <strong>the</strong> fastest<br />

waves present in <strong>the</strong> shallow water equations. Then t x/c .075 day. We take f 0<br />

2p day 1 and f 0 /6400 km. For h 500 m, this corresponds to an internal deformation


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

519<br />

radius (gh) 1/2 /f 0 of 43 km, and an internal Rossby wave speed ghb / f 2 0 of 1.8 km day 2 1 , at<br />

<strong>the</strong> sou<strong>the</strong>rn boundary.At this speed, Rossy waves cross <strong>the</strong> basin in about 6 years.<br />

In all <strong>the</strong> experiments discussed, t y 5 0, and<br />

t x 5 sin 2 (p y/L) dyn cm 2 2 . (4.5)<br />

Thus <strong>the</strong> wind blows west to east with a maximum force at mid-latitude, and both <strong>the</strong> wind<br />

stress and its curl vanish at <strong>the</strong> nor<strong>the</strong>rn and sou<strong>the</strong>rn boundaries. The anticipated<br />

circulation has two gyres.<br />

The relaxation coefficient l controls <strong>the</strong> viscosity n . Since l is of order D t 2 1 , <strong>the</strong><br />

viscosity n has scale size c 2 D t 5 cD x 5 25 3 10 8 cm 2 sec 2 1 . This corresponds to a Munk<br />

boundary layer thickness d M ; (n /b ) 1/3 of 280 km, which is too large. Realistically small<br />

viscosity relies on <strong>the</strong> cancellation between terms in (4.4) as l ® l max. In all of <strong>the</strong><br />

experiments discussed, l 5 0.95 3 l max corresponding to v 5 0.033 cD x and d M 5 90 km,<br />

about 2 lattice spacings. The ability to reduce <strong>the</strong> viscosity by choosing l very close to l max<br />

is absolutely vital for <strong>the</strong> practical application of LB methods. O<strong>the</strong>rwise <strong>the</strong> high intrinsic<br />

viscosity of LB dynamics makes <strong>the</strong> solutions unrealistically diffusive. Recall that <strong>the</strong><br />

l max-term in (4.4) arises from a second order term in D t in <strong>the</strong> Chapman-Enskog expansion.<br />

The streaming step (3.11) requires <strong>the</strong> forcing F a (x 1 c i D t, t 1 D t) at <strong>the</strong> particle<br />

destination and <strong>the</strong> new time. Since <strong>the</strong> forcing (4.1) involves <strong>the</strong> depth and velocity<br />

(which depend on <strong>the</strong> h i ), (3.11) is an implicit equation for h i at <strong>the</strong> new time. We solve<br />

(3.11) using a predictor-corrector method. In <strong>the</strong> predictor, we evaluate both forcing terms<br />

in (3.11) at <strong>the</strong> departure location and time. In each corrector, we evaluate <strong>the</strong> forcing term<br />

at <strong>the</strong> destination by using <strong>the</strong> previous iterate. Although 1 or 2 correctors seemed<br />

sufficient, all <strong>the</strong> solutions discussed use 4 correctors. The need for a predictor/corrector<br />

method to accommodate <strong>the</strong> Coriolis force somewhat compromises <strong>the</strong> efficiency and<br />

aes<strong>the</strong>tics of <strong>the</strong> LB model.<br />

We consider all of <strong>the</strong> lattice points to lie within <strong>the</strong> uid. The collision step is <strong>the</strong> same<br />

at all lattice points. At <strong>the</strong> lattice points closest to <strong>the</strong> boundary, we modify <strong>the</strong> streaming<br />

step (3.11) to incorporate <strong>the</strong> boundary conditions.All <strong>the</strong> experiments discussed used one<br />

of two algorithms. In <strong>the</strong> algorithm corresponding to no stress, particles streaming toward<br />

<strong>the</strong> boundary experience elastic collisions, as shown in Figure 2a. In <strong>the</strong> algorithm<br />

corresponding to no slip, particles streaming toward <strong>the</strong> boundary bounce back in <strong>the</strong><br />

direction from which <strong>the</strong>y came, as shown in Figure 2b. Both of <strong>the</strong>se algorithms are<br />

standard methodology in applications of LB dynamics. Note that, in both cases, <strong>the</strong><br />

boundary lies one half lattice distance outside <strong>the</strong> last row of lattice points. Apart from <strong>the</strong><br />

interaction with <strong>the</strong> boundary (that is, as regards <strong>the</strong> evaluation of <strong>the</strong> forcing terms and <strong>the</strong><br />

use of predictor-corrector), <strong>the</strong> streaming step is <strong>the</strong> same at all lattice points.<br />

Parsons (1969) and especially Veronis (1973, 1980) developed a relatively complete<br />

<strong>the</strong>ory of wind-driven, reduced-gravity ow based upon planetary geostrophic dynamics,<br />

in which <strong>the</strong> inertia Du/Dt is omitted from <strong>the</strong> shallow water momentum equation. For a<br />

brief summary of <strong>the</strong>ir <strong>the</strong>ory, see Salmon (1998a, pp. 182–188). To investigate planetary


520 Journal of Marine Research [57, 3<br />

Figure 2. The streaming of particles from a lattice point near <strong>the</strong> boundary. The boundary is dashed.<br />

(a) Elastic collisions with <strong>the</strong> boundary correspond to <strong>the</strong> boundary condition of no stress, that is,<br />

no normal transport of tangential momentum. (b) So-called ‘‘bounce back’’ collisions correspond<br />

to no-slip boundary conditions.<br />

geostrophic dynamics, we note that if all <strong>the</strong> terms quadratic in <strong>the</strong> velocity are simply<br />

dropped from <strong>the</strong> equilibrium populations(3.13–15), <strong>the</strong>n <strong>the</strong> Chapman-Enskog expansion<br />

yields <strong>the</strong> same continuity equation (4.3) as before. However, <strong>the</strong> resulting momentum<br />

equation,<br />

(hu) t 1 f k 3 hu 5 2 gh= h 1<br />

h 1<br />

h<br />

d E<br />

t 1 n = 2 (hu), (4.6)<br />

contains <strong>the</strong> local time derivative of <strong>the</strong> velocity, but omits <strong>the</strong> advection of momentum.<br />

Our calculations show that <strong>the</strong> LB solutions of (4.3) and (4.6) with steady wind forcing<br />

always eventually become steady. Thus, by simply dropping <strong>the</strong> O(u 2 ) terms in (3.13–15)<br />

we eventually obtain solutions of <strong>the</strong> planetary geostrophic equations in <strong>the</strong> form (4.3) and<br />

f k 3 hu 5 2 gh= h 1<br />

h 1<br />

h<br />

d E<br />

t 1 n = 2 (hu) (4.7)<br />

Figures 3 and 4 depict LB solutions of <strong>the</strong> shallow water (SW) and planetary geostrophic<br />

(PG) equations using <strong>the</strong> forcing and parameter settings just described. All solutions begin<br />

from a state of rest with uniform upper layer depth h. The solutions differ only in <strong>the</strong>ir


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

521<br />

dynamics (SW or PG), <strong>the</strong>ir boundary conditions (no slip or no stress), and in <strong>the</strong> total<br />

volume of upper layer water. If <strong>the</strong> upper layer volume is sufficiently small, <strong>the</strong>n, according<br />

to <strong>the</strong> <strong>the</strong>ory of Veronis, <strong>the</strong> wind stress (4.5) produces a nor<strong>the</strong>astward owing separated<br />

western boundary current (like <strong>the</strong> North Atlantic Current) and a southward owing<br />

isolated western boundary current (like <strong>the</strong> Labrador Current). Between <strong>the</strong>se two currents,<br />

<strong>the</strong> motionless lower layer outcrops at <strong>the</strong> sea surface. All <strong>the</strong> solutions of Figure 3 have an<br />

upper layer volume equivalent to an average h of 500 m. This is just above <strong>the</strong> critical value<br />

for which lower layer outcropping occurs. In contrast, all <strong>the</strong> solutions of Figure 4 have a<br />

mean layer depth of 300 m. For this lower volume of upper layer water, <strong>the</strong> lower layer<br />

outcrops over a broad area in <strong>the</strong> nor<strong>the</strong>rn gyre. The outcrop region is in fact a region of<br />

small but nonvanishing h maintained by <strong>the</strong> requirement that h remain greater than 5 m. If,<br />

at any lattice point, h falls below 5 m, upper layer water is added to make h 5 5 m. Without<br />

this simple augmentation, <strong>the</strong> LB algorithm described in Section 3 eventually becomes<br />

unstable for <strong>the</strong> solutions in which h vanishes.<br />

Table 1 summarizes all of <strong>the</strong> numerical solutions discussed. The ‘‘years’’ column gives<br />

<strong>the</strong> duration of <strong>the</strong> experiment in simulated years. All of <strong>the</strong> solutions became steady or<br />

statistically steady after about two decades, but some were run much longer to check for<br />

stationarity or to investigate small trends. The h-column in Table 1 gives <strong>the</strong> range of upper<br />

layer depth in <strong>the</strong> corresponding gure. The * hu* -column gives <strong>the</strong> maximum transport, in<br />

Sverdrups per kilometer distance in <strong>the</strong> direction normal to u. (1 Sverdrup 5<br />

1 Sv 5 10 6 m 3 sec 2 1 .) This maximum transport corresponds to <strong>the</strong> longest arrow in <strong>the</strong><br />

corresponding gure and thus sets <strong>the</strong> scale for <strong>the</strong> arrows. The last column in Table 1 gives<br />

<strong>the</strong> total transport of <strong>the</strong> sou<strong>the</strong>rn (nor<strong>the</strong>rn) gyre in Sverdrups. The nor<strong>the</strong>rn transport<br />

approaches <strong>the</strong> sou<strong>the</strong>rn transport only in <strong>the</strong> cases where h . d E over most of <strong>the</strong> nor<strong>the</strong>rn<br />

gyre, that is, only in <strong>the</strong> experiments with <strong>the</strong> greater upper layer volume.<br />

In every case, <strong>the</strong> SW solutions remain unsteady, but approach statistically steady states<br />

that are well established by <strong>the</strong> times given in Table 1 and shown in <strong>the</strong> gures. The<br />

uctuations about <strong>the</strong> mean are largest in <strong>the</strong> two SW solutions with <strong>the</strong> deeper upper layer<br />

(Fig. 3a–b), which feel <strong>the</strong> full wind forcing over a greater fraction of <strong>the</strong> domain.<br />

However, even in <strong>the</strong> SW no-slip solution of Figure 3a, which exhibited <strong>the</strong> largest<br />

uctuations, <strong>the</strong> depth and velocity elds shown on <strong>the</strong> gure closely resemble those in<br />

many o<strong>the</strong>r snapshots taken at different times. The two SW solutions with <strong>the</strong> shallower<br />

upper layer (Fig. 4a–b) exhibited very small uctuations, and could be described as<br />

quasi-steady.<br />

In contrast, <strong>the</strong> PG solutions, corresponding to <strong>the</strong> LB equivalent of (4.3, 4.6), always<br />

eventually become steady; hence we may consider <strong>the</strong>m as solutions of (4.3, 4.7). The PG<br />

solutions lack <strong>the</strong> quasi-stationary meanders and large inertial recirculations of <strong>the</strong> SW<br />

solutions near <strong>the</strong> western boundary. However, <strong>the</strong> corresponding SW and PG solutions<br />

generally resemble one ano<strong>the</strong>r, especially in <strong>the</strong> ocean interior. Overall, <strong>the</strong> PG solutions<br />

could be described as everywhere laminar and <strong>the</strong>refore somewhat less interesting than <strong>the</strong><br />

corresponding SW solutions.


Figure 3. Numerical solutions of <strong>the</strong> reduced gravity model using <strong>the</strong> 8-velocity lattice <strong>Boltzmann</strong><br />

method described in Sections 3 and 4. All 4 solutions correspond to an average layer depth of<br />

500 m. Contours represent <strong>the</strong> layer depth h, with darker contours corresponding to larger h. See<br />

Table 1 for <strong>the</strong> range of h in each picture.Arrows represent<strong>the</strong> transporthu, with <strong>the</strong> length of each<br />

arrow proportional to <strong>the</strong> square root of <strong>the</strong> transport (to reduce <strong>the</strong> range of arrow sizes). The<br />

longest arrow correspondsto <strong>the</strong> maximum transportgiven in Table 1. (a) Shallow water dynamics<br />

with no-slip boundary conditions.(b) Shallow water dynamics with no-stress boundaryconditions.<br />

(c) Planetary geostrophic dynamics with no-slip boundary conditions. (d) Planetary geostrophic<br />

dynamics with no-stress boundary conditions.


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

523<br />

Figure 3. (Continued)


524 Journal of Marine Research [57, 3<br />

Figure 4. The same as Figure 3, but for an average layer depth of 300 m. At this lower volume of<br />

upper layer water, <strong>the</strong> motionless lower layer outcrops over a broad area in <strong>the</strong> nor<strong>the</strong>rn gyre.


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

525<br />

Figure 4. (Continued)


526 Journal of Marine Research [57, 3<br />

Table 1. Summary of numerical experiments.<br />

Fig. Dynamics Average h B. cond. Years<br />

h min<br />

(max)<br />

Maximum<br />

* hu *<br />

s (n) gyre<br />

transports<br />

2 3a SW 500 m no-slip 40 100m (687 m) 0.20 Sv km 1 25.3 Sv (22.4 Sv)<br />

3b SW 500 no-stress 60 87 (697) 0.30 26.4 (23.8)<br />

3c PG 500 no-slip 30 44 (695) 0.20 26.4 (24.0)<br />

3d PG 500 no-stress 60 5 (710) 0.33 28.7 (24.6)<br />

4a SW 300 m no-slip 55 5 (582) 0.17 25.6 (11.3)<br />

4b SW 300 no-stress 85 5 (597) 0.22 26.9 (11.9)<br />

4c PG 300 no-slip 40 5 (550) 0.17 21.9 (11.3)<br />

4d PG 300 no-stress 40 5 (560) 0.26 22.7 (11.9)<br />

6a PG-4 500 m no-normal 40 173 (674) 0.41 22.7 (21.2)<br />

6b PG-4 300 m ow 60 5 (531) 0.31 19.3 (11.3)<br />

Like <strong>the</strong> full shallow water equations (4.2–3), <strong>the</strong> system (4.3, 4.6) contains inertiagravity<br />

waves; <strong>the</strong> linearized approximations to both systems are identical. Thus, both<br />

systems contain <strong>the</strong> same number of fast and slow modes, and both systems demand about<br />

<strong>the</strong> same amount of computation. (Because of <strong>the</strong> need for predictor/corrector, <strong>the</strong><br />

streaming step uses <strong>the</strong> most processor time, so <strong>the</strong> time saved by not calculating <strong>the</strong> O(u 2 )<br />

terms in (3.13–15) is relatively insigni cant.) Beyond <strong>the</strong> comparison between SW and PG<br />

solutions, what <strong>the</strong>n is gained by throwing out <strong>the</strong> momentum advection<br />

5. The 4-velocity model<br />

I believe <strong>the</strong>re are two advantages to <strong>the</strong> omission of momentum advection. <strong>On</strong>e<br />

advantage has a physical basis; <strong>the</strong> o<strong>the</strong>r is computational. Both advantages are likely to be<br />

much more signi cant in three dimensions than in two dimensions, but it is worthwhile to<br />

consider <strong>the</strong>m here. We consider <strong>the</strong> physical advantage of PG in <strong>the</strong> following section and<br />

devote this section to <strong>the</strong> computational advantage.<br />

The computational advantage of (4.6) arises from <strong>the</strong> fact that <strong>the</strong> corresponding LB<br />

model requires only 4 nonzero velocities at each lattice point. Refer to Figure 5a. Including<br />

<strong>the</strong> rest particle, this 4-velocity model contains only 5 (instead of 9) modes, and only 2 of<br />

<strong>the</strong> 5 modes are fast modes in <strong>the</strong> sense of Section 2.<br />

The 4-velocity model of Figure 5 cannot be used for <strong>the</strong> physics (3.13–15) containing<br />

momentum advection, because its lower degree of isotropy leads to a completely incorrect<br />

representation of <strong>the</strong> momentum ux tensor. 2 For example, it is intuitively obvious that <strong>the</strong><br />

4-velocity model cannot represent <strong>the</strong> northward advection of eastward momentum<br />

because <strong>the</strong> 4-velocity model lacks diagonal links; <strong>the</strong> northward moving particles have no<br />

eastward momentum, and vice versa. In <strong>the</strong> full shallow water equations, this de ciency is<br />

associated with <strong>the</strong> existence of spurious line invariants, that is, with <strong>the</strong> conservation, in<br />

2. The need for a lattice with sufficient symmetry to represent <strong>the</strong> desired physics was rst recognized by<br />

Frisch et al. (1986); <strong>the</strong>ir classic paper inspired much of <strong>the</strong> subsequent interest in lattice gases and related<br />

methods like LB.


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

527<br />

Figure 5. (a) In <strong>the</strong> 4-velocity model, particles move only in <strong>the</strong> 4 coordinate directions. (b) <strong>On</strong>ly<br />

particles moving in <strong>the</strong> normal direction collide with <strong>the</strong> boundary.<br />

unbounded ow, of <strong>the</strong> momentum along each lattice row and column. However, when, as<br />

in <strong>the</strong> planetary geostrophic equations, we neglect <strong>the</strong> momentum advection a priori and<br />

drop <strong>the</strong> corresponding terms in (3.13–15), <strong>the</strong>n <strong>the</strong> symmetry of <strong>the</strong> 4-velocity model<br />

proves nearly sufficient to yield isotropic equations for <strong>the</strong> uid. The remaining subtlety<br />

involves <strong>the</strong> viscosity.<br />

In <strong>the</strong> 4-velocity model, <strong>the</strong> 4 moving particles move in <strong>the</strong> 4 coordinate directions with<br />

velocities<br />

c 1 5 (c, 0), c 2 5 (0, c), c 3 5 (2 c, 0), c 4 5 (0, 2 c). (5.1)<br />

Refer again to Figure 5. The LB dynamics, analogous to (3.12), is<br />

h i (x 1 c i D t, t 1 D t) 2 h i (x, t) 2<br />

D t<br />

2c c 1<br />

2 ia 1 2 F a (x, t) 1<br />

1<br />

2 F a (x 1 c i D t, t 1 D t) 2<br />

(5.2)<br />

5 2 l D t(h i (x, t) 2 h i eq (x, t)).<br />

Now, however, <strong>the</strong> equilibrium populations are given by<br />

gh 2<br />

h eq 0<br />

5 h 2<br />

c 2<br />

gh 2<br />

h eq i<br />

5<br />

4c 1<br />

h<br />

2 2c c 2 ia u a , i Þ 0,<br />

(5.3)


1<br />

<br />

528 Journal of Marine Research [57, 3<br />

which contain no O(u 2 ) terms. The equilibrium populations (5.3) satisfy (3.16), (3.17), and<br />

o<br />

i<br />

c ia c ib h i eq 5<br />

1<br />

2 gh2 d a b , (5.4)<br />

<strong>the</strong> analog of (3.18).<br />

<strong>On</strong>ce again, we may use <strong>the</strong> Chapman-Enskog expansion to derive equations for <strong>the</strong><br />

slow modes. However, because <strong>the</strong> 4-velocity model contains only 2 fast modes, it is more<br />

interesting to follow <strong>the</strong> rst of <strong>the</strong> two methods illustrated in Section 2—<strong>the</strong> expansion in<br />

D t alone. To <strong>the</strong> rst order in D t, (5.2) implies<br />

<br />

t 1<br />

c ia<br />

<br />

x a<br />

2 h i 5<br />

1<br />

2c 2 c ia F a 2 l (h i 2 h i eq ). (5.5)<br />

As usual, we obtain <strong>the</strong> slow mode equations from <strong>the</strong> weighted sums of (5.5). Summing<br />

(5.5) from i 5 0 to 4 yields <strong>the</strong> continuityequation (4.3); summing c ia times (5.5) yields <strong>the</strong><br />

momentum equation<br />

t (hu a ) 1<br />

R a b<br />

x b<br />

5 F a , (5.6)<br />

where<br />

R a b ; o<br />

i<br />

c ia c ib h i (5.7)<br />

and F a is given by (4.1). At equilibrium, (5.7) takes <strong>the</strong> value (5.4); as in Section 3, <strong>the</strong><br />

difference between (5.7) and (5.4) is <strong>the</strong> viscous tensor. In <strong>the</strong> 4-velocity model,<br />

R 11 5 c 2 (h 1 1 h 3 ), R 22 5 c 2 (h 2 1 h 4 ), R 12 5 R 21 5 0. (5.8)<br />

Thus it is convenient to take R 11 and R 22 as <strong>the</strong> remaining two (fast) modes of <strong>the</strong> LB<br />

system. Directly from (5.5), we obtain <strong>the</strong> fast mode equations<br />

R 11<br />

t<br />

R 22<br />

t<br />

1 c (hu)<br />

2 x 5 2 l (R 11 2 R eq 11<br />

)<br />

1 c (hv) 2 y 5 2 l (R 22 2 R eq 22 ).<br />

(5.9)<br />

Eqs. (5.6) and (5.9) are analogous to (2.14) and (2.10), respectively. Eq. (4.3, 5.6, 5.9) form<br />

a complete set of equations for all 5 modes. Eliminating R 11 and R 22 between (5.9) and<br />

(5.6), we obtain <strong>the</strong> analogs of (2.17),<br />

l [(hu) t 2 fhv 1 ghh x ] 1 [(hu) tt 2 f (hv) t 2 c 2 (hu) xx ] 5 0<br />

l [(hv) t 1 fhu 1 ghh y ] 1 [(hv) tt 1 f (hu) t 2 c 2 (hv) yy ] 5 0<br />

(5.10)


l<br />

2<br />

1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

529<br />

in which, for simplicity, we have temporarily dropped <strong>the</strong> wind forcing terms. As in<br />

Section 2, <strong>the</strong> leading order LB dynamics corresponds to l times <strong>the</strong> equations of interest<br />

plus ‘‘textbook’’ wave equations, now modi ed by rotation.<br />

For small time step and lattice spacing, <strong>the</strong> 4-velocity LB dynamics (5.2–3) is equivalent<br />

to (4.3) and (5.10). For large enough l and c, solutions of (5.10) approximately satisfy<br />

2 5 2 1 n<br />

1 5 2 1 n<br />

(hu) t fhv ghh x (hu) xx<br />

(hv) t fhu ghh y (hv) yy<br />

(5.11)<br />

where n 5 c 2 /l . Eqs. (5.11) are analogous to (2.20). The Chapman-Enskog expansion also<br />

yields (5.11), but with <strong>the</strong> more accurate value<br />

1<br />

n 5 1<br />

1<br />

l max2<br />

c 2 , (5.12)<br />

where l max 5 2/D t as before. Eq. (5.12) is analogous to (4.4). The momentum equations<br />

(5.11) differ from (4.6) only in <strong>the</strong> form of <strong>the</strong> viscosity, which is anisotropic in (5.11). This<br />

anisotropy results from <strong>the</strong> relatively low degree of symmetry of <strong>the</strong> 4-velocity lattice.<br />

As in <strong>the</strong> case of (4.6), LB solutions of (5.11) always approach a steady state. In steady<br />

state, = · (hu) 5 0, and <strong>the</strong> transport is described by a streamfunction: hu 5 (2 c y, c x). In<br />

<strong>the</strong> case of (4.6), <strong>the</strong> streamfunction satis es<br />

b c x 5 curl 1<br />

h<br />

h 1<br />

d E<br />

t 2 1 n = 4<br />

c (5.13)<br />

with boundary conditions of no-normal- ow, and no-slip or no-stress. If h is everywhere<br />

much greater than d E, <strong>the</strong>n (5.13) reduces to Munk’s classic equation, and c is determined<br />

independently of h; in fact, <strong>the</strong> 8-velocity PG solution of Figure 3c closely resembles<br />

Munk’s solution.<br />

In <strong>the</strong> case of (5.11), <strong>the</strong> streamfunction satis es<br />

h<br />

b c x 5 curl 1 t<br />

h 1 d 2 1 2n c xxyy. (5.14)<br />

E<br />

<strong>On</strong>ce again, <strong>the</strong> viscosity in (5.14) is anisotropic, and accommodates only <strong>the</strong> single<br />

boundary condition of no-normal- ow. (This is obvious from <strong>the</strong> fact that <strong>the</strong> general<br />

solution of c xxyy 5 0, easily obtained by integrations, contains only 4 arbitrary functions.<br />

These 4 functions are completely determined by <strong>the</strong> requirement that c vanish at each of<br />

<strong>the</strong> 4 boundaries.) This property of (5.11) and (5.14), that only boundary conditions of<br />

no-normal- ow may be satis ed, is also obvious from <strong>the</strong> underlying 4-velocity LB<br />

dynamics: As shown in Figure 5b, only <strong>the</strong> particle moving normal to <strong>the</strong> boundary<br />

encounters <strong>the</strong> boundary. That is, <strong>the</strong> 4-velocity model lacks <strong>the</strong> particles striking <strong>the</strong><br />

boundary at a 45° angle in <strong>the</strong> 8-velocity model of Figure 2. It is <strong>the</strong> rebound of <strong>the</strong>se


530 Journal of Marine Research [57, 3<br />

particles that determines <strong>the</strong> second boundary condition, no slip or no stress, in <strong>the</strong><br />

8-velocity model.<br />

In <strong>the</strong> case of (5.13), <strong>the</strong> western boundary layer equation contains only x-derivatives; its<br />

thickness is d M 5 (n /b ) 1/3 . However, in <strong>the</strong> case of (5.14), <strong>the</strong> western boundary layer<br />

equation is a partial differential equation,<br />

From (5.15) we see that <strong>the</strong> western boundary layer thickness is<br />

b c x 5 2n c xxyy. (5.15)<br />

d s 5<br />

2n<br />

b l 2 , (5.16)<br />

where l is <strong>the</strong> scale for long-shore variation in c , determined by <strong>the</strong> interior solution. Thus,<br />

in <strong>the</strong> case of <strong>the</strong> 4-velocity model, <strong>the</strong> western boundary layer is proportional to <strong>the</strong><br />

viscosity coefficient, as in Stommel’s classic ‘‘bottom friction’’ model.<br />

Figure 6 shows two LB solutions of <strong>the</strong> PG equations using <strong>the</strong> 4-velocity model. The<br />

geometry and wind forcing are <strong>the</strong> same as in <strong>the</strong> 8-velocity solutions of Figures 3 and 4.<br />

Figure 6a, depicting a PG solution with mean upper layer thickness equal to 500 m, should<br />

be compared with Figures 3c–d. Figure 6b, with mean h equal to 300 m, should be<br />

compared to Figure 4c–d. In both 4-velocity solutions, l 5 0.6 l max. With l 5 L/2p , this<br />

corresponds to a western boundary layer thickness (5.16) of 40 km, about 1 lattice spacing.<br />

This thickness is about half <strong>the</strong> western boundary layer thickness of <strong>the</strong> 8-velocity<br />

solutions shown in Figures 3 and 4. At lower viscosities, <strong>the</strong> 8-velocity models tend to<br />

misbehave. Thus <strong>the</strong> 4-velocity PG solutions of Figure 6 exhibit very thin but stable western<br />

boundary layers that take maximum advantage of <strong>the</strong> limited spatial resolution. However,<br />

<strong>the</strong>y also show <strong>the</strong> effects of <strong>the</strong> anisotropic friction, particularly at <strong>the</strong> point in Figure 6b<br />

where <strong>the</strong> separated western boundary current turns nor<strong>the</strong>astward after leaving <strong>the</strong> coast.<br />

The computational advantage of <strong>the</strong> 4-velocity PG model is that it requires only half <strong>the</strong><br />

computation and storage of <strong>the</strong> 8-velocity model. In three dimensions, <strong>the</strong> savings would<br />

be greater still; <strong>the</strong> three-dimensional analogue of <strong>the</strong> 4-velocity model has 6 velocities,<br />

whereas <strong>the</strong> three-dimensional analogue of <strong>the</strong> 8-velocity model has 26 velocities. To be<br />

fair, Frisch et al.’s (1986) optimal two-dimensional model, with complete symmetry of <strong>the</strong><br />

viscosity and Reynolds stress, contains only 6 velocities. However, <strong>the</strong> face-centered<br />

hypercubic lattice—<strong>the</strong> optimal symmetric lattice for use in 3 dimensions—contains 24<br />

velocities, still 4 times as many as <strong>the</strong> three-dimensional PG model with anisotropic<br />

viscosity. This factor of 4 represents a huge advantage when one considers <strong>the</strong> daunting<br />

challenge of modeling <strong>the</strong> global ocean in three dimensions. However, <strong>the</strong>re are o<strong>the</strong>r,<br />

somewhat more philosophical reasons to favor PG over SW.<br />

6. Discussion<br />

In two dimensions,planetary geostrophic dynamics seem somewhat plain and uninteresting<br />

in comparison to <strong>the</strong> richer shallow water dynamics. However, in three dimensions,


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

531<br />

Figure 6. Solutions of <strong>the</strong> reduced gravity model based upon planetary geostrophicdynamics and <strong>the</strong><br />

4-velocitymodel of Section 5. The forcing and geometry are <strong>the</strong> same as in <strong>the</strong> 8-velocitysolutions<br />

of Figures 3 and 4, but <strong>the</strong> viscosity now re ects <strong>the</strong> anisotropy of <strong>the</strong> underlying lattice. (a) Mean<br />

upper layer depth h of 500 m. (b) Mean h of 300 m.


532 Journal of Marine Research [57, 3<br />

with bathymetry of realistic complexity, solving and understanding planetary geostrophic<br />

dynamics will prove to be a considerable challenge. In three dimensions, even linear<br />

dynamics offer a signi cant computational challenge; see Salmon (1998b).<br />

The primitive equations (PE)—<strong>the</strong> three-dimensional analogues of <strong>the</strong> shallow water<br />

equations—may simply be too complex for <strong>the</strong> present level of dynamical understanding<br />

and computational power. In fact, three-dimensional PE admit such a vast range of<br />

phenomena that it is conceivable that PE performance may actually degrade as model<br />

resolution increases, unless <strong>the</strong> eddy viscosity is unrealistically large, or <strong>the</strong> viscous cutoff<br />

for molecular viscosity is resolved—an utter impossibility.<br />

For example, consider small-scale Kelvin-Helmholtz instability, an apparently ubiquitous<br />

phenomenon in <strong>the</strong> atmosphere and ocean. If model resolution reaches <strong>the</strong> point where<br />

such instability can occur but is still too coarse to resolve <strong>the</strong> turbulent cascade that damps<br />

<strong>the</strong> instability, <strong>the</strong>n <strong>the</strong> instability could become a damaging source of computational<br />

noise. 3<br />

In any case, considering <strong>the</strong> present state of ignorance about global ocean dynamics, it<br />

would seem safest to begin three-dimensional LB modeling with PG dynamics. The<br />

three-dimensional analogue of <strong>the</strong> 4-velocity model in Section 5 offers <strong>the</strong> advantages of<br />

dynamical and computational simplicity, massively parallel construction, and only slightly<br />

more dependent variables than in traditional primitive equation models.<br />

Signi cant difficulties remain. The present method of incorporating <strong>the</strong> Coriolis force,<br />

which makes <strong>the</strong> LB equations implicit and forces us to use <strong>the</strong> predictor/corrector method,<br />

is accurate but inefficient. I have not yet found an acceptable alternative. A much greater<br />

difficulty is that <strong>the</strong> complex shapes of <strong>the</strong> real ocean basins seem to require an irregular<br />

lattice. Unfortunately, LB methods do not adapt well to irregular lattices. Even <strong>the</strong><br />

seemingly unavoidable practice of choosing <strong>the</strong> vertical lattice spacing to be much smaller<br />

than <strong>the</strong> horizontal spacing complicates <strong>the</strong> LB approach. However, with time and<br />

persistence, <strong>the</strong>se difficulties will be overcome. The efficiency and physical simplicity of<br />

LB methods are too great to be ignored.<br />

In more conventional numerical modeling, one begins with a relatively simple set of<br />

partial differential equations, but <strong>the</strong> nal algorithm is a complicated patchwork of<br />

arbitrary steps and compromises that bears only a nebulous relationship to <strong>the</strong> original<br />

differential equations. In <strong>the</strong> LB method, <strong>the</strong> algorithm always takes a simple form, and<br />

itself acquires <strong>the</strong> status of an interesting physical system. To investigate its relation to<br />

differential equations, we must pursue a relatively complicated analytical expansion, but<br />

this is a separate activity, necessary only because of our psychological need to associate<br />

models with differential equations.<br />

Acknowledgments. This work was supported by <strong>the</strong> National Science Foundation, grant OCE-<br />

9521004. It is a pleasure to thank Glenn Ierley and George Veronis for helpful comments, and Breck<br />

Betts for his help with <strong>the</strong> gures.<br />

3. Similar ideas were expressed to me by M. J. P. Cullen.


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

533<br />

Motivated derivation of (3.13–15)<br />

APPENDIX<br />

In lattice gas <strong>the</strong>ory, <strong>the</strong> local equilibrium state (3.10) is de ned to be that set 5 h i (x)6 that<br />

maximizes an entropy, subject to <strong>the</strong> constraints (3.7) and (3.8) corresponding to mass and<br />

momentum conservation. The entropy takes <strong>the</strong> form that occurs in <strong>the</strong> H-<strong>the</strong>orem for <strong>the</strong><br />

lattice gas. However, if, as here, we begin at <strong>the</strong> level of <strong>the</strong> <strong>Boltzmann</strong> equation, with no<br />

precisely de ned lattice gas in mind, <strong>the</strong>n <strong>the</strong> form of <strong>the</strong> entropy is somewhat arbitrary. In<br />

this circumstance, it is perhaps logical to de ne h eq as that set of populations which<br />

maximizes <strong>the</strong> information-<strong>the</strong>oretic entropy<br />

o<br />

i<br />

h i (x) ln h i (x)<br />

(A1)<br />

at lattice point x, subject to (3.7) and (3.8). The resulting equilibrium state is a welldetermined<br />

function of h(x), u(x), and v(x) at each lattice point. However, <strong>the</strong> exact<br />

solution to this variational problem is quite difficult, and one normally proceeds by means<br />

of an expansion in which u and v are presumed to be small. From symmetry considerations,<br />

this expansion takes <strong>the</strong> form<br />

h i eq (h, u, v) 5 A(h) 1 B(h)c ia u a 1 C(h)c ia c ib u a u b 1 D(h)d a b u a u b 1 O(u 3 ). (A2)<br />

The coefficients A, B, C and D depend only on h—not u—and are uniquely determined by<br />

<strong>the</strong> maximum entropy principle. However, 3 of <strong>the</strong>se 4 coefficients would be determined<br />

by <strong>the</strong> constraints (3.7–8) alone, and <strong>the</strong> truncation of (A2) at quadratic order has<br />

somewhat <strong>the</strong> same effect as demanding that <strong>the</strong> entropy be maximum. Thus it makes sense<br />

to demand only that (A2) satisfy (3.7–8) for arbitrary h and (small) u. This leaves one of <strong>the</strong><br />

coefficients in (A2) undetermined, but <strong>the</strong> freedom to adjust this parameter is very helpful<br />

at a later stage.<br />

In fact, as previous workers have found, it proves very handy to generalize (A2) even<br />

fur<strong>the</strong>r, by demanding that (A2) hold with coefficients A(h), B(h), C(h), and D(h) that are<br />

different for <strong>the</strong> three different classes of particle—<strong>the</strong> rest particle, <strong>the</strong> 4 particles moving<br />

in <strong>the</strong> coordinate directions, and <strong>the</strong> 4 particles moving diagonally.Thus we assume<br />

for <strong>the</strong> equilibrium rest-particle population,<br />

h 0 eq (h, u, v) 5 A 0 (h) 1 D 0 (h)d a b u a u b (A3)<br />

h i eq (h, u, v) 5 A(h) 1 B(h)c ia u a 1 C(h)c ia c ib u a u b 1 D(h)d a b u a u b , i odd (A4)<br />

for <strong>the</strong> particles moving in <strong>the</strong> 4 coordinate directions, and<br />

h i eq (h, u, v) 5 A(h) 1 B(h)c ia u a 1 C(h)c ia c ib u a u b 1 D(h)d a b u a u b , i even (A5)<br />

for <strong>the</strong> particles moving in <strong>the</strong> 4 diagonal directions.Altoge<strong>the</strong>r <strong>the</strong>re are 10 coefficients to<br />

be determined. Substituting (A3–A5) into (3.16) and equating <strong>the</strong> coefficients of h and


1 1 5<br />

1 1 1 1 5<br />

1 5<br />

5 5<br />

1 5<br />

1 1 5<br />

534 Journal of Marine Research [57, 3<br />

u · u, we obtain<br />

A 0 4A 4A h (A6)<br />

and<br />

D 0 2c 2 C 4c 2 C 4D 4D 0. (A7)<br />

Similarly, (3.17) implies<br />

2c 2 B 4c 2 B h. (A8)<br />

From (3.18) we obtain <strong>the</strong> 4 conditions<br />

2c 4 C 8c 4 C h (A9)<br />

2c 2 A 4c 2 A 1<br />

2gh 2 (A10)<br />

2c 2 D 4c 2 D 4c 4 C 0. (A11)<br />

Finally, <strong>the</strong> identity<br />

x g<br />

o<br />

i<br />

c ia c ib c ig h i eq 5<br />

1<br />

3 c2 5 = · (hu)d a b 1<br />

x a<br />

(hu b ) 1<br />

x b<br />

(hu a ) 6 (A12)<br />

needed to reduce <strong>the</strong> viscous tensor (3.34) to <strong>the</strong> form (3.35) requires that<br />

In deriving <strong>the</strong>se equations, it is useful to realize that<br />

B 5 4B. (A13)<br />

o<br />

i<br />

c ia 5 o<br />

i<br />

c ia c ib c ig 5 · · · 5 0, (A14)<br />

o<br />

i<br />

c ia c ib 5 6c 2 d a b , (A15)<br />

and<br />

o<br />

i<br />

c ia c ib c ig c id 5 4c 4 (d a b d g d 1 d a g d b d 1 d a d d b g ) 2 6c 4 d a b g d . (A16)<br />

The peculiar form of (A16) results from <strong>the</strong> anisotropy of <strong>the</strong> rectangular lattice.<br />

We now have 8 equations for <strong>the</strong> 10 undetermined coefficients. Thus we are free to<br />

impose 2 additional conditions. Eqs. (A9) and (A13) suggest <strong>the</strong> additional conditions,<br />

A 5 4A and D 5 4D. (A17)


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> method<br />

535<br />

These make all <strong>the</strong> coefficients in (A5) one fourth <strong>the</strong> size of <strong>the</strong> corresponding coefficients<br />

in (A4). Then, solving for all <strong>the</strong> coefficients, we obtain (3.13–15). Note that, for<br />

sufficiently small positive h, half of <strong>the</strong> populations (3.14–15) actually become negative.<br />

REFERENCES<br />

Ancona, M. G. 1994. Fully-Lagrangian and <strong>Lattice</strong>-<strong>Boltzmann</strong> methods for solving systems of<br />

conservation equations. J. Comp. Phys., 115, 107–120.<br />

Benzi, R., S. Succi and M. Vergassola. 1992. The lattice <strong>Boltzmann</strong>-equation—<strong>the</strong>ory and applications.<br />

Phys. Rep., 222, 145–197.<br />

Benzi, R., F. Toschi and R. Tripiccione. 1998. <strong>On</strong> <strong>the</strong> heat transfer in Rayleigh-Benard systems. J.<br />

Stat. Phys., 93, 901–918.<br />

Chen, S. and G. D. Doolen. 1998. <strong>Lattice</strong> <strong>Boltzmann</strong> method for uid ows. Ann. Rev. Fluid Mech.,<br />

30, 329–364.<br />

Frisch, U., B. Hasslacher and Y. Pomeau. 1986. <strong>Lattice</strong>-gas automata for <strong>the</strong> Navier-Stokes<br />

equations. Phys. Rev. Lett., 56, 1505–1508.<br />

Parsons, A. T. 1969. A two-layer model of Gulf Stream separation. J. Fluid Mech., 39, 511–528.<br />

Rothman, D. H. and S. Zaleski. 1997. <strong>Lattice</strong>-Gas Cellular Automata: Simple Models of Complex<br />

Hydrodynamics,Cambridge, 297 pp.<br />

Salmon, R. 1998a. Lectures on Geophysical Fluid Dynamics, Oxford, 378 pp.<br />

—— 1998b. Linear ocean circulation <strong>the</strong>ory with realistic bathymetry. J. Mar. Res., 56, 833–884.<br />

Veronis, G. 1973. Model of world ocean circulation: I. Wind-driven, two-layer. J. Mar. Res., 31,<br />

228–288.<br />

—— 1980. Dynamics of large-scale ocean circulation,in Evolution of Physical Oceanography,B. A.<br />

Warren and C. Wunsch, eds., 140–183.<br />

Received: 6 October, 1998; revised: 9 February, 1999.


Journal of Marine Research, 57, 847–884, 1999<br />

<strong>Lattice</strong> <strong>Boltzmann</strong> solutions of <strong>the</strong> three-dimensional<br />

planetary geostrophic equations<br />

by Rick Salmon 1<br />

ABSTRACT<br />

We use <strong>the</strong> lattice <strong>Boltzmann</strong> method as <strong>the</strong> basis for a three-dimensional, numerical ocean<br />

circulation model in a rectangularbasin. The fundamental dynamical variables are <strong>the</strong> populationsof<br />

mass- and buoyancy-particleswith prescribed discrete velocities. The particles obey collision rules<br />

that correspond,on <strong>the</strong> macroscopic scale, to planetary geostrophicdynamics. The advantagesof <strong>the</strong><br />

model are simplicity, stability, and massively parallel construction. By <strong>the</strong> special nature of its<br />

construction, <strong>the</strong> lattice <strong>Boltzmann</strong> model resolves upwelling boundary layers and unsteady convection.<br />

Solutions of <strong>the</strong> model show many of <strong>the</strong> features predicted by ocean circulation <strong>the</strong>ories.<br />

1. Introduction<br />

This is <strong>the</strong> second in a series of papers in which it is hoped to develop simple, efficient,<br />

numerical ocean circulation models based upon <strong>the</strong> lattice <strong>Boltzmann</strong> (LB) method, a<br />

method of computational uid dynamics in which <strong>the</strong> fundamental dependent variables are<br />

<strong>the</strong> populations of particles with prescribed discrete velocities. The particles obey simple<br />

collision rules that determine <strong>the</strong> macroscopic uid dynamics. The advantages of <strong>the</strong> LB<br />

method are simplicity, stability, and massively parallel computer code; <strong>the</strong> primary<br />

disadvantageis a lack of exibility in comparison to more conventionalmodels based upon<br />

nite differences or nite elements. Although widely used for about 10 years, <strong>the</strong> LB<br />

method had not previously been applied to rotating uids.<br />

The earlier paper (Salmon, 1999, hereafter S99) applied <strong>the</strong> LB method to <strong>the</strong> rotating<br />

shallow water equations in <strong>the</strong> form of <strong>the</strong> ‘‘reduced gravity model’’ for a homogeneous,<br />

wind-driven layer of uid overlying a deeper layer that remains everywhere at rest.<br />

Although <strong>the</strong> reduced gravity model is a respectable model of <strong>the</strong> wind-driven ocean<br />

circulation, S99 emphasized method, offering a nearly self-contained introduction to LB<br />

<strong>the</strong>ory, <strong>the</strong> Chapman-Enskog expansion, and some connections to topics—balanced<br />

motion, fast and slow modes—of greater familiarity to geophysical uid dynamicists.<br />

In this paper, we apply <strong>the</strong> LB method to <strong>the</strong> three-dimensional planetary geostrophic<br />

equations (2.1), which omit inertia but include <strong>the</strong> advection of buoyancy. In this paper, <strong>the</strong><br />

emphasis is somewhat more equally divided between <strong>the</strong> development of <strong>the</strong> LB algorithm<br />

1. Scripps Institution of Oceanography, University of California, La Jolla, California 92093-0225, U.S.A.<br />

email: rsalmon@ucsd.edu<br />

847


848 Journal of Marine Research [57, 6<br />

in Sections 2–5, and <strong>the</strong> discussion of its solutions in Section 6. Although <strong>the</strong> present paper<br />

is self-contained, it does not repeat S99’s pedagogical introduction to LB. Therefore,<br />

readers who are unfamiliar with <strong>the</strong> LB method may wish to read S99 before attempting<br />

Sections 2–4 below. <strong>On</strong> <strong>the</strong> o<strong>the</strong>r hand, readers with no interest in <strong>the</strong> method can proceed<br />

directly to Section 5.<br />

In Sections 2–4 and in <strong>the</strong> appendices, we derive <strong>the</strong> lattice <strong>Boltzmann</strong> algorithm<br />

summarized in Section 5 and demonstrate its equivalence to <strong>the</strong> time-dependent equations<br />

(5.8) at <strong>the</strong> second order of <strong>the</strong> Chapman-Enskog expansion. Our derivation differs from<br />

more typical LB applications in several respects. First, because <strong>the</strong> vertical spacing<br />

between lattice points is so much smaller than <strong>the</strong> horizontal spacing, and because <strong>the</strong><br />

particles must hop from lattice point to lattice point in a time step, <strong>the</strong> particles move<br />

vertically at a speed much smaller than <strong>the</strong>ir horizontal speed. Because of this disparity in<br />

particle speeds, <strong>the</strong> ‘‘vertical pressure’’ is much smaller than <strong>the</strong> ‘‘horizontal pressure,’’ and<br />

recovery of <strong>the</strong> right dynamics requires compensating adjustments that amount to an<br />

enhancement of <strong>the</strong> friction coefficient in <strong>the</strong> vertical momentum equation. However, <strong>the</strong><br />

effects of this enhancement seem to be wholly bene cial: Sidewall boundary layers are<br />

resolved, <strong>the</strong> time step may be larger than in conventional primitive equation models, and<br />

<strong>the</strong> most unstable convective motions have horizontal scales resolved by <strong>the</strong> model.<br />

Second, buoyancy is incorporated by introducing buoyancy particles that make no direct<br />

contribution to <strong>the</strong> mass, ra<strong>the</strong>r than by <strong>the</strong> more usual method of introducing ‘‘hot’’ and<br />

‘‘cold’’ massive particles. The buoyancy-particle method proves essential to attaining <strong>the</strong><br />

high Prandtl number necessary when inertia is omitted from ocean dynamics.<br />

Third, as in S99, Coriolis force is an essential part of <strong>the</strong> dynamics, and Section 4<br />

presents a method for incorporating Coriolis force that is vastly superior to <strong>the</strong> clumsy and<br />

inefficient predictor-corrector method used in S99. In <strong>the</strong> method of Section 4, an impulse<br />

corresponding to <strong>the</strong> action of Coriolis force for an interval of one half time step is<br />

distributed among <strong>the</strong> particles before and after each streaming step. The resulting LB<br />

cycle is . . . spin—collide—spin—stream—spin—collide . . . , where collide and stream<br />

denote <strong>the</strong> usual collision and streaming steps, and spin denotes <strong>the</strong> Coriolis impulse step.<br />

The presence of two Coriolis steps per cycle proves vital to maintaining second-order<br />

accuracy in <strong>the</strong> Chapman-Enskog expansion.<br />

In Section 5 we summarize <strong>the</strong> complete LB algorithm, a cycle of 6 simple operations.<br />

Then we analyze <strong>the</strong> corresponding dynamical equations (5.8). In steady state, (5.8) reduce<br />

to (2.1) except for <strong>the</strong> previously mentioned enhancement of <strong>the</strong> viscosity coefficients in<br />

<strong>the</strong> vertical momentum equation. This enhancement means that departures from hydrostatic<br />

balance could be as large as <strong>the</strong> departures from geostrophic balance, but solutions of<br />

<strong>the</strong> LB equations with no-stress boundary conditions prove to be hydrostatic, except in<br />

relatively small regions of strong convection.<br />

In Section 6 we examine 3 solutions of <strong>the</strong> LB model with 50 3 resolution. The solutions<br />

are driven by a 2-gyre wind stress and diabatic forcing. In one of <strong>the</strong> solutions, <strong>the</strong> diabatic<br />

forcing is contrived to maintain static stability, and no convection occurs. In ano<strong>the</strong>r


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

849<br />

solution, <strong>the</strong> ocean is cooled at <strong>the</strong> surface, and unsteady convection occurs on horizontal<br />

lengthscales resolved by <strong>the</strong> model. In <strong>the</strong> third solution, we impose convective adjustment<br />

in regions of static instability. The convective adjustment increases static stability but also<br />

generates lattice-scale noise; fortunately, <strong>the</strong> convective adjustment seems dispensable.All<br />

3 solutions contain numerous features predicted by ocean circulation <strong>the</strong>ories and found in<br />

more conventional calculations.<br />

2. The lattice <strong>Boltzmann</strong> method<br />

We seek a lattice <strong>Boltzmann</strong> (LB) model for <strong>the</strong> planetary geostrophic equations in<br />

Cartesian coordinates. In steady state, <strong>the</strong> equations are:<br />

= 3 · v 5 0<br />

f k 3 u 5 2 = f 1 A h = 2 u 1 A v u zz<br />

0 5 2 f z 1 u 1 A h = 2 w 1 A v w zz<br />

v · = 3u 5 k h= 2<br />

u 1 k vu zz.<br />

(2.1)<br />

Here, x 5 (x, y, z) is <strong>the</strong> coordinate in <strong>the</strong> (eastward, northward, upward) direction with<br />

corresponding unit vector (i, j, k); v 5 (u, w) 5 (u, v, w) is <strong>the</strong> velocity; f is <strong>the</strong> Coriolis<br />

parameter; f is <strong>the</strong> pressure (divided by a constant representative density); and u is <strong>the</strong><br />

buoyancy. Our notation is = 3 ; ( x, y, z) and = ; ( x, y). Subscript z denotes z. (A h , A v )<br />

and (k h, k v) are <strong>the</strong> (horizontal, vertical) eddy coefficients for momentum and buoyancy,<br />

respectively. We temporarily omit <strong>the</strong> wind and diabatic forcing terms. The planetary<br />

geostrophic equations have become increasingly popular as <strong>the</strong> basis for numerical ocean<br />

circulation models; see, for example, Huck et al. (1999) and references <strong>the</strong>rein.<br />

Although we prefer to work with dimensional variables, for future use we record <strong>the</strong><br />

standard nondimensionalform of (2.1). Let L be <strong>the</strong> ocean basin width and H <strong>the</strong> depth. Let<br />

U be a representative horizontal velocity. Then, scaling x and y by L, z by H, u and v by U,<br />

w by W ; d bU, where d b ; H/L is <strong>the</strong> aspect ratio based on <strong>the</strong> basin size, f by<br />

representative value f 0 , f by f 0 UL, and u by f 0 UL/H; we obtain (2.1) in <strong>the</strong> nondimensional<br />

form,<br />

= 3 · v 5 0<br />

f k 3 u 5 2 = f 1 E h = 2<br />

u 1 E v u zz<br />

0 5 2 f z 1 u 1 d b 2 E h = 2 w 1 d b 2 E v w zz<br />

(2.2)<br />

v · = 3u 5 D h = 2 u 1 D v u zz<br />

where<br />

E h 5<br />

A h<br />

f 0 L 2 , E v 5<br />

A v<br />

f 0 H 2 , D h 5<br />

k h<br />

UL , D v 5<br />

k v<br />

WH , (2.3)<br />

and d b are small parameters.


850 Journal of Marine Research [57, 6<br />

In <strong>the</strong> lattice <strong>Boltzmann</strong> method, we replace <strong>the</strong> uid by a system of discrete particles<br />

that move from lattice point to adjacent lattice point in a time step D t. Inhomogeneous uid<br />

requires 2 types of particle: mass particles, which carry mass and momentum, and<br />

buoyancy particles, which only carry buoyancy.At every time step, all <strong>the</strong> particles present<br />

at each lattice point ‘‘collide.’’ The strategy is to prescribe collision rules that make <strong>the</strong><br />

particle dynamics approximate (2.1) as closely as possible. For reviews of <strong>the</strong> lattice<br />

<strong>Boltzmann</strong> method, see Benzi et al. (1992), Rothman and Zaleski (1997) and Chen and<br />

Doolen (1998).<br />

To simplify <strong>the</strong> presentation, we temporarily assume that <strong>the</strong> buoyancy is uniform<br />

(u ; 0). Then no buoyancy particles are required. We also neglect both Coriolis and<br />

external forces. In <strong>the</strong> following section, we introduce buoyancy and discuss <strong>the</strong> buoyancy<br />

particles. In Section 4, we incorporate forcing.<br />

We take <strong>the</strong> lattice to be a regular Cartesian grid with a horizontal spacing of D x and a<br />

vertical spacing of D z between lattice points. Refer to Figure 1. At each lattice point, <strong>the</strong><br />

mass particles move in one of 14 directions at a speed just sufficient to reach <strong>the</strong> next lattice<br />

point in a time step. Thus <strong>the</strong> 2 particles moving parallel to <strong>the</strong> z-axis move at uniform<br />

speed c v ; D z/D t, while <strong>the</strong> 4 particles moving parallel to <strong>the</strong> x- or y-axis move at speed<br />

c h ; D x/D t. The complete set of particle velocities is given by<br />

c nmk 5 (nc h , mc h , kc v ), (2.4)<br />

where 5 (n, m, k)6 is <strong>the</strong> 15-member set of integer triplets whose elements correspond to: <strong>the</strong><br />

rest particle (n 5 m 5 k 5 0); <strong>the</strong> 6 particles moving parallel to one of <strong>the</strong> 3 coordinate<br />

axes (for which 2 of (n, m, k) vanish, and <strong>the</strong> third is 6 1); and <strong>the</strong> 8 particles moving along<br />

<strong>the</strong> diagonals within each octant (for which all 3 of (n, m, k) are 6 1). This 15-member set<br />

represents <strong>the</strong> smallest set of particle velocities with sufficient symmetry to approximate<br />

(2.1) in <strong>the</strong> appropriate limit. Although <strong>the</strong> rest particle does not move, it interacts with <strong>the</strong><br />

o<strong>the</strong>r particles through collisions. In homogeneous uid <strong>the</strong> rest particle is dispensable, but<br />

our method of incorporating <strong>the</strong> buoyancy force will require <strong>the</strong> rest particle to be present.<br />

Let r nmk(x, t) be <strong>the</strong> contributionof <strong>the</strong> mass particle moving with velocity (2.4) at lattice<br />

point x and time t to <strong>the</strong> ‘‘density’’<br />

r (x, t) ;<br />

onmk<br />

r nmk(x, t), (2.5)<br />

a dimensionless quantity whose precise physical meaning becomes clear as <strong>the</strong> development<br />

proceeds. Thus, for example, r 100(x, t) is <strong>the</strong> density of <strong>the</strong> particle moving in <strong>the</strong><br />

direction of <strong>the</strong> positive x-axis. The summation in (2.5) is over <strong>the</strong> 15-member set just<br />

described. We also de ne <strong>the</strong> uid velocity,<br />

v(x, t) ;<br />

onmk<br />

c nmk r nmk(x, t), (2.6)


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

851<br />

Figure 1. At every time step, each mass particle (except <strong>the</strong> rest particle denoted 0) moves in one of<br />

14 directions to a neighboring lattice point. The particles numbered 1 to 6 move parallel to one of<br />

<strong>the</strong> coordinate axes. The mass particles numbered 7 to 14 move in diagonal directions not parallel<br />

to any coordinate axis or plane. The 6 buoyancy particles move only in <strong>the</strong> directions parallel to a<br />

coordinate axis. There is no rest particle for buoyancy.<br />

where c nmk is given by (2.4). 2 Although <strong>the</strong> particles move at xed speeds, <strong>the</strong> uid velocity<br />

(2.6) varies continuously. The de ning equations (2.5–6) relate <strong>the</strong> 15 ‘‘microscopic’’<br />

dependent variables 5 r nmk(x, t)6 to <strong>the</strong> 4 ‘‘macroscopic’’ dependent variables 5 r (x, t), v(x, t)6<br />

of <strong>the</strong> continuum. (But note that r (x, t) does not actually appear in (2.1).)<br />

2. In usual applications of <strong>the</strong> LB method, <strong>the</strong> analogue of (2.6) contains a factor r on its left-hand side. Our<br />

de nition is motivated by a desire that v ra<strong>the</strong>r than r v be exactly nondivergent when <strong>the</strong> uid motion is steady.


852 Journal of Marine Research [57, 6<br />

In <strong>the</strong> absence of forcing, LB dynamics comprises 2 steps: a collision step, in which all<br />

<strong>the</strong> particles at <strong>the</strong> same lattice point interact, followed by a streaming step, in which<br />

particles move in <strong>the</strong> appropriate direction to <strong>the</strong> next lattice point. The interaction takes<br />

<strong>the</strong> form of a relaxation toward <strong>the</strong> local equilibrium state 5 r<br />

nmk<br />

eq eq<br />

(x, t)6 , where <strong>the</strong> r<br />

nmk are<br />

prescribed functions of r and v at <strong>the</strong> same lattice point. Thus <strong>the</strong> collision step takes <strong>the</strong><br />

form<br />

r 8 nmk 5 r nmk 2 l D t(r nmk 2 r nmk<br />

eq ), (2.7)<br />

where l is <strong>the</strong> constant relaxation coefficient, and <strong>the</strong> prime denotes <strong>the</strong> value immediately<br />

after <strong>the</strong> collision. In (2.7), all <strong>the</strong> variables are evaluated at <strong>the</strong> same lattice point and time.<br />

The streaming step takes <strong>the</strong> form<br />

r nmk(x 1 c nmk D t, t 1 D t) 5 r 8 nmk (x, t). (2.8)<br />

Combining (2.7) and (2.8), we obtain <strong>the</strong> complete LB particle dynamics,<br />

r nmk(x 1 c nmk D t, t 1 D t) 5 r nmk(x, t) 2 l D t(r nmk(x, t) 2 r<br />

nmk<br />

eq (x, t)), (2.9)<br />

in <strong>the</strong> case of no forcing.<br />

We take <strong>the</strong> lattice spacing, x and z, as given. Then <strong>the</strong> dynamics (2.9) involves <strong>the</strong> 2<br />

unspeci ed constants t and , and <strong>the</strong> 15 unspeci ed functions nmk<br />

(r , v)6 . (Recall that<br />

c h x/D t and c v z/D t.) We choose <strong>the</strong>se constants and functions so that (2.9)<br />

approximate (2.1). As we shall see, <strong>the</strong> approximation is close if <strong>the</strong> time step t is<br />

relatively small, and if <strong>the</strong> decay coefficient is relatively large. If we regard c h and c v as<br />

xed, <strong>the</strong>n small t implies small x and z. Thus <strong>the</strong> limit t ® 0 corresponds to <strong>the</strong><br />

limit of perfect resolution in time and space. <strong>On</strong> <strong>the</strong> o<strong>the</strong>r hand, large corresponds to nmk<br />

very close to nmk<br />

. As we shall see, this limit corresponds to small viscosity.<br />

Following Qian et al. (1992) and Chen et al. (1992) (see also He and Luo (1997)), we<br />

de ne <strong>the</strong> equilibrium densities as<br />

where<br />

for <strong>the</strong> rest particle (n 5 m 5 k 5 0);<br />

eq<br />

r<br />

nmk<br />

5 A nmk r 1 B nmk 1 n u 1 m v 1 k w c h c h c v<br />

2 , (2.10)<br />

A 000 5 2<br />

9, (2.11)<br />

A nmk 5 1<br />

9, B nmk 5 1<br />

3 (2.12)<br />

for <strong>the</strong> 6 particles with * n* 1 * m* 1 * k * 5 1 moving parallel to a coordinate axis; and<br />

A nmk 5 1<br />

72, B nmk 5 1<br />

24 (2.13)


e<br />

1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

853<br />

for <strong>the</strong> 8 particles with * n * 1 * m * 1 * k * 5 3 moving diagonally. The equilibrium state<br />

de ned by (2.10–13) satis es <strong>the</strong> important conditions<br />

onmk<br />

eq<br />

r<br />

nmk<br />

5 r nmk 5 r (2.14)<br />

onmk<br />

and<br />

onmk<br />

eq<br />

c nmk r nmk 5 c nmk r nmk 5 v, (2.15)<br />

onmk<br />

corresponding to <strong>the</strong> conservation of mass and momentum, respectively, by <strong>the</strong> collisions.<br />

As we shall see, <strong>the</strong> properties (2.14–15) are required for LB dynamics to approximate<br />

(2.1) at leading order. For future use, we note that (2.10–13) imply that<br />

P a b ;<br />

onmk<br />

eq<br />

c nmk,a c nmk,b r nmk<br />

(2.16)<br />

vanishes unless a 5 b , and that<br />

P 11 5 P 22 5 1<br />

3c h 2 r ; p h and P 33 5 1<br />

3c v 2 r ; p v . (2.17)<br />

Here, c nmk,a 5 c nmk · e a , where (e 1 , e 2 , e 3 ) 5 (i, j, k). In general, D x Þ D z, hence c h Þ c v ,<br />

and thus <strong>the</strong> horizontal pressure p h is unequal to <strong>the</strong> vertical pressure p v ; this requires a<br />

compensating adjustment as <strong>the</strong> derivation proceeds.<br />

We investigate <strong>the</strong> particle dynamics (2.9) by means of an expansion—<strong>the</strong> Chapman-<br />

Enskog expansion—in which <strong>the</strong> small parameters are D t and e ; l<br />

2 1<br />

. <strong>On</strong>ce again, <strong>the</strong><br />

smallness of D t corresponds to slow variation on <strong>the</strong> scale of <strong>the</strong> time step and <strong>the</strong> lattice<br />

spacing. The smallness of e corresponds to r nmk very near <strong>the</strong> local equilibrium state r nmk<br />

eq .<br />

Thus we expand<br />

r nmk 5<br />

eq (1)<br />

r<br />

nmk<br />

1 e r<br />

nmk<br />

1 e 2 (2)<br />

r<br />

nmk<br />

1 · · · (2.18)<br />

Expanding (2.9) in D t, we obtain<br />

1 D nmk 1<br />

1<br />

2 D tD nmk<br />

2<br />

1 · · ·2 r nmk 5 2<br />

1<br />

(r nmk 2 r nmk<br />

eq ), (2.19)<br />

where<br />

D nmk ;<br />

t 1 c nmk · = 3 (2.20)<br />

is <strong>the</strong> advection operator in <strong>the</strong> direction of <strong>the</strong> nmk-th particle. Then, substituting (2.18)<br />

into (2.19), and assuming that D t and e have <strong>the</strong> same small size, we obtain<br />

(0) (1)<br />

G<br />

nmk<br />

1 G<br />

nmk<br />

1 · · · 5 0, (2.21)


D<br />

D<br />

854 Journal of Marine Research [57, 6<br />

where<br />

contains all <strong>the</strong> leading order terms, and<br />

(0) eq (1)<br />

G<br />

nmk<br />

; D nmk r<br />

nmk<br />

1 r<br />

nmk<br />

(2.22)<br />

(1)<br />

G nmk ; 1<br />

2D tD nmk<br />

2 eq<br />

r nmk<br />

(1) (2)<br />

1 e D nmk r nmk 1 e r nmk<br />

(2.23)<br />

contains all <strong>the</strong> terms of order D t or e .<br />

We obtain evolution equations for r<br />

note that (2.14–15) and (2.18) imply<br />

and v by applying S nmk and S nmkc nmk to (2.21). First<br />

onmk<br />

(1) (2) (1) (2)<br />

r<br />

nmk<br />

5 r<br />

nmk<br />

5 c nmk r<br />

nmk<br />

5 c nmk r<br />

nmk<br />

5 0. (2.24)<br />

onmk<br />

onmk<br />

onmk<br />

By (2.14–17, 24),<br />

onmk<br />

(0)<br />

G nmk 5<br />

r<br />

t 1 = 3 · v (2.25)<br />

and<br />

onmk<br />

(0)<br />

c nmk G nmk 5<br />

v<br />

t 1 p<br />

1<br />

h<br />

x , p h<br />

y , p v<br />

z 2 . (2.26)<br />

Thus, at leading order, <strong>the</strong> dynamics (2.9) is equivalent to<br />

where<br />

r<br />

t 1 = 3 · v 5 0<br />

v<br />

t 5 2 f<br />

1 x , f<br />

y , d f<br />

2<br />

z2<br />

(2.27)<br />

f ; p h 5 1<br />

3c h 2 r , (2.28)<br />

and<br />

d ;<br />

c v<br />

c h<br />

5<br />

z<br />

x<br />

(2.29)<br />

is <strong>the</strong> aspect ratio based on <strong>the</strong> mesh size.<br />

Typically d is very small. According to (2.27b), small d arti cially reduces <strong>the</strong> vertical<br />

component of <strong>the</strong> pressure gradient. This arti cial reduction occurs because, when c v ½ c h ,<br />

particles move vertically at a speed much smaller than <strong>the</strong>ir horizontal speed, and <strong>the</strong>refore<br />

<strong>the</strong> momentum transferred by collisions to a horizontal wall immersed in <strong>the</strong> uid—<strong>the</strong><br />

vertical pressure—is much smaller than <strong>the</strong> momentum that would be transferred to a<br />

vertical wall. To compensate for <strong>the</strong> arti cially small vertical pressure gradient, we shall


l<br />

2<br />

1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

855<br />

reduce <strong>the</strong> buoyancy (and o<strong>the</strong>r vertical forces, if present) by <strong>the</strong> same factor of d 2<br />

. For now<br />

we continue with <strong>the</strong> analysis of (2.9).<br />

The LB dynamics (2.9) implies a dissipation of momentum that appears at <strong>the</strong> next order<br />

of <strong>the</strong> Chapman-Enskog expansion. The steps leading to <strong>the</strong> following results are given in<br />

Appendix A. We nd that, to consistent order,<br />

onmk<br />

(1)<br />

G nmk 5 0 (2.30)<br />

and<br />

onmk<br />

(1)<br />

c nmk G nmk 5 2 1 e 2<br />

D t<br />

2 2<br />

1<br />

3 (c h 2 = 2 v 1 c v 2 v zz 2 c h 2 = r t 2 c v 2 kr z t). (2.31)<br />

Here and below, subscripts x, y, z and t denote partial derivatives. It follows from (2.30)<br />

that <strong>the</strong> continuity equation (2.27a) holds to <strong>the</strong> rst two orders in D t and e . To <strong>the</strong> same<br />

order of accuracy, (2.27b) and (2.31) imply that<br />

where<br />

u<br />

t 5 2 = f 1 A h= 2 u 1 A v u zz 2 A= f t<br />

w<br />

t 5 2 d 2 f z 1 A h = 2 w 1 A v w zz 2 d 2 Af z t<br />

1<br />

(A, A h , A v ) ; 1<br />

(2.32)<br />

D t<br />

2 2 1 1, c h 2<br />

3 , c v 2<br />

3 2 (2.33)<br />

and we have used (2.28) to eliminate r in favor of f . From (2.33) we see that <strong>the</strong> viscosity<br />

decreases with increasing l , vanishing at <strong>the</strong> critical value l max 5 2/D t. Still larger l leads<br />

to instability in <strong>the</strong> form of negative viscosity coefficients. The last two terms in (2.32a, b)<br />

have no obvious physical interpretation. As we shall see in Section 5, <strong>the</strong>se terms are<br />

negligible if <strong>the</strong> time step is sufficiently small.<br />

3. Buoyancy<br />

To accommodate buoyancy, we must introduce buoyancy particles. For reasons to be<br />

explained, we require only 6 buoyancy particles. Each buoyancy particle moves in 1 of <strong>the</strong><br />

6 directions parallel to a coordinate axis. Refer again to Figure 1. Thus<br />

c 1 5 (c h , 0, 0), c 2 5 (0, c h , 0), c 3 5 (2 c h , 0, 0),<br />

c 4 5 (0, 2 c h , 0), c 5 5 (0, 0, c v ), c 6 5 (0, 0, 2 c v )<br />

is <strong>the</strong> set of buoyancy-particlevelocities. There is no rest particle for buoyancy.<br />

Let u i(x, t) be <strong>the</strong> contribution of <strong>the</strong> i-th buoyancy particle to <strong>the</strong> buoyancy,<br />

6<br />

(3.1)<br />

u (x, t) 5 u i(x, t). (3.2)<br />

oi5 1


L<br />

2<br />

856 Journal of Marine Research [57, 6<br />

Like <strong>the</strong> mass particle dynamics (2.9), <strong>the</strong> buoyancy particle dynamics,<br />

u i(x 1 c i D t, t 1 D t) 5 u i(x, t) 2 L D t(u i(x, t) 2 u i<br />

eq (x, t)), (3.3)<br />

comprises a streaming step and a collision step in which each u i relaxes, with relaxation<br />

coefficient L , toward its local equilibrium state u<br />

i eq . The de nition<br />

satis es<br />

u i<br />

eq 5<br />

1<br />

6 u 1 1<br />

2c c 2 i · vu (3.4)<br />

i<br />

o<br />

i<br />

u i eq 5<br />

o<br />

i<br />

u i 5 u (3.5)<br />

and<br />

o<br />

i<br />

c i u<br />

i eq 5 vu . (3.6)<br />

Note, however, that<br />

o<br />

i<br />

c i u i eq Þ<br />

o<br />

i<br />

c i u i. (3.7)<br />

The asymmetry between (3.7) and (2.15) corresponds to <strong>the</strong> fact that <strong>the</strong> velocity v is<br />

de ned by (2.6) as a mass-weighted—not a buoyancy-weighted—average. Because of this<br />

asymmetry, a diffusivity term appears in <strong>the</strong> evolution equation for u , but not in <strong>the</strong><br />

evolution equation (2.27a) for r .<br />

To investigate(3.3), we apply <strong>the</strong> Chapman-Enskog expansion again, and sum (3.3) over<br />

i. The details are given in Appendix B. To <strong>the</strong> rst two orders in <strong>the</strong> Chapman-Enskog<br />

expansion, <strong>the</strong> result is<br />

where<br />

u<br />

t 1 = 3 · (vu ) 5 k h= 2 u 1 k vu zz 1 k = 3 · <br />

(u v), (3.8)<br />

t<br />

1<br />

(k , k h, k v) ; 1<br />

D t<br />

2 2 1 1, c h 2<br />

3 , c v 2<br />

3 2 . (3.9)<br />

Just as l controls <strong>the</strong> viscosity in (2.32), L controls <strong>the</strong> diffusivity in (3.8). The last term in<br />

(3.8) is analogous to <strong>the</strong> last two terms in (2.32).<br />

We defer discussion of <strong>the</strong> full, time-dependent LB dynamics until Section 5. Here we<br />

note that in steady state, (2.27a), (2.32) and (3.8) reduce to<br />

= 3 · v 5 0<br />

0 5 2 = f 1 A h = 2 u 1 A v u zz<br />

0 5 2 d 2<br />

f z 1 A h = 2<br />

w 1 A v w zz<br />

v · = 3u 5 k h= 2 u 1 k vu zz.<br />

(3.10)


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

857<br />

Thus we obtain a buoyancy equation (3.10d) of <strong>the</strong> correct form with only 6 buoyancy<br />

particles, whereas 15 mass particles were required to obtain <strong>the</strong> desired momentum<br />

equations. This difference arises from <strong>the</strong> different ma<strong>the</strong>matical character of buoyancy<br />

and velocity. The buoyancy is a scalar whose ux, a vector, is accurately represented by a<br />

weighted sum of <strong>the</strong> buoyancy velocities c i . <strong>On</strong> <strong>the</strong> o<strong>the</strong>r hand, <strong>the</strong> velocity is a vector<br />

whose ux, a dyad formed from <strong>the</strong> products of <strong>the</strong> mass velocities c nmk , requires<br />

diagonally directed c nmk for its accurate representation.<br />

The steady dynamics (3.10) differs from (2.1) in <strong>the</strong> absence of buoyancy and Coriolis<br />

force, and in <strong>the</strong> factor d 2<br />

preceding <strong>the</strong> vertical derivative of pressure. We can add <strong>the</strong><br />

buoyancy force by <strong>the</strong> general method of <strong>the</strong> following section. Instead, we prefer to build<br />

<strong>the</strong> buoyancy force into <strong>the</strong> de nition of <strong>the</strong> local equilibrium state. Let <strong>the</strong> de nition of<br />

eq<br />

for <strong>the</strong> 3 mass particles with n 5 m 5 0 be changed from (2.10–13) to<br />

r nmk<br />

r eq 000<br />

5<br />

2<br />

9 r 1 b<br />

r eq 001<br />

5<br />

1<br />

9 r 1 w<br />

2<br />

3c v<br />

b<br />

2<br />

(3.11)<br />

eq<br />

r<br />

00-1<br />

5<br />

1<br />

9 r 2 w<br />

2<br />

3c v<br />

b<br />

2<br />

where b is a functional of u to be determined. When b 5 0, (3.11) reduce to (2.10). When<br />

b Þ 0, <strong>the</strong> conservation laws (2.14–15) are unchanged. Thus <strong>the</strong> continuity equation<br />

(2.27a) still holds to <strong>the</strong> rst two orders in <strong>the</strong> Chapman-Enskog expansion. The horizontal<br />

pressure (2.28) is also unchanged, but <strong>the</strong> vertical pressure<br />

acquires a term proportional to b. If we de ne<br />

P 33 5 1<br />

3c v 2 r 2 c v 2 b 5 d 2 f 2 d 2 c h 2 b (3.12)<br />

b(x, y, z, t) ;<br />

1<br />

c h<br />

2<br />

e<br />

z<br />

u (x, y, z8, t) dz8, (3.13)<br />

<strong>the</strong>n <strong>the</strong> leading-order momentum equation (2.27b) acquires <strong>the</strong> buoyancy term d 2<br />

u k on its<br />

right-hand side. At next order, b Þ 0 contributes an additional term; for details see<br />

Appendix C. We nd that, to <strong>the</strong> rst two orders in <strong>the</strong> Chapman-Enskog expansion, <strong>the</strong><br />

vertical momentum equation generalizes from (2.32b) to<br />

w<br />

t 5 2 d f<br />

2<br />

z 1 d 2 u 1 A h = 2 w 1 A v w zz 2 d 2 A(u t 1 f zt). (3.14)<br />

The last two terms in (3.14) are terms like <strong>the</strong> time-derivative terms on <strong>the</strong> right-hand sides<br />

of (2.32) and (3.8). We discuss all <strong>the</strong>se terms in Section 5, where we consider properties of<br />

<strong>the</strong> full, time-dependent LB equations. But rst, in <strong>the</strong> following section, we incorporate<br />

<strong>the</strong> Coriolis, wind, and diabatic forcing.


1<br />

<br />

858 Journal of Marine Research [57, 6<br />

4. Forcing<br />

Let F(x, t) be a general horizontal force (per unit mass). 3 We incorporate F into LB<br />

dynamics by inserting an impulse step on each side of <strong>the</strong> streaming step. Each impulse<br />

step consists of two parts. In <strong>the</strong> rst part, we estimate <strong>the</strong> change D u in <strong>the</strong> horizontal<br />

velocity caused by F acting for a time D t/2. In <strong>the</strong> second part of <strong>the</strong> impulse step, we<br />

distribute this impulse among <strong>the</strong> particles. That is, we replace r nmk by<br />

r 8 nmk 5 r nmk 1<br />

B nmk<br />

c h<br />

2<br />

c nmk · D u 5 r nmk 1<br />

B nmk<br />

c h<br />

(nD u 1 mD v), (4.1)<br />

where B nmk is given by (2.12–13), and <strong>the</strong> prime denotes <strong>the</strong> value immediately after <strong>the</strong><br />

impulse step. Using (2.4), (2.6), and (2.12–13) it is easy to see that <strong>the</strong> horizontal velocity<br />

corresponding to r 8 nmk differs from that corresponding to r nmk by <strong>the</strong> amount D u. 4<br />

To ensure <strong>the</strong> required second-order accuracy in <strong>the</strong> Chapman-Enskog expansion, <strong>the</strong><br />

composite impulse-stream-impulse step must be equivalent to a second-order accurate<br />

solution of<br />

t 1 c nmk · = 2 r nmk 5<br />

B nmk<br />

c h<br />

2<br />

c nmk · F. (4.2)<br />

A discrete algorithm having this property is<br />

r nmk(x 1 c nmk D t, t 1 D t) 5 r nmk(x, t) 1 D t B nmk<br />

c h<br />

2<br />

c nmk<br />

1<br />

· 3 2 F(x 1 c nmkD t, t 1 D t) 1<br />

1<br />

2 F(x, t) 4 .<br />

(4.3)<br />

To see that (4.3) yields <strong>the</strong> correct result, we rst expand (4.3) in D t, obtaining<br />

1 D tD nmk 1<br />

1<br />

2 (D t)2 2<br />

D nmk 1 · · ·2 r nmk(x, t)<br />

5 D t B nmk<br />

c h<br />

2<br />

c nmk · 3 F(x, t) 1<br />

1<br />

2 D tD nmkF(x, t) 1 · · ·4 .<br />

(4.4)<br />

From (4.4) we see that <strong>the</strong> presence of F generalizes (2.22) to<br />

G nmk<br />

eq<br />

(0)<br />

5 D nmk r nmk<br />

(1)<br />

1 r nmk 2<br />

B nmk<br />

c h<br />

2<br />

c nmk · F, (4.5)<br />

3. Although, <strong>the</strong> discussion is easily generalized to include vertical forces, we require only horizontal forces.<br />

4. As this is <strong>the</strong> only property required, (4.1) is somewhat arbitrary, but it seems best to distribute <strong>the</strong><br />

momentum using <strong>the</strong> same weights as in <strong>the</strong> de nition (2.10) of <strong>the</strong> equilibrium states.


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

859<br />

and (2.23) to<br />

(1)<br />

G<br />

nmk<br />

5<br />

D t<br />

2 D 2 eq (1) (2)<br />

nmkr nmk<br />

1 e D nmk r<br />

nmk<br />

1 e r<br />

nmk<br />

2<br />

D t<br />

2<br />

B nmk<br />

c h<br />

2<br />

D nmk (c nmk · F). (4.6)<br />

By carefully repeating <strong>the</strong> steps in Section 2 and AppendixA for <strong>the</strong> more general case F Þ<br />

0, we nd no o<strong>the</strong>r change than <strong>the</strong> appearance of F on <strong>the</strong> right-hand side of <strong>the</strong> horizontal<br />

momentum equation (2.32a).<br />

If <strong>the</strong> horizontal force F can be prescribed, as if F is actually steady (like <strong>the</strong> wind stress<br />

in <strong>the</strong> solutions described in Section 6), <strong>the</strong>n it is very easy to use <strong>the</strong> algorithm (4.3).<br />

However, if F depends upon <strong>the</strong> ow itself, so that <strong>the</strong> right-hand side of (4.3) depends on<br />

r nmk at <strong>the</strong> new time t 1 D t, <strong>the</strong>n <strong>the</strong> formula (4.3) is implicit and <strong>the</strong>refore very difficult to<br />

satisfy exactly. Unfortunately, <strong>the</strong> Coriolis force, F 5 2 f k 3 u, is such a force. Despite<br />

this, S99 incorporated <strong>the</strong> Coriolis force into shallow-water LB dynamics by using a<br />

predictor-corrector approximation to <strong>the</strong> analog of (4.3). However, <strong>the</strong> predictor-corrector<br />

method is unaes<strong>the</strong>tic and required too many correctors for <strong>the</strong> present three-dimensional<br />

application. Here we show <strong>the</strong> method of inserting a Coriolis impulse on each side of <strong>the</strong><br />

streaming step to be a superior alternative. Since this is a new result of great practical<br />

importance, we give <strong>the</strong> full details.<br />

In each Coriolis impulse step, we compute <strong>the</strong> change<br />

D u a 5 A a b u b (4.7)<br />

in <strong>the</strong> horizontal velocity caused by Coriolis force acting for a half time step. Here, Greek<br />

subscripts denote directional components, repeated Greek subscripts are summed from 1 to<br />

2, and <strong>the</strong> matrix A a b is de ned by<br />

[A a b ] 5<br />

f D t<br />

3<br />

cos 1<br />

2 2 2 1 sin 1<br />

f D t<br />

2 2<br />

2 sin 1<br />

f D t<br />

2 2 cos 1<br />

f D t<br />

2 2 2 14<br />

5<br />

f D t<br />

2 e a b 2<br />

( f D t) 2<br />

d a b 1 · · · (4.8)<br />

8<br />

where e a b is <strong>the</strong> permutation symbol and d a b <strong>the</strong> Kronecker delta. The velocity on <strong>the</strong><br />

right-hand side of (4.7) is <strong>the</strong> velocity before <strong>the</strong> impulse step.<br />

We distribute <strong>the</strong> impulse (4.7) among <strong>the</strong> particles by substituting (4.7) into (4.1). The<br />

result is<br />

r 8 nmk (x, t) 5 r nmk(x, t) 1<br />

B nmk<br />

c h<br />

2<br />

c nmk,a A a b u b (x, t), (4.9)<br />

where c nmk,a 5 c nmk · e a , and <strong>the</strong> prime denotes <strong>the</strong> particle density immediately after <strong>the</strong><br />

impulse. The Coriolis impulse (4.9) is followed by <strong>the</strong> streaming step,<br />

r 9 nmk (x 1 c nmk D t, t 1 D t) 5 r 8 nmk (x, t), (4.10)


1<br />

1<br />

1<br />

860 Journal of Marine Research [57, 6<br />

and <strong>the</strong> o<strong>the</strong>r Coriolis impulse,<br />

r - nmk (x, t) 5 r 9 nmk (x, t) 1<br />

B nmk<br />

c h<br />

2<br />

c nmk,a A a b u9 b (x, t). (4.11)<br />

Here, double primes denote <strong>the</strong> state immediately after <strong>the</strong> streaming step, and triple<br />

primes denote <strong>the</strong> state after <strong>the</strong> second Coriolis impulse. The full LB cycle comprises <strong>the</strong><br />

three steps (4.9–11) followed (or preceded) by <strong>the</strong> collision step. Unlike (4.3), <strong>the</strong> 3 steps<br />

(4.9–11) are explicit; <strong>the</strong> velocities on <strong>the</strong> right-hand sides of (4.9) and (4.11) are computed<br />

from <strong>the</strong> results of <strong>the</strong> previous equation.<br />

We must show that <strong>the</strong> three steps (4.9–11) are toge<strong>the</strong>r equivalent to (4.3) or (4.4) with<br />

<strong>the</strong> required second order accuracy. We proceed by back-substitutionfrom (4.11). After <strong>the</strong><br />

second Coriolis impulse, <strong>the</strong> densities are given by (4.11) in <strong>the</strong> form<br />

r nmk(x 1 c nmk D t, t 1 D t) 5 r 9 nmk (x 1 c nmk D t, t 1 D t)<br />

B nmk<br />

c h<br />

2<br />

c nmk,a A a b (x 1 c nmk D t, t 1 D t) o<br />

rsp<br />

c rsp,b r 9 rsp (x 1 c nmk D t, t 1 D t).<br />

(4.12)<br />

Substituting from (4.10), this is<br />

r nmk(x 1 c nmk D t, t 1 D t) 5 r 8 nmk (x, t)<br />

B nmk<br />

c h<br />

2<br />

c nmk,a A a b (x 1 c nmk D t, t 1 D t) o<br />

rsp<br />

c rsp,b r 8 rsp (x 1 c nmk D t 2 c rsp D t, t).<br />

(4.13)<br />

Finally, substituting from (4.9) and using (2.6) we obtain<br />

r nmk(x 1 c nmk D t, t 1 D t)<br />

5 r nmk(x, t) 1<br />

B nmk<br />

c h<br />

2<br />

c nmk,a A a b (x, t) o<br />

rsp<br />

c rsp,b r rsp(x, t)<br />

B nmk<br />

c h<br />

2<br />

3<br />

5<br />

r rsp(x 1 (c nmk 2 c rsp )D t, t) 1<br />

c nmk,a A a b (x 1 c nmk D t, t 1 D t) o<br />

rsp<br />

B rsp<br />

c rsp,b<br />

(4.14)<br />

2<br />

c c rsp,g A g d (x 1 (c nmk 2 c rsp )D t, t)<br />

h<br />

3 o c abd,d r abd(x 1 (c nmk 2 c rsp )D t, t)<br />

abd<br />

6<br />

Eq (4.14) relates <strong>the</strong> particle densities after <strong>the</strong> second Coriolis impulse to <strong>the</strong> densities<br />

before <strong>the</strong> rst impulse. In Appendix D we show that, to <strong>the</strong> required second order accuracy,<br />

(4.14) is equivalentto (4.4) with F 5 2 fk 3 u. This proves that <strong>the</strong> Coriolis impulse algorithm<br />

yields <strong>the</strong> desired Coriolis force when <strong>the</strong> Chapman-Enskog expansion is applied.<br />

To incorporate a prescribed diabatic heating Q, we distribute <strong>the</strong> buoyancy amount Q 3<br />

D t/2 among <strong>the</strong> 6 buoyancy particles before and after each streaming step. That is, we add


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

861<br />

Q 3 D t/12 to each u i. It is easy to show that this corresponds to <strong>the</strong> addition of Q to <strong>the</strong><br />

right-hand side of <strong>the</strong> buoyancy equation, (3.8) or (3.10c).<br />

5. Properties of <strong>the</strong> lattice <strong>Boltzmann</strong> model<br />

First we summarize <strong>the</strong> lattice <strong>Boltzmann</strong> model as an algorithm with a 6-step cycle:<br />

[1] At every lattice point, compute <strong>the</strong> macroscopic variables<br />

r (x, t) 5<br />

r nmk(x, t) on,m,k<br />

v(x, t) 5<br />

c nmk r nmk(x, t) on,m,k<br />

(5.1)<br />

u (x, t) 5<br />

o<br />

i<br />

u i<br />

where c nmk is de ned by (2.4). The nmk-summation is over <strong>the</strong> 15-member set of mass<br />

particles, and <strong>the</strong> i-summation is over <strong>the</strong> 6-member set of buoyancy particles.<br />

[2] Compute <strong>the</strong> local equilibrium states<br />

and<br />

eq<br />

r<br />

nmk<br />

5 A nmk r 1 B nmk n<br />

1 u 1 m v 1 k w b, k 5 0<br />

1 d<br />

c h c h c v<br />

2<br />

n0d m0<br />

5 2 1<br />

2b, k 5 6 1<br />

u<br />

i<br />

eq 5<br />

(5.2)<br />

1<br />

6 u 1 1<br />

2c c 2 i · vu , (5.3)<br />

i<br />

where <strong>the</strong> coefficients A nmk and B nmk are given by (2.10–13), b by (3.13), and <strong>the</strong> buoyancy<br />

particle velocities c i by (3.1).<br />

[3] Collide <strong>the</strong> particles,<br />

r nmk ¬ r nmk 2 l D t(r nmk 2 r eq nmk)<br />

u i ¬ u i 2 L D t(u i 2 u eq i )<br />

(5.4)<br />

[4] Apply impulses representing <strong>the</strong> action of horizontal forcing and heating for a time<br />

interval of D t/2,<br />

r nmk ¬ r nmk 1<br />

u i ¬ u i 1<br />

D tB nmk<br />

2c h<br />

(nD u 1 mD v) (5.5)<br />

D t<br />

Q. (5.6)<br />

12<br />

Here, D u, <strong>the</strong> change in <strong>the</strong> horizontal velocity caused by <strong>the</strong> force, is given by (4.7–8) for<br />

<strong>the</strong> case of Coriolis force. Q is <strong>the</strong> diabatic heating.<br />

[5] Stream <strong>the</strong> particles,<br />

r nmk(x 1 c nmk D t, t 1 D t) 5 r nmk(x, t)<br />

u i(x 1 c i D t, t 1 D t) 5 u i(x, t)<br />

(5.7)


862 Journal of Marine Research [57, 6<br />

D l<br />

2<br />

L<br />

2<br />

[6] Apply step 4 again.<br />

[7] Return to step 1.<br />

Thus <strong>the</strong> LB algorithm corresponds to a computer code with a half dozen simple loops. The<br />

boundary conditions correspond to modi cations of <strong>the</strong> streaming step (5.7) near <strong>the</strong><br />

boundaries, and will be discussed in Section 6.<br />

As shown in Sections 2–4 and in <strong>the</strong> appendices, to <strong>the</strong> rst 2 orders in t, 1<br />

and 1<br />

,<br />

<strong>the</strong> algorithm (5.1–7) is equivalent to <strong>the</strong> following set of differential equations:<br />

where<br />

f<br />

t 1 c s 2 = 3 · v 5 0<br />

u<br />

t 1 f k 3 u 5 2 = f 1 A h= 2 u 1 A v u zz 1 F 2 A= f t<br />

2 2<br />

d w<br />

(5.8)<br />

t 5 2 f<br />

z 1 u 1 d 2 2 A h = 2 2<br />

w 1 d 2 A v w zz 2 A(u t 1 f z t)<br />

u<br />

t 1 = 3 · (vu ) 5 k h= 2 u 1 k vu zz 1 Q 1 k = 3 · (u v) t<br />

c s 2 ; 1<br />

3c h 2 , (5.9)<br />

and we have used (2.28) to eliminate r . In (5.8), F is <strong>the</strong> external forcing and Q is <strong>the</strong><br />

diabatic heating. The viscosity and diffusion coefficients are given by (2.33) and (3.9). It is<br />

easily shown that c s is <strong>the</strong> speed of ‘‘sound waves’’ in <strong>the</strong> horizontal direction; <strong>the</strong> sound<br />

waves travel vertically at speed d c s . These sound waves are arti cial in <strong>the</strong> sense that <strong>the</strong>ir<br />

speed is determined by <strong>the</strong> arbitrarily prescribed particle velocities, c h and c v , and not by an<br />

imposed equation of state. As we shall see, <strong>the</strong> prescribed particle velocities must, for sake<br />

of numerical stability, exceed <strong>the</strong> velocities of gravity waves and macroscopic uid<br />

particles but <strong>the</strong>y need not be as great as <strong>the</strong> speed of real sound waves.<br />

Our numerical experiments show that, if <strong>the</strong> forcing and heating are steady, <strong>the</strong>n <strong>the</strong><br />

solutions of <strong>the</strong> LB equations approach a quasi-steady state. Hence, <strong>the</strong> most important<br />

property of <strong>the</strong> LB dynamics is that, in steady state, (5.8) reduce to<br />

= 3 · v 5 0<br />

f k 3 u 5 2 = f 1 A h = 2 u 1 A v u zz<br />

0 5 2 f z 1 u 1 d<br />

2 2 (A h = 2 w 1 A v w zz )<br />

(5.10)<br />

v · = 3u 5 k h= 2 u 1 k vu zz<br />

which differs from (2.1) only in <strong>the</strong> presence of <strong>the</strong> large dimensionless factor d<br />

2 2<br />

in <strong>the</strong><br />

w-viscosity. (To simplify <strong>the</strong> discussion, we once again temporarily omit <strong>the</strong> external<br />

forcing and heating terms.) That is, insofar as steady solutions are concerned, <strong>the</strong> only


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

863<br />

effect of <strong>the</strong> compromises required to formulate planetary geostrophic dynamics as a lattice<br />

<strong>Boltzmann</strong> model is <strong>the</strong> arti cially enhanced w-viscosity in (5.10c). As we have seen, this<br />

large w-viscosity results from <strong>the</strong> typically very small ratio d 5 D z/D x between <strong>the</strong> vertical<br />

and horizontal lattice spacing. Now, making virtue out of necessity, we argue that this large<br />

w-viscosity is exactly what is needed to resolve <strong>the</strong> sidewall frictional boundary layers that<br />

occur in solutions of (5.10).<br />

Suppose that (5.10) are made nondimensional using <strong>the</strong> same scalings as for (2.1).<br />

Suppose fur<strong>the</strong>r that d b 5 d , where, as in Section 2, d b ; H/L is <strong>the</strong> aspect ratio based on <strong>the</strong><br />

ocean basin dimensions. Then <strong>the</strong> nondimensional form of (5.10) differs from <strong>the</strong><br />

nondimensional form (2.2) of (2.1) only in <strong>the</strong> disappearance of <strong>the</strong> d b 2 -factor in <strong>the</strong><br />

w-viscosity. That is, <strong>the</strong> d<br />

2 2<br />

-factor in (5.10) cancels out <strong>the</strong> d b 2 -factor that appears in (2.2c).<br />

Thus, in steady LB dynamics (5.10), viscous departures from hydrostatic balance can be as<br />

large as <strong>the</strong> viscous departures from geostrophic balance. Whe<strong>the</strong>r this is wanted or not, it<br />

seems to be necessary if we mean to resolve all <strong>the</strong> viscous boundary layers. Unresolved<br />

boundary layers typically cause spurious oscillations and large errors in <strong>the</strong> solutions.<br />

In classic papers, Pedlosky (1968, 1969) explored <strong>the</strong> boundary layer structure of <strong>the</strong><br />

linearized form of (2.2). In <strong>the</strong> case of homogeneous uid (Pedlosky, 1968), if d b ½ E 1/3 h ,<br />

<strong>the</strong>n <strong>the</strong>re are 3 nested, longitudinalboundary layers with <strong>the</strong> thicknesses E 1/3 h , E 1/2 h , and d b.<br />

The thickest, E 1/3 h -layer is <strong>the</strong> Munk layer. The thinnest, d b-layer is nonhydrostatic.<br />

However, if d b ½ E 1/3 h , <strong>the</strong>n it is practically impossible to resolve this thinnest boundary<br />

layer in a numerical model. <strong>On</strong> <strong>the</strong> o<strong>the</strong>r hand, if d b ¾ E 1/3 h —and, once again, <strong>the</strong> LB<br />

model effectively sets d b 5 1—<strong>the</strong>n <strong>the</strong> three boundary layers coalesce into a single<br />

nonhydrostatic boundary layer of thickness E 1/3 h , which is easy to resolve.<br />

In <strong>the</strong> nonhomogeneous (strati ed) case (Pedlosky, 1969), <strong>the</strong> value of d b seems almost<br />

irrelevant, but linear strati ed <strong>the</strong>ory, which assumes that <strong>the</strong> mean buoyancy is independent<br />

of horizontal location, bears a very problematic relation to solutions of <strong>the</strong> full,<br />

nonlinear, planetary geostrophic equations, in which horizontal variations of <strong>the</strong> buoyancy<br />

are as large as vertical variations, and large regions of <strong>the</strong> subpolar gyres are nearly<br />

homogeneous. Even in <strong>the</strong> strati ed case, it seems intuitively clear that <strong>the</strong> effective<br />

assumption of unit aspect ratio by <strong>the</strong> LB model permits <strong>the</strong> use of approximately <strong>the</strong> same<br />

number of lattice points in <strong>the</strong> vertical and horizontal directions.<br />

Of course, <strong>the</strong> conventional approach to ocean circulation modeling is to impose <strong>the</strong><br />

condition of exact hydrostatic balance, and to determine <strong>the</strong> vertical velocity w from <strong>the</strong><br />

condition = 3 · v 5 0 at all horizontal locations. In this approach, one loses <strong>the</strong> ability to<br />

prescribe sidewall boundary conditions on w, but <strong>the</strong> only elliptic equation requiring<br />

solution is two-dimensional. If <strong>the</strong> boundary condition on <strong>the</strong> horizontal velocity u is<br />

no-slip, this conventional approach produces <strong>the</strong> somewhat bizarre situation that particles<br />

move freely along <strong>the</strong> sidewall in <strong>the</strong> vertical direction only. In Section 6, we show that LB<br />

solutions with boundary conditions of no-stress (in both tangential directions) are globally<br />

hydrostatic despite <strong>the</strong> large viscosity in <strong>the</strong> vertical momentum equation, and <strong>the</strong>refore<br />

probably similar to solutions of <strong>the</strong> conventional equations.


864 Journal of Marine Research [57, 6<br />

Although primary interest attaches to steady nal solutions satisfying (5.10), we now<br />

brie y consider <strong>the</strong> full, time-dependent LB dynamics (5.8). The full equations appear<br />

inconsistent in that <strong>the</strong>y contain <strong>the</strong> local time-derivatives of momentum but omit its<br />

advection. However, we view <strong>the</strong>se local time-derivative terms merely as a device for<br />

relaxing <strong>the</strong> velocity eld to its quasi-steady equilibrium state. The equilibrium state is<br />

geostrophic and hydrostatic, apart from signi cant viscous boundary layer corrections. If<br />

<strong>the</strong> time-derivatives of velocity had been omitted, we would instead be solving elliptic<br />

equations to determine <strong>the</strong> velocity eld. Time-stepping <strong>the</strong> velocity is analogous to<br />

solving <strong>the</strong>se elliptic equations by a relaxation method, but <strong>the</strong> time-stepping strategy is<br />

simpler and more physically appealing. 5 In particular, linear wave solutions of (5.8)<br />

resemble <strong>the</strong> wave solutions of <strong>the</strong> linearized primitive equations.<br />

The primary differences between (5.8) and <strong>the</strong> primitive equations are <strong>the</strong> presence of<br />

<strong>the</strong> compressibility term f t in (5.8a), <strong>the</strong> terms proportional to A and k in (5.8b–d), and <strong>the</strong><br />

u = 3 · v term in (5.8d). First we show that <strong>the</strong>se unfamiliar terms are negligibly small in<br />

solutionsthat obey <strong>the</strong> standard scaling for large-scale, low-frequency ocean ow. Then we<br />

analyze <strong>the</strong>se terms more closely, showing that <strong>the</strong>y can lead to numerical instability, but<br />

only when <strong>the</strong> time step is relatively large.<br />

If we apply <strong>the</strong> standard scaling described in Section 2 (with, additionally,time scaled by<br />

T 5 L/U), we obtain (5.8) in <strong>the</strong> nondimensional form<br />

µ f<br />

t 1 = 3 · v 5 0<br />

Ro u<br />

t 1 f k 3 u 5 2 = f 1 E h= 2 u 1 E v u zz 2 µE h = f t<br />

Ro w<br />

(5.11)<br />

t 5 2 f<br />

z 1 u 1 E 2<br />

h= w 1 E v w zz 2 µE h (u t 1 f zt)<br />

u<br />

t 1 = 3 · (vu ) 5 D h = 2<br />

u 1 D v u zz 1 D h M 2 = 3 · (u v) t<br />

where Ro ; U/ f 0 L is <strong>the</strong> Rossby number, M ; U/c s is <strong>the</strong> Mach number, µ ; M 2 /Ro, and<br />

<strong>the</strong> o<strong>the</strong>r parameters are de ned in (2.3). Thus, if <strong>the</strong> Mach number is sufficiently small, all<br />

<strong>the</strong> terms proportional to µ or M in (5.11) are negligible, and = 3 · (vu ) < v · = 3u . Then<br />

(5.11) take a familiar form, remarkable only for <strong>the</strong> absence of Reynolds stresses and for<br />

<strong>the</strong> absence of <strong>the</strong> d 2<br />

-factor in <strong>the</strong> 3 w-terms of (5.11c); compare (2.2). For xed lattice<br />

spacing, small Mach number corresponds to small time step. However, as we see next,<br />

numerical stability requirements force <strong>the</strong> Mach number to be small, thus virtually<br />

guaranteeing that <strong>the</strong> unphysical terms in (5.8) are negligible in <strong>the</strong> large-scale, lowfrequency<br />

ow of interest.<br />

5. Based on my experience, time-stepping is more stable and hardly less efficient than even sophisticated<br />

relaxation methods when <strong>the</strong> Ekman numbers are realistically small.


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

865<br />

We begin our analysis of <strong>the</strong> time-dependent equations by noting that (5.8) imply an<br />

energy equation of <strong>the</strong> form,<br />

where<br />

t[ 1 2u 2 1 1<br />

2v 2 1 1 2<br />

2d 2 w 2 2 zu 1 1 2<br />

2c 2 s f 2 ] 5 2 = 3 · (vf 2 vzu ) 1 D, (5.12)<br />

D 5 A h u · = 2 u 1 A v u · u zz 1 d<br />

2 2 (A h w= 2<br />

w 1 A v ww zz )<br />

2 Av · = 3f t 2 Awu t 2 zk h= 2<br />

u 2 zk vu zz 2 zk = 3 · (u v) t<br />

(5.13)<br />

contains all <strong>the</strong> terms arising at <strong>the</strong> second order of <strong>the</strong> Chapman-Enskog expansion. The<br />

vertical kinetic energy in (5.12) is enhanced by <strong>the</strong> expected factor of d<br />

2 2<br />

and thus has <strong>the</strong><br />

same size as <strong>the</strong> horizontal kinetic energy. The internal energy—<strong>the</strong> last term on <strong>the</strong><br />

left-hand side of (5.12)—is insigni cant if <strong>the</strong> Mach number is small, that is, if <strong>the</strong> particle<br />

speeds c h and c v are much larger than <strong>the</strong> corresponding uid speeds.<br />

The A-terms containing f t in (5.8b–c) and (5.13) are like those present in compressible<br />

Navier-Stokes <strong>the</strong>ory. While <strong>the</strong> form of (5.8) emphasizes that <strong>the</strong>se terms vanish in steady<br />

state, <strong>the</strong> Af t-terms take a more familiar form if we eliminate f t by substitution from<br />

(5.8a). Then, as expected, all <strong>the</strong> terms not containingu in (5.13) may be integrated by parts<br />

to yield a negative de nite contribution to <strong>the</strong> spatial integral of D. <strong>On</strong> <strong>the</strong> o<strong>the</strong>r hand, <strong>the</strong><br />

u -terms proportional to A and k in (5.8c–d) and (5.13) have no obvious physical<br />

interpretation.As we shall see, <strong>the</strong>se terms cause instability if <strong>the</strong> time step is too large.<br />

First, consider <strong>the</strong> k -term in <strong>the</strong> buoyancy equation (5.8d). <strong>On</strong>ce again, all <strong>the</strong> terms<br />

appearing on <strong>the</strong> right-hand side of (5.8d) arise at <strong>the</strong> second order of <strong>the</strong> Chapman-Enskog<br />

approximation.Therefore, we may consistently substitute from <strong>the</strong> leading order balance—<br />

<strong>the</strong> left-hand side of (5.8d)—to obtain <strong>the</strong> approximation<br />

k = 3 · <br />

t (u v) < 2 k u tt. (5.14)<br />

Thus, to consistent order, <strong>the</strong> buoyancy equation (5.8d) is equivalent to<br />

in which <strong>the</strong> ‘‘sound-wave operator’’<br />

u<br />

t 1 = 3 · (vu ) 5 k (2 u tt 1 c s 2 = 2<br />

u 1 d 2<br />

c s 2 u zz) 1 Q (5.15)<br />

2 tt 1 c s 2 = 2 1 d 2 c s 2 zz (5.16)<br />

appears in place of <strong>the</strong> desired diffusivity. If, at leading order, u ~ exp (ik · x 2 v t), where<br />

<strong>the</strong> frequency v corresponds to any physical wave or uid particle advection speed (e.g.<br />

v 5 v · k), <strong>the</strong>n <strong>the</strong> wave operator (5.16) is proportional to<br />

v 2<br />

2 c s 2 k h 2 2 d 2<br />

c s 2 k v<br />

2<br />

(5.17)


866 Journal of Marine Research [57, 6<br />

where k h is <strong>the</strong> horizontal wavenumber and k v <strong>the</strong> vertical wavenumber. If (5.17) is<br />

positive—that is, if <strong>the</strong> velocity of waves or uid particles exceeds <strong>the</strong> sound speed—<strong>the</strong>n<br />

<strong>the</strong> solution grows exponentially. The condition that (5.17) be negative is just <strong>the</strong><br />

Courant-Lewy-Friedrichs (CLF) condition.<br />

A similar conclusion applies to <strong>the</strong> Au t-term in (5.8c). In <strong>the</strong> case of linear waves, u t <<br />

2 wN 2 at leading order, where N is <strong>the</strong> Vaisala frequency, and thus<br />

d<br />

2 2 A h = 2 w 1 d<br />

2 2 A v w zz 2 Au t 5 Ad<br />

2 2 c s 2 (= 2 w 1 d 2 w zz ) 1 AN 2 w. (5.18)<br />

If w ~ exp (ik · x 2 v t), this is proportional to<br />

d 2<br />

N 2 2 c s 2 k h 2 2 d 2<br />

c s 2 k v 2 . (5.19)<br />

Note that (5.19) corresponds to (5.17) with v 5 d N. <strong>On</strong>ce again, numerical instability<br />

results if (5.19) is positive. However, (5.19) corresponds to <strong>the</strong> CLF criterion for internal<br />

waves with a (maximum) frequency of d N, with <strong>the</strong> d -factor arising from <strong>the</strong> arti cially<br />

enhanced vertical momentum—<strong>the</strong> d<br />

2 2<br />

-factor in <strong>the</strong> rst term of (5.8c). Thus <strong>the</strong> arti cial<br />

enhancement of <strong>the</strong> vertical momentum produces a bene t as great as <strong>the</strong> corresponding<br />

enhancement of friction in <strong>the</strong> same equation, namely, <strong>the</strong> ability to take time steps much<br />

larger—by a factor of d<br />

2 1<br />

—than in <strong>the</strong> conventional primitive equations.<br />

All of <strong>the</strong>se results are based upon (5.8). Since (5.8) rest upon <strong>the</strong> assumptions of small<br />

D t, l<br />

2 1<br />

and L<br />

2 1<br />

(via <strong>the</strong> Chapman-Enskog <strong>the</strong>ory), it is somewhat dangerous to use (5.8) to<br />

infer limits on D t. <strong>On</strong> <strong>the</strong> o<strong>the</strong>r hand, a direct stability analysis of <strong>the</strong> general algorithm<br />

(5.1–7) seems impossible. As with all complicated numerical algorithms, we must largely<br />

judge <strong>the</strong> algorithm by its results. This we do in <strong>the</strong> following section.<br />

6. Numerical solutions<br />

Now we examine solutions of <strong>the</strong> lattice <strong>Boltzmann</strong> model in a square ocean basin, 0 ,<br />

x, y , L, with side L 5 4000 km and depth H 5 4 km. We take f 5 f 0 1 b ( y 2 L/2) where<br />

f 0 5 2p day 2 1 and b 5 f 0 /6400 km. All of <strong>the</strong> solutions described have 50 3 lattice points.<br />

Thus D x 5 80 km, D z 5 80 m, and d b 5 d ; both <strong>the</strong> basin and <strong>the</strong> lattice elements have <strong>the</strong><br />

same aspect ratio. Then <strong>the</strong> remaining parameters of <strong>the</strong> model (besides <strong>the</strong> external<br />

forcing) are <strong>the</strong> time step D t, and <strong>the</strong> relaxation coefficients l and L .<br />

For xed lattice spacings, <strong>the</strong> time step determines c h 5 D x/D t, c v 5 D z/D t, and <strong>the</strong><br />

sound speed c s 5 c h /Î 3. <strong>On</strong>ce again, a large time step corresponds to a small sound speed,<br />

and numerical instability results if <strong>the</strong> sound speed becomes too small. In all <strong>the</strong> solutions<br />

described c h 5 1000 km day 2 1 ; hence D t 5 D x/c h 5 0.08 days and c v 5 1.0 km day 2 1 .<br />

Experiments showed <strong>the</strong> results to be independent of <strong>the</strong> sound speed at speeds larger than<br />

this, but (even though numerical stability was maintained) a dependence on sound speed<br />

began to appear at lower speeds. Thus D t 5 0.08 days seems to be largest practicable time<br />

step. This is still many times larger than <strong>the</strong> maximum time step in conventional primitive<br />

equation models.


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

867<br />

The relaxation coefficients control <strong>the</strong> viscosity and diffusivity. We choose <strong>the</strong> massparticle<br />

relaxation coefficient l by demanding that <strong>the</strong> western boundary layer, of thickness<br />

(A h /b ) 1/3 , be 2 lattice spacings (160 km) wide. This leads to A h 5 5 3 10 8 cgs, A v 5 d 2<br />

A h 5<br />

5 3 10 2 cgs, and l 5 0.761l max, where l max 5 2/D t.<br />

We choose <strong>the</strong> buoyancy-particle relaxation coefficient L by specifying <strong>the</strong> vertical<br />

diffusion coefficient k v. Experiments showed that <strong>the</strong> smallest attainable k v depends<br />

strongly on <strong>the</strong> vertical resolution. For D z 5 80 km, as in all <strong>the</strong> solutions presented, <strong>the</strong><br />

smallest attainable k v is 5 cgs, corresponding to k h 5 d<br />

2 2<br />

k v 5 5 3 10 6 cgs and L 5<br />

0.997 L max. This is larger than <strong>the</strong> canonical value of k v 5 0.1–1.0 cgs, but <strong>the</strong> results<br />

depend ra<strong>the</strong>r weakly on diffusivity; recall that <strong>the</strong> internal boundary layer corresponding<br />

to <strong>the</strong> main <strong>the</strong>rmocline has a thickness varying as k<br />

v 1/2 . 6 At 50 3 resolution, solutions with k v<br />

less than 5 cgs showed spurious oscillations in <strong>the</strong> midwater region of rapid vertical<br />

buoyancy variation with depth. Thus <strong>the</strong> need to resolve this internal boundary layer<br />

apparently determines <strong>the</strong> minimum value of diffusivity.<br />

The solution is driven by wind forcing and diabatic heating. For <strong>the</strong> wind forcing we<br />

take<br />

F 5<br />

1<br />

d ez/d (t 0, 0), (6.1)<br />

where z 5<br />

0 corresponds to <strong>the</strong> ocean surface, and<br />

t 0(x, y) 5 1.0 cm 2 sec 2 2 sin 2 (p y/L), 0 , y , L (6.2)<br />

is <strong>the</strong> eastward component of wind stress. Thus <strong>the</strong> wind momentum enters as a body force<br />

acting in a layer of constant thickness d near <strong>the</strong> ocean surface. In all <strong>the</strong> experiments<br />

discussed, d 5 2D z 5 160 m. The wind stress (6.2) corresponds to a double gyre. This<br />

wind stress and its curl vanish at <strong>the</strong> nor<strong>the</strong>rn and sou<strong>the</strong>rn boundaries.<br />

Of course, one could equally well model <strong>the</strong> wind stress as a momentum ux through <strong>the</strong><br />

ocean surface, relying on <strong>the</strong> uid viscosity for downward mixing in an Ekman layer of<br />

thickness of (A v / f 0 ) 1/2 . The advantage of <strong>the</strong> body-force approach (which, considering <strong>the</strong><br />

special and very complicated nature of momentum mixing near <strong>the</strong> ocean surface, is at<br />

least equally defensible) is that <strong>the</strong> Ekman layers need not <strong>the</strong>n be resolved. Indeed, <strong>the</strong><br />

viscosity values given above imply an Ekman layer thickness of about 25 m, which is<br />

smaller than <strong>the</strong> vertical lattice spacing of 80 m. In all <strong>the</strong> experiments presented, we<br />

impose boundary conditions of no stress. For example, u 5 w x 5 v x 5 0 at <strong>the</strong> western<br />

sidewall, and w 5 u z 5 v z 5 0 at <strong>the</strong> ocean surface. In <strong>the</strong> LB model, <strong>the</strong>se boundary<br />

conditions correspond to elastic collisions of <strong>the</strong> particles with <strong>the</strong> boundaries. If <strong>the</strong><br />

interior ocean ow is smooth on <strong>the</strong> scale of <strong>the</strong> Ekman layers, <strong>the</strong>n <strong>the</strong> interior ow<br />

satis es <strong>the</strong> top and bottom boundary conditions by itself, and no Ekman layers are<br />

required at leading order. O<strong>the</strong>r solutions (not presented) with no-slip or prescribed- ux<br />

6. See, for example, Salmon, 1998, pp. 191–195, and references <strong>the</strong>rein.


868 Journal of Marine Research [57, 6<br />

Figure 2. Solution of <strong>the</strong> lattice <strong>Boltzmann</strong> model with uniform buoyancy and <strong>the</strong> two-gyre wind<br />

stress (6.2). Left: The horizontal velocity (arrows) and <strong>the</strong> dynamic height (contours, with darker<br />

lines corresponding to larger dynamic height) at 160 m depth, just below <strong>the</strong> wind forcing layer.<br />

The maximum velocity is 3.78 km day 2 1 , and <strong>the</strong> rms velocity is 0.74 km day 2 1 . The range in<br />

dynamic height is 13.62 cm. To reduce <strong>the</strong> contrast in arrow sizes, <strong>the</strong> arrows are proportional to<br />

<strong>the</strong> square root of <strong>the</strong> uid speed. Right: The vertical velocity at <strong>the</strong> same depth. The maximum<br />

(minimum) vertical velocity of 1.73 3 10 2 4 (2 1.53 3 10 2 4 ) km day 2 1 occurs at <strong>the</strong> western<br />

(eastern) boundary.The downwelling regions are hatched.<br />

boundary conditions required larger values of viscosity to resolve <strong>the</strong> Ekman layers.<br />

However, because of <strong>the</strong> linkage A v 5 d 2<br />

A h between vertical and horizontal diffusivities,<br />

those more viscous solutions had unrealistically wide western boundary layers. 7<br />

For reference, we rst examine <strong>the</strong> steady nal state of a homogeneous (u ; 0) ocean<br />

with <strong>the</strong> wind forcing (6.1). The horizontal ow is geostrophic and z-independent below<br />

<strong>the</strong> wind forcing layer near <strong>the</strong> surface. This surface forcing layer plays <strong>the</strong> same role as <strong>the</strong><br />

classical Ekman layer, creating a horizontal divergence that drives <strong>the</strong> deep interior by<br />

vortex stretching associated with depth-independent w/ z. Figure 2 shows a plan view of<br />

pressure, horizontal velocity, and vertical velocity at a depth just below <strong>the</strong> surface forcing<br />

layer. The horizontal velocity in Figure 2 corresponds closely to Munk’s classic model with<br />

no-slip conditions; <strong>the</strong> no-stress boundary conditions cause only a slight change in <strong>the</strong><br />

structure of <strong>the</strong> western boundary layer. The western boundary layer is <strong>the</strong> only boundary<br />

layer present at leading order, because <strong>the</strong> Sverdrup and Ekman transport velocities have<br />

7. The linkage between horizontal and vertical diffusivities results from <strong>the</strong> use of a single relaxation<br />

coefficient l in <strong>the</strong> lattice <strong>Boltzmann</strong> equation for <strong>the</strong> mass particles. To obtain independent viscosities, one must<br />

generalize <strong>the</strong> method by (roughly speaking) relaxing horizontally moving particles toward <strong>the</strong> average of <strong>the</strong><br />

horizontal particles at a different rate from <strong>the</strong> corresponding vertical relaxation. However, in this initial<br />

application to three-dimensional ow, I thought it best to take <strong>the</strong> simpler alternative of ‘‘isotropic diffusivity in<br />

scaled coordinates.’’


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

869<br />

no components normal to <strong>the</strong> nor<strong>the</strong>rn, sou<strong>the</strong>rn and eastern boundaries. The upwelling<br />

(downwelling) observed at <strong>the</strong> western (eastern) boundaries is a response to <strong>the</strong> second<br />

order interior ow. At second order in <strong>the</strong> viscosity, <strong>the</strong> interior velocity acquires an<br />

eastward, downwind component; this requires downwelling near <strong>the</strong> surface at <strong>the</strong> eastern<br />

boundary and upwelling near <strong>the</strong> western boundary to maintain mass balance. However,<br />

<strong>the</strong>se up- and downwelling velocities are <strong>the</strong> same size as <strong>the</strong> interior vertical velocity—<br />

2<br />

not E 1/3 h larger, as would be expected in leading order sidewall upwelling layers. In <strong>the</strong><br />

strati ed solutions to be described next, <strong>the</strong> interior velocity acquires a (leading order)<br />

<strong>the</strong>rmal wind component normal to <strong>the</strong> coastline; mass balance <strong>the</strong>n requires upwelling<br />

boundary layers with vertical velocities much larger than <strong>the</strong> interior vertical velocity.<br />

Solutions with nonuniform buoyancy require sources and sinks of buoyancy to maintain<br />

a realistic buoyancy range in <strong>the</strong> face of diffusion. In reality, all of <strong>the</strong>se sources and sinks<br />

lie near <strong>the</strong> ocean surface. However, ocean surface cooling tends to produce regions of<br />

static instability, which usually require an externally imposed convective adjustment to<br />

restore neutral stability. The convective adjustment is distasteful because it is completely<br />

arbitrary, and because it can become a source of computational noise; see Cessi (1996) and<br />

Cessi and Young (1996).<br />

In both primitive equation models and planetary geostrophic models, static instability<br />

occurs because <strong>the</strong> typically very small aspect ratio of <strong>the</strong> gridboxes inhibits convection.<br />

Linear stability <strong>the</strong>ory predicts that <strong>the</strong> fastest growing convective cells have horizontal<br />

and vertical scales comparable to, or somewhat smaller than, <strong>the</strong> ocean depth. Thus models<br />

with horizontal grid spacing much larger than <strong>the</strong> ocean depth do not resolve <strong>the</strong> fastest<br />

growing cells. <strong>On</strong> <strong>the</strong> o<strong>the</strong>r hand, because <strong>the</strong> LB model effectively imposes unit aspect<br />

ratio in scaled variables, <strong>the</strong> most unstable convective cells have a real (dimensional)<br />

horizontal scale about 1000 times larger than <strong>the</strong> vertical scale. Thus <strong>the</strong> LB model resolves<br />

convection, but <strong>the</strong> convection occurs at an unrealistically large horizontal scale. Convective<br />

adjustment may still be required, but it seems to play a less essential role than in <strong>the</strong><br />

more conventional models.<br />

We examine 3 solutions with non-uniform strati cation. The rst solution (solution A)<br />

has no convective adjustment, but <strong>the</strong> diabatic heating is especially chosen to avoid static<br />

instability. Solution A is steady; its regions of static instability are very small; and<br />

spontaneous convection seems to be absent. The second solution (solution B) also lacks<br />

convective adjustment, but <strong>the</strong> diabatic forcing includes a signi cant surface cooling at<br />

high latitude. Solution B is unsteady, with persistent large-scale spontaneous convection<br />

occurring near <strong>the</strong> nor<strong>the</strong>rn boundary. The third solution (solution C) has <strong>the</strong> same diabatic<br />

heating as B but also includes an arbitrary convective adjustment. The convective<br />

adjustment in C removes most of <strong>the</strong> unsteady convection present in B, but <strong>the</strong> two<br />

solutions are o<strong>the</strong>rwise surprisingly similar.<br />

All three solutions, A, B and C, have <strong>the</strong> geometry, dissipation parameters, and wind<br />

forcing described above. They differ only in <strong>the</strong> presence or absence of convective<br />

adjustment, in <strong>the</strong> diabatic heating term Q(x, y, z) on <strong>the</strong> right-hand side of <strong>the</strong> buoyancy


870 Journal of Marine Research [57, 6<br />

equation (5.8d), and in <strong>the</strong> boundary condition on u at <strong>the</strong> ocean bottom. In solutionA, we<br />

take<br />

Q 5<br />

e z/d cos 1<br />

p y<br />

2L2 (u * 2 u sfc)/t , 0 , y , L, (6.3)<br />

where d is <strong>the</strong> same as in (6.1), u * and t are prescribed constants, and u sfc(t) is <strong>the</strong> average<br />

buoyancy at <strong>the</strong> ocean surface. We take u 5 0 as <strong>the</strong> boundary condition on buoyancy at <strong>the</strong><br />

ocean bottom. At all o<strong>the</strong>r boundaries, <strong>the</strong> boundary conditions are no normal ux of u ,<br />

corresponding to elastic collisions of <strong>the</strong> buoyancy particles with <strong>the</strong> boundary in <strong>the</strong> LB<br />

model. Thus, in solutionA, we heat <strong>the</strong> ocean surface layer everywhere, but more intensely<br />

in <strong>the</strong> south, until <strong>the</strong> difference between <strong>the</strong> average surface buoyancy u sfc and <strong>the</strong> uniform<br />

bottom buoyancy approaches <strong>the</strong> prescribed value u *; t is <strong>the</strong> time-scale for <strong>the</strong> adjustment.<br />

We regard <strong>the</strong> uniform bottom buoyancy as resulting from <strong>the</strong> sinking and<br />

subsequent spreading of cold water near <strong>the</strong> nor<strong>the</strong>rn boundary by small-scale processes<br />

not contained in <strong>the</strong> model. Alternatively, we could regard solutionA as a model of, say, <strong>the</strong><br />

upper half ocean, with <strong>the</strong> bottom boundary condition corresponding to a uniformly cold<br />

abyss.<br />

In solution B, we take<br />

Q 5<br />

e z/d 1 u * cos 1<br />

p y<br />

2L2 2 u 2 Y t , (6.4)<br />

where u * and t are constants with <strong>the</strong> same values as in solution A, and we take <strong>the</strong> lower<br />

boundary condition to be no ux of u into <strong>the</strong> ocean bottom. In (6.4) u is <strong>the</strong> local value of<br />

buoyancy; thus (6.4) corresponds to ‘‘surface restoring conditions’’ of <strong>the</strong> kind often used<br />

in ocean circulation models. At equilibrium, <strong>the</strong> average volume integral of (6.4) vanishes.<br />

Hence <strong>the</strong> diabatic forcing (6.4) corresponds to heating near <strong>the</strong> ocean surface in <strong>the</strong><br />

sou<strong>the</strong>rn ocean and surface cooling in <strong>the</strong> north. The surface cooling produces a large<br />

region of static instability. Never<strong>the</strong>less, we do not apply convective adjustment to solution<br />

B.<br />

In solution C, we take <strong>the</strong> same diabatic forcing (6.4) and bottom boundary condition as<br />

in solution B, but we apply a convective adjustment in <strong>the</strong> form of an additional term,<br />

Q c 5 (u sort 2 u )/t c, (6.5)<br />

on <strong>the</strong> right-hand side of <strong>the</strong> buoyancy equation. Here, u sort is <strong>the</strong> buoyancy corresponding<br />

to a vertical sorting (to produce buoyancy increasing upward) of <strong>the</strong> buoyancy at each<br />

horizontal location, and t c is <strong>the</strong> time scale for convective adjustment. Thus Q c vanishes if<br />

<strong>the</strong> water column is statically stable. In all three solutions, A, B and C, we take t 5 1 year<br />

and u * to be <strong>the</strong> change in buoyancy corresponding to 2 units of s u . In solution C, we take<br />

t c 5 5 days.<br />

We begin our discussion of <strong>the</strong> 3 strati ed solutions with a brief overall summary. The<br />

greatest differences are between solutionsA and B. In solutionA, with surface heating (6.3)


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

871<br />

and bottom boundary condition u 5 0, <strong>the</strong> surface buoyancy range of 0.66 sigma units<br />

(sgu) is much smaller than <strong>the</strong> imposed difference of 2.0 sgu between <strong>the</strong> average surface<br />

buoyancy and <strong>the</strong> uniform buoyancy at <strong>the</strong> ocean bottom. The net heat ux is downward<br />

and through <strong>the</strong> ocean bottom. The ow is statically stable except within a few small and<br />

extremely thin surface regions in which cold water ows southward over warmer water.<br />

Unsurprisingly <strong>the</strong>refore, solution A resembles <strong>the</strong> predictions of <strong>the</strong> linear <strong>the</strong>ory of<br />

wind-driven ocean circulation, in which <strong>the</strong> mean buoyancy varies only with depth.<br />

In solution B, with surface heating in <strong>the</strong> south, cooling in <strong>the</strong> north, and no buoyancy<br />

ux through <strong>the</strong> bottom, <strong>the</strong> net heat ux is northward. The surface buoyancy range of<br />

1.67 sgu is comparable to <strong>the</strong> average difference between <strong>the</strong> surface and bottom, and <strong>the</strong><br />

ow contains a strong <strong>the</strong>rmohaline component. Solution B is statically unstable in a<br />

relatively deep layer covering <strong>the</strong> nor<strong>the</strong>astern third of <strong>the</strong> ocean basin. This layer of static<br />

instabilityreaches depths greater than 1 km along <strong>the</strong> nor<strong>the</strong>rn boundary. Within and below<br />

this unstable layer, we observe unsteady convective motions with horizontal scales of<br />

hundreds of kilometers. Time-averaging smooths out <strong>the</strong>se convective eddies but has little<br />

o<strong>the</strong>r effect on <strong>the</strong> solution; hence we prefer to view ‘‘snapshots’’ of solution B.<br />

SolutionA begins in a state of rest with u ; 0. After 235 years it seems to have reached a<br />

steady state. All <strong>the</strong> pictures of A correspond to this time. Solution B begins at <strong>the</strong> end-state<br />

of A. All <strong>the</strong> pictures of B correspond to a time 86 years later, by which B has achieved a<br />

statistically steady state. Solution C begins from B, and spans an additional25 years. At 50 3<br />

resolution, <strong>the</strong> solutions require 1.23 sec per time step, that is, 91.4 minutes per simulated<br />

year, on a desktop workstation with a 170 Mhz processor.<br />

Figure 3 shows <strong>the</strong> horizontal velocity and dynamic height (top), buoyancy (middle),<br />

and vertical velocity (bottom) at a level just below <strong>the</strong> surface forcing layer in solutionsA<br />

(left) and B (right). Figure 4 shows <strong>the</strong> corresponding quantities at mid-depth. Figures 5<br />

and 6 show sections of buoyancy. Since <strong>the</strong> ocean bottom is at, all of our solutions have<br />

<strong>the</strong> same, steady, depth-averaged ow. <strong>On</strong>ce again, this depth-averaged ow is just <strong>the</strong><br />

Munk solution for <strong>the</strong> wind (6.2) and is very similar to <strong>the</strong> sub-surface-layer ow shown in<br />

Figure 2 for <strong>the</strong> homogeneous solution. The near-surface ow in A (Fig. 3, upper left)<br />

closely resembles <strong>the</strong> Munk solution. The sub-<strong>the</strong>rmocline ow (Fig. 4, upper left) is much<br />

weaker, except in <strong>the</strong> western subpolar gyre, where relatively cold water outcrops at <strong>the</strong> sea<br />

surface, and <strong>the</strong> wind-driven circulation penetrates deepest. The near-surface vertical<br />

velocity (Fig. 3, bottom left) resembles <strong>the</strong> homogeneous case (Fig. 2, right) in <strong>the</strong> interior<br />

ocean, but shows a region of very strong upwelling along <strong>the</strong> western boundary. This<br />

upwelling region, which extends through <strong>the</strong> full depth of <strong>the</strong> <strong>the</strong>rmocline (about 1 km<br />

maximum at <strong>the</strong> western boundary), occurs where <strong>the</strong> interior <strong>the</strong>rmal wind has a strong<br />

offshore component. The upwelling along <strong>the</strong> western boundary feeds this offshore ow<br />

and bends <strong>the</strong> isopycnals upward near <strong>the</strong> boundary (Fig. 6).<br />

In solution B, <strong>the</strong> diabatic heating produces a strong surface buoyancy gradient (Fig. 3,<br />

middle right) with virtually no closed contours of buoyancy. The corresponding <strong>the</strong>rmal<br />

wind dominates <strong>the</strong> surface ow in <strong>the</strong> subpolar gyre (Fig. 3, upper right) so that <strong>the</strong> ow is


Figure 3. The horizontalvelocity and dynamic height (top), buoyancy (middle), and vertical velocity<br />

(bottom) at a level just below <strong>the</strong> wind forcing layer in solution A (left) and B (right). Arrows are<br />

proportionalto <strong>the</strong> square root of <strong>the</strong> velocity,and darker contourscorrespondto larger values. The<br />

maximum (and rms) horizontal velocities are 19.22 (3.32) km day 2 1 in solution A and 40.22<br />

(5.64) km day 2 1 in B. The buoyancy extrema (middle) are in units of s u . The vertical velocity<br />

ranges between 2 9.39 3 10 2 4 and 1.95 3 10 2 3 km day 2 1 in A (lower left), and between 2 9.66 3<br />

10 2 3 and 5.34 3 10 2 3 km day 2 1 in B (lower right). Downwelling regions are hatched.


Figure 4. The same as Figure 3, but in mid-water, at a depth of 2 km. The maximum horizontal<br />

velocity in solution A (1.50 km day 2 1 , top left) arises from <strong>the</strong> deep penetration of <strong>the</strong> subpolar<br />

wind gyre. In B, sinking along <strong>the</strong> nor<strong>the</strong>rn boundary feeds a southward-owing deep western<br />

boundary current (top right) with a maximum velocity of 6.09 km day 2 1 . The buoyancy range in B<br />

(1.82 sigma units, middle right) is more than twice as great as in A (middle left, 0.77 sgu) and is<br />

clearly associated with <strong>the</strong> convection.Because of convection,<strong>the</strong> vertical velocity is more than an<br />

order of magnitude larger in B (lower right, range 2 8.83 3 10 2 3 to 1 2.74 3 10 2 3 km day 2 1 ) than<br />

in A (lower left, range 2 1.77 3 10 2 4 to 1 1.16 3 10 2 4 km day 2 1 ).


874 Journal of Marine Research [57, 6<br />

eastward throughout most of <strong>the</strong> interior ocean. The strongest upwelling occurs at <strong>the</strong><br />

subtropical western boundary (as in A) but <strong>the</strong> strongest downwelling occurs in <strong>the</strong><br />

nor<strong>the</strong>astern region of unsteady convection, where <strong>the</strong> <strong>the</strong> horizontal ow converges<br />

(Fig. 3, lower right). Below <strong>the</strong> <strong>the</strong>rmocline, solution B differs strikingly from A. The<br />

sinking along <strong>the</strong> nor<strong>the</strong>rn boundary penetrates <strong>the</strong> deep ocean (Figure 4, lower right),<br />

driving a westward owing nor<strong>the</strong>rn boundary layer and a southward owing deep western<br />

boundary current (Fig. 4, upper right). Because <strong>the</strong> transport in <strong>the</strong> deep western boundary<br />

current exceeds <strong>the</strong> Sverdrup transport in <strong>the</strong> subpolar gyre, <strong>the</strong> surface ow is actually<br />

northward in <strong>the</strong> subpolar western boundary layer (Figure 3, upper right). The downwelling<br />

along <strong>the</strong> nor<strong>the</strong>rn boundary in B is balanced by a deep upwelling (and corresponding<br />

poleward ow) that, in contrast to A, covers nearly <strong>the</strong> whole interior ocean (Fig. 4,<br />

lower right). This deep upwelling produces a much sharper internal boundary layer in B<br />

than in A; see Figures 5 and 6. In overall summary, <strong>the</strong> <strong>the</strong>rmohaline circulation appears to<br />

be unrealistically strong in solution B and unrealistically weak in A, but <strong>the</strong> two solutions<br />

show many of <strong>the</strong> features anticipated by <strong>the</strong> classical <strong>the</strong>ories of ocean circulation.<br />

In solution C, <strong>the</strong> addition of <strong>the</strong> convective adjustment (6.5) with an adjustment time<br />

t c 5 5 days removes most of <strong>the</strong> unsteady convective motions but has relatively little o<strong>the</strong>r<br />

effect on <strong>the</strong> ow. In fact, pictures of solution C closely resemble time-averages of B.<br />

Figure 7 shows <strong>the</strong> minimum and maximum Vaisala frequency N at each horizontal<br />

location in solutions B and C. Figure 8 shows a section of N from south to north along x 5<br />

2L/3. We take N as positive if N 2 . 0, and we de ne N to be a negative real number if N 2 ,<br />

0. Thus <strong>the</strong> hatched regions in Figures 7 and 8 correspond to regions of static instability.<br />

We see that <strong>the</strong> convective adjustment reduces <strong>the</strong> amplitude and extent of static instability,<br />

but produces signi cant noise on <strong>the</strong> scale of <strong>the</strong> lattice. When <strong>the</strong> time scale t c for<br />

convective adjustment was reduced from 5 days to 1 day (to make <strong>the</strong> adjustment almost<br />

instantaneous), this noise reached an unacceptable level. From Figures 5B and 5C we see<br />

that <strong>the</strong> region of active convection in B becomes a region of nearly vertical isobuoyancy<br />

lines in C. However, this seems to be <strong>the</strong> only signi cant difference between C and time<br />

averages of B. Thus convective adjustment seems both harmful and unnecessary when <strong>the</strong><br />

model can resolve its own convection.<br />

The LB model differs from conventional primitive equation models in that it does not<br />

impose hydrostatic balance. We test for hydrostatic balance by computing <strong>the</strong> quantity<br />

µ ;<br />

H<br />

f 0 UL * f z 2 u * , (6.6)<br />

where U 5 1 km day 2 1 is <strong>the</strong> scale for horizontal velocity. If <strong>the</strong> ow is hydrostatic, µ ½ 1.<br />

In <strong>the</strong> homogeneous solution depicted in Figure 2, <strong>the</strong> eld of µ at mid-depth has a<br />

maximum of 2.5 3 10 2 3 , thus, as expected, <strong>the</strong> homogeneous solution is hydrostatic. In<br />

solutionA, <strong>the</strong> strati ed solution heated from above and cooled from below, <strong>the</strong> mid-depth<br />

µ shows a maximum of only 0.023; solution A is also hydrostatic. Solutions B and C, with


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

875<br />

Figure 5. South-north sections of buoyancy at mid-basin, x 5 L/2, in solutions A, B and C. The<br />

maximum and minimum values are given in sigma units. The convective adjustment in C causes<br />

<strong>the</strong> iso-buoyancy lines to become vertical in regions where solution B is statically unstable but<br />

produces little o<strong>the</strong>r effect.<br />

surface cooling, showed signi cant departures from hydrostatic balance but only in a<br />

narrow region near <strong>the</strong> nor<strong>the</strong>rn boundary, where µ attained respective maxima of 1.01 and<br />

0.28. In summary <strong>the</strong>n, <strong>the</strong> solutions of <strong>the</strong> LB model are hydrostatic almost everywhere,<br />

despite <strong>the</strong> arti cial enhancement of inertia and friction in <strong>the</strong> vertical momentum<br />

equation. Signi cant departures from hydrostatic balance occur only in <strong>the</strong> regions of<br />

strong static instability.


876 Journal of Marine Research [57, 6<br />

Figure 6. East-west sections of buoyancy (sigma units) in <strong>the</strong> subtropical gyre at y 5 L/3, in<br />

solutions A, B, and C. The deep upwelling required to balance <strong>the</strong> sinking of cold water near <strong>the</strong><br />

nor<strong>the</strong>rn boundaryproducesa much sharper <strong>the</strong>rmoclinein B and C, but <strong>the</strong> convective adjustment<br />

present in C has little effect on <strong>the</strong> subtropicalgyre.<br />

7. Discussion<br />

The most attractive feature of <strong>the</strong> lattice <strong>Boltzmann</strong> method is its stark simplicity. The 6<br />

steps of <strong>the</strong> LB algorithm, summarized in (5.1–7), are easy to code and easy to check for<br />

errors. Even more signi cantly—although I have not taken advantage of this yet—<strong>the</strong>se<br />

steps are massively parallel. The parallelism re ects <strong>the</strong> philosophy of LB that all <strong>the</strong><br />

physics is local. Never<strong>the</strong>less, it is easy to foresee that numerical ocean circulation models<br />

will eventually blend LB methodology with more conventional methods based on nite


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

877<br />

Figure 7. The minimum (top) and maximum (bottom) Vaisala frequency N in <strong>the</strong> water column in<br />

solutions B (left) and C (right). These two solutions differ only in <strong>the</strong> presence of <strong>the</strong> convective<br />

adjustment in C. In B, <strong>the</strong> minimum N (top left) varies between 2 2.25 and 1 .365 cycles per hour<br />

(cph) with negative values (corresponding to hatched regions on <strong>the</strong> gure) denoting static<br />

instability. Convective adjustment reduces static instability—<strong>the</strong> minimum N varies between<br />

2 .543 and 1 .361 cph in solution C (upper left)—but introduces a signi cant noise on <strong>the</strong> lattice<br />

scale. The maximum N in <strong>the</strong> water column is very similar in <strong>the</strong> two solutions. Its range in B<br />

(lower left) is 1 .487 to 1 2.84 cph; its range in C (lower right) is 1 .486 to 1 2.96 cph.<br />

differences, combining <strong>the</strong> stability and efficiency of <strong>the</strong> former with <strong>the</strong> greater exibility<br />

of <strong>the</strong> latter.<br />

The present application adheres almost completely to <strong>the</strong> LB philosophy that <strong>the</strong><br />

interactions between particles be purely local.A strict adherence to this philosophyseemed<br />

appropriate in this initial application of <strong>the</strong> method to 3-dimensional ocean circulation, and<br />

it led almost inevitably to <strong>the</strong> enhancement of inertia and friction in <strong>the</strong> vertical momentum<br />

equation associated with small aspect ratio. The effects of this enhancement, especially <strong>the</strong>


878 Journal of Marine Research [57, 6<br />

Figure 8. The Vaisala frequency N in a south-north section at x 5 2L/3 in a snapshot of solution B<br />

(top, range 2 .448 to 1 .652 cycles per hour), <strong>the</strong> time-average of B over 37 years (middle, 2 .451<br />

to 1 .643 cph), and in solution C (bottom, 2 .105 to 1 .666 cph). Negative values, denoting static<br />

instability, correspondto hatched regions on <strong>the</strong> gure.<br />

ability to resolve upwelling boundary layers and unsteady convection, seem wholly<br />

bene cial. This is a strategy that could, and perhaps should, be applied to more conventional<br />

models. However, it is possible, even within <strong>the</strong> philosophy of LB, to adopt a<br />

completely different strategy, and regard all <strong>the</strong> particles in a vertical column as ‘‘internal<br />

variables’’ at <strong>the</strong> same location. In this approach, <strong>the</strong> physics of <strong>the</strong> vertical momentum<br />

equation is contained within <strong>the</strong> rules for <strong>the</strong> collisions between particles at <strong>the</strong> same<br />

horizontal location, and hydrostatic balance could even be regarded as a ‘‘conservation<br />

law’’ to be respected by <strong>the</strong> collisions. The collisions would thus represent a kind of


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

879<br />

‘‘meta’’ convective adjustment, whose precise form would undoubtedly require much<br />

investigation.<br />

S99 offered 2 conjectures which must now be retracted. The rst was that a 7-velocity<br />

model, <strong>the</strong> 3-dimensional analogue of <strong>the</strong> 4-velocity model described in Section 5 of S99,<br />

would prove adequate for solutions of <strong>the</strong> 3-dimensional planetary geostrophic equations<br />

despite <strong>the</strong> peculiar, anisotropic friction of <strong>the</strong> 7-velocity model. Unfortunately, solutions<br />

of <strong>the</strong> 7-velocity model were found to contain spurious oscillations which could, in<br />

hindsight, be attributed to <strong>the</strong> form of <strong>the</strong> friction. S99 also conjectured that a 27-velocity<br />

model would be required to simulate Navier-Stokes viscosity in 3 dimensions. However,<br />

solutions of <strong>the</strong> 27-velocity model were found to be virtually identical to solutions of <strong>the</strong><br />

15-velocity model described in this paper.<br />

The incorporation of realistic bathymetry is <strong>the</strong> biggest remaining challenge in <strong>the</strong><br />

development of an LB ocean circulation model. Although <strong>the</strong> LB method may be extended<br />

to wholly irregular lattices, it loses much of its appeal, and computer storage requirements<br />

quickly become prohibitive. The better strategy is to retain <strong>the</strong> regular lattice, and to<br />

incorporate realistic bathymetry into <strong>the</strong> rules governing particle collisions with <strong>the</strong> ocean<br />

bottom. Since <strong>the</strong> lattice points along <strong>the</strong> ocean bottom constitute a ‘‘subset of zero<br />

measure’’ of <strong>the</strong> set of all lattice points, <strong>the</strong> relatively complicated collision rules required<br />

to simulate arbitrary bottom topography do not harm <strong>the</strong> efficiency of <strong>the</strong> LB method.<br />

Preliminary experiments with smooth bottom topography give excellent results.<br />

Acknowledgments. This work was supported by <strong>the</strong> National Science Foundation, grant OCE-<br />

9521004. I thank George Veronis for his comments, Breck Betts for his help with <strong>the</strong> gures, and<br />

Larisa Salmon for her constructionof a cardboard model.<br />

Derivation of <strong>the</strong> viscosity<br />

APPENDIX A<br />

(0)<br />

To consistent order, we may solve <strong>the</strong> rst order approximation, G nmk 5 0, to (2.21) for<br />

eq<br />

D nmk r nmk<br />

(1)<br />

5 2 r nmk<br />

(A.1)<br />

eq<br />

and use (A.1) to eliminate r nmk<br />

becomes<br />

(1)<br />

G nmk 5 2<br />

from <strong>the</strong> second order expression (2.23), which <strong>the</strong>n<br />

D t<br />

2 D (1) (1)<br />

nmkr nmk 1 e D nmk r nmk 1 e r nmk<br />

(2) . (A.2)<br />

The conservation relations (2.24) imply (2.30) and<br />

onmk<br />

(1)<br />

c nmk,a G nmk 5 1 e 2<br />

D t<br />

2 2 onmk<br />

(1)<br />

c nmk,a D nmk r nmk 5 1 e 2<br />

D t<br />

2 2<br />

x b<br />

onmk<br />

c nmk,a c nmk,b r nmk<br />

(1) . (A.3)


1<br />

1<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

880 Journal of Marine Research [57, 6<br />

Repeated Greek subscripts are summed from 1 to 3. To consistent order, we may use (A.1)<br />

again to express (A.3) solely in terms of <strong>the</strong> equilibrium densities. Thus<br />

onmk<br />

(1)<br />

c nmk,a G<br />

nmk<br />

5 2 1 e 2<br />

5 2<br />

1<br />

e 2<br />

5 2<br />

1<br />

e 2<br />

D t<br />

2 2<br />

D t<br />

2 2<br />

D t<br />

2 2 1<br />

x b<br />

onmk<br />

eq<br />

c nmk,a c nmk,b D nmk r<br />

nmk<br />

<br />

eq<br />

x b<br />

1<br />

c<br />

t nmk,a c nmk,b r<br />

nmk<br />

1<br />

onmk<br />

x b t P a b 1<br />

x b<br />

x g<br />

onmk<br />

x g<br />

onmk<br />

eq<br />

c nmk,a c nmk,b c nmk,g r<br />

nmk2<br />

c nmk,a c nmk,b c nmk,g B nmk<br />

1<br />

n u c h<br />

1 m v c h<br />

1 k w c v<br />

2 2<br />

(A.4)<br />

a 5 where we have used (2.20), (2.26) and (2.10). Suppose 1. Then, using (2.17) and<br />

(2.27a), (A.4) becomes<br />

onmk<br />

(1)<br />

c nmk,1 G nmk 5 2<br />

1<br />

e 2<br />

1<br />

c h<br />

2<br />

1<br />

c v<br />

2<br />

D t<br />

2 2 5<br />

2<br />

2 v<br />

x b x g<br />

2 w<br />

x b x g<br />

c h<br />

2<br />

3<br />

onmk<br />

onmk<br />

Using (2.4) and (2.11–13), we nd that<br />

x = · v 1 1<br />

c h<br />

2<br />

2<br />

u<br />

x b x g<br />

onmk<br />

c nmk,1 c nmk,b c nmk,g c nmk,2 B nmk<br />

c nmk,1 c nmk,b c nmk,g c nmk,3 B nmk<br />

6<br />

.<br />

c nmk,1 c nmk,b c nmk,g c nmk,1 B nmk<br />

(A.5)<br />

1 2<br />

u<br />

c h<br />

2<br />

x b x g<br />

onmk<br />

c nmk,1 c nmk,b c nmk,g c nmk,1 B nmk 5 c h 2 u xx 1<br />

1<br />

3 c h 2 u yy 1<br />

1<br />

3 c v 2 u zz . (A.6)<br />

Similarly,<br />

1 2 v<br />

c h<br />

2<br />

x b x g<br />

onmk<br />

c nmk,1 c nmk,b c nmk,g c nmk,2 B nmk 5<br />

2<br />

3 c h 2 v xy (A.7)<br />

and<br />

1 2 w<br />

c v<br />

2<br />

x b x g<br />

onmk<br />

c nmk,1 c nmk,b c nmk,g c nmk,3 B nmk 5<br />

2<br />

3 c h 2 w xz . (A.8)<br />

Substituting (A.6–8) into (A.5), we obtain<br />

onmk<br />

(1)<br />

c nmk,1 G<br />

nmk<br />

5 2 1 e 2<br />

D t<br />

2 2<br />

1<br />

3 (c h 2 u xx 1 c h 2 u yy 1 c v 2 u zz 1 c h 2 (= 3 · v) x ). (A.9)


1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

881<br />

Proceeding in a similar manner, we nd that<br />

onmk<br />

(1)<br />

c nmk,2 G nmk 5 2 1 e 2<br />

D t<br />

2 2<br />

1<br />

3 (c h 2 v xx 1 c h 2 v yy 1 c v 2 v zz 1 c h 2 (= 3 · v) y ) (A.10)<br />

and<br />

onmk<br />

(1)<br />

c nmk,3 G<br />

nmk<br />

5 2 1 e 2<br />

D t<br />

2 2<br />

1<br />

3 (c h 2 w xx 1 c h 2 w yy 1 c v 2 w zz 1 c v 2 (= 3 · v) z ). (A.11)<br />

=<br />

r 5 2 =<br />

In many applications of Navier-Stokes <strong>the</strong>ory, <strong>the</strong> 3 · v term is negligible. However, <strong>the</strong><br />

transient LB dynamics has signi cant compressibility. Substituting t 3 · v into<br />

(A.9–11), we obtain (2.31).<br />

Derivation of <strong>the</strong> buoyancy equation<br />

APPENDIX B<br />

We derive (3.8) in a manner very similar to <strong>the</strong> derivation of (2.32). Expanding (3.3) in<br />

D t, and substituting<br />

where now e 5 L<br />

2 1<br />

, we obtain<br />

where<br />

u i 5 u<br />

i eq 1 e u<br />

i (1) 1 e 2<br />

u<br />

i (2) 1 · · · (B.1)<br />

g i (0) 1 g i (1) 1 · · · 5 0, (B.2)<br />

g<br />

i (0) ;<br />

D i u eq i<br />

1 u<br />

i (1) (B.3)<br />

contains all <strong>the</strong> rst order terms, and<br />

g i (1) ;<br />

D t<br />

2 D i 2 u i eq 1 e D i u i (1) 1 e u i (2) (B.4)<br />

contains all <strong>the</strong> terms of order D t or e . Here,<br />

D i ;<br />

<br />

t 1<br />

c ia<br />

x a<br />

(B.5)<br />

is <strong>the</strong> advection operator in <strong>the</strong> direction of <strong>the</strong> i-th particle, with c ia 5 c i · e a , and repeated<br />

Greek subscripts are summed from 1 to 3. We obtain <strong>the</strong> evolution equation for u by<br />

applying S i to (B.2). Since (B.1) and (3.5) imply<br />

o<br />

i<br />

u i (1) 5<br />

o<br />

i<br />

u i (2) 5 0, (B.6)


882 Journal of Marine Research [57, 6<br />

we obtain<br />

o<br />

i<br />

g i (0) 5<br />

u<br />

1 =<br />

t<br />

· (u v). (B.7)<br />

Since (B.2–3) implies<br />

at leading order, we have <strong>the</strong> consistent order approximation<br />

D i u<br />

i eq 5 2 u<br />

i (1) (B.8)<br />

g<br />

i (1) 5 1 e 2<br />

D t<br />

2 2 D i u<br />

i (1) 1 e u<br />

i (2) . (B.9)<br />

Hence, using (B.6),<br />

o<br />

i<br />

g i (1) 5 1 e 2<br />

D t<br />

2 2 o<br />

i<br />

D i u i (1) 5 1 e 2<br />

D t<br />

2 2<br />

x a<br />

o<br />

i<br />

c ia u i (1) .<br />

(B.10)<br />

Using (B.8) again and (3.6), this becomes<br />

o<br />

i<br />

g<br />

i (1) 5 2 1 e 2<br />

5 2<br />

1<br />

e 2<br />

5 2<br />

1<br />

e 2<br />

D t<br />

2 2<br />

D t<br />

2 2<br />

x a<br />

o<br />

i<br />

c ia D i u<br />

i eq<br />

<br />

x a<br />

1 t (u v a ) 1<br />

x b<br />

o<br />

i<br />

D t<br />

2 2 5<br />

= 3 · <br />

2<br />

t (u v) 1 c h <br />

3 1<br />

2 u<br />

x 1 2<br />

c ia c ib u<br />

i eq 2<br />

2 u<br />

y 22 1<br />

c v<br />

2<br />

3<br />

2 u<br />

z 26 .<br />

Thus by (B.7) and (B.11), <strong>the</strong> i-summation of (B.2) is equivalent to (3.8).<br />

(B.11)<br />

APPENDIX C<br />

Higher order terms arising from buoyancy force<br />

Since <strong>the</strong> generalization (3.11) of <strong>the</strong> equilibrium densities satis es (2.14–15), (2.24)<br />

still apply. Hence (2.22) and <strong>the</strong> horizontal components of (2.26) are unchanged. The<br />

vertical component of (2.26) acquires <strong>the</strong> term 2 d 2<br />

u . At <strong>the</strong> next order, (2.30) still holds<br />

but (2.31) does not; in <strong>the</strong> last line of (A.4), <strong>the</strong> term<br />

2 P 33<br />

z t 5<br />

d 2 <br />

t (f z 2 u ) (C.1)<br />

by (3.12–13). The latter term contributes <strong>the</strong> u t-term to (3.14).


5<br />

5<br />

1<br />

1<br />

1999] Salmon: <strong>Lattice</strong> <strong>Boltzmann</strong> solutions<br />

883<br />

APPENDIX D<br />

Proof that (4.14) corresponds to Coriolis force<br />

We expand (4.14) in D t, keeping terms of rst and second order. Remembering that<br />

A a b 5 O(D t), we have, to consistent order,<br />

1 D tD nmk 1<br />

1<br />

2 (D t)2 2<br />

D nmk 2 r nmk<br />

B nmk<br />

2<br />

c h<br />

c nmk,a A a b<br />

o<br />

rsp<br />

c rsp,b r rsp 1<br />

· 5<br />

r rsp 1 D t(c nmk 2 c rsp ) · = r rsp 1<br />

B nmk<br />

c h<br />

2<br />

c nmk,a A a b<br />

B rsp<br />

o c rsp,b<br />

rsp<br />

c c 2 rsp,g A g d<br />

h<br />

o c abd,d r abd6<br />

abd<br />

(D.1)<br />

B nmk<br />

c h<br />

2<br />

c nmk,a D t(c nmk · = A a b ) o<br />

rsp<br />

c rsp,b r rsp<br />

where all quantities are evaluated at (x, t) and repeated Greek indices are summed from 1<br />

to 2 only (because A a b has only horizontal components). That is,<br />

1 D tD nmk 1<br />

1<br />

2 (D t)2 2<br />

D nmk 2 r nmk 5<br />

B nmk<br />

c h<br />

2<br />

2B nmk<br />

c<br />

2 nmk,a<br />

c h<br />

A a b u b<br />

c nmk,a 5 D t 1 c nmk · = (A a b u b ) 2 A a b<br />

f<br />

x b<br />

2 1 A a b A b d u d 6<br />

(D.2)<br />

where we have used (2.5–6), (2.28) and<br />

o<br />

rsp<br />

B rsp c rsp,b c rsp,g 5 c h 2 d b g . (D.3)<br />

Substituting from (4.8), we obtain, to consistent order,<br />

1 D tD nmk 1<br />

1<br />

2 (D t)2 2<br />

D nmk 2 r nmk<br />

2B nmk<br />

c h<br />

2<br />

c nmk,a 3<br />

f D t<br />

2 e a b 2<br />

( f D t) 2<br />

d a b<br />

8 4 u b 1<br />

B nmk<br />

c h<br />

2<br />

c nmk,a<br />

(D t) 2<br />

2<br />

(D.4)<br />

· 5 e a b 1 c nmk · = ( fu b ) 2 f f<br />

x b<br />

2 1<br />

1<br />

2 f 2 e a b e b d u d 6 .


1<br />

1<br />

884 Journal of Marine Research [57, 6<br />

Using e a b e b d 5 2 d a d and combining terms, this is<br />

1 D tD nmk 1<br />

1<br />

2 (D t)2 2<br />

D nmk 2 r nmk 5<br />

2B nmk<br />

c h<br />

2<br />

c nmk,a 3<br />

B nmk<br />

c h<br />

2<br />

f D t<br />

2 e a b 2<br />

(D t) 2<br />

2<br />

( f D t) 2<br />

d a b<br />

4 4 u b<br />

c nmk,a e a b 1 c nmk · = ( fu b ) 2 f f<br />

x b<br />

2 .<br />

(D.5)<br />

The last line in (D.5) contributes at <strong>the</strong> second order. Thus we may consistently substitute<br />

<strong>the</strong> leading order momentum equation into <strong>the</strong> last term as follows:<br />

c nmk · = ( fu b ) 2<br />

f f<br />

x b<br />

5 D nmk ( fu b ) 2 f 1<br />

u b<br />

t<br />

< D nmk ( fu b ) 2 f 2 e b g u g .<br />

f<br />

x b<br />

2<br />

(D.6)<br />

Replacing <strong>the</strong> last paren<strong>the</strong>ses in (D.5) by <strong>the</strong> nal expression in (D.6) and cancelling some<br />

terms, we obtain an equation equivalent to (4.4) with F a 5 f e a b u b .<br />

REFERENCES<br />

Benzi, R., S. Succi and M. Vergassola. 1992. The lattice <strong>Boltzmann</strong>-equation—<strong>the</strong>ory and applications.<br />

Phys. Rep., 222, 145–197.<br />

Cessi, P. 1996. Grid-scale instability of convective-adjustment schemes. J. Mar. Res., 54, 407–420.<br />

Cessi, P. and W. R. Young. 1996. Some unexpected consequences of <strong>the</strong> interaction between<br />

convective adjustment and horizontal diffusion. Physica D, 98, 287–300.<br />

Chen, S. and G. D. Doolen. 1998. <strong>Lattice</strong> <strong>Boltzmann</strong> method for uid ows. Ann. Rev. Fluid Mech.,<br />

30, 329–364.<br />

Chen, S. Y., Z. Wang, X. W. Chan and G. D. Doolen. 1992. <strong>Lattice</strong> <strong>Boltzmann</strong> computational uid<br />

dynamics in three dimensions. J. Stat. Phys., 68, 379–400.<br />

He, Xiaoyi and Li-Shi Luo. 1997. Theory of <strong>the</strong> lattice <strong>Boltzmann</strong> method: From <strong>the</strong> <strong>Boltzmann</strong><br />

equation to <strong>the</strong> lattice <strong>Boltzmann</strong> equation. Phys. Rev. E, 56, 6811–6817.<br />

Huck, T., A. J. Weaver and A. Colin de Verdière. 1999. <strong>On</strong> <strong>the</strong> in uence of <strong>the</strong> parameterization of<br />

lateral boundary layers on <strong>the</strong> <strong>the</strong>rmohaline circulation in coarse-resolutionocean models. J. Mar.<br />

Res., 57, 387–426.<br />

Pedlosky, J. 1968. An overlooked aspect of <strong>the</strong> wind-driven ocean circulation. J. Fluid Mech., 32,<br />

809–821.<br />

—— 1969. Linear <strong>the</strong>ory of <strong>the</strong> circulation of a strati ed ocean. J. Fluid Mech., 35, 185–205.<br />

Qian, Y. H., D. d’Humieres and P. Lallemand. 1992. <strong>Lattice</strong> BGK models for Navier-Stokes equation.<br />

Europhys. Lett., 17, 479–484.<br />

Rothman, D. H. and S. Zaleski. 1997. <strong>Lattice</strong>-Gas Cellular Automata: Simple Models of Complex<br />

Hydrodynamics,Cambridge, 297 pp.<br />

Salmon, R. 1998. Lectures on Geophysical Fluid Dynamics, Oxford, 378 pp.<br />

—— 1999. [S99] The lattice <strong>Boltzmann</strong> method as a basis for ocean circulation modeling. J. Mar.<br />

Res., 57, 503–535.<br />

Received: 25 October, 1999; revised: 6 December, 1999.


An interpretation and derivation of <strong>the</strong> lattice <strong>Boltzmann</strong> method using Strang<br />

splitting<br />

Paul J. Dellar<br />

OCIAM, Ma<strong>the</strong>matical Institute, 24-29 St Giles’, Oxford, OX1 3LB, UK<br />

Abstract<br />

The lattice <strong>Boltzmann</strong> space/time discretisation, as usually derived from integration along characteristics, is shown to<br />

correspond to a Strang splitting between decoupled streaming and collision steps. Strang splitting offers a second-order<br />

accurate approximation to evolution under <strong>the</strong> combination of two non-commuting operators, here identified with <strong>the</strong><br />

streaming and collision terms in <strong>the</strong> discrete <strong>Boltzmann</strong> partial differential equation. Strang splitting achieves secondorder<br />

accuracy through a symmetric decomposition in which one operator is applied twice for half timesteps, and <strong>the</strong><br />

o<strong>the</strong>r is applied once for a full timestep. We show that a natural definition of a half timestep of collisions leads to <strong>the</strong><br />

same change of variables that was previously introduced using different reasoning to obtain a second-order accurate and<br />

explicit scheme from an integration of <strong>the</strong> discrete <strong>Boltzmann</strong> equation along characteristics. This approach extends<br />

easily to include general matrix collision operators, and also body forces. Finally, we show that <strong>the</strong> validity of <strong>the</strong> lattice<br />

<strong>Boltzmann</strong> discretisation for grid-scale Reynolds numbers larger than unity depends crucially on <strong>the</strong> use of a Crank–<br />

Nicolson approximation to discretise <strong>the</strong> collision operator. Replacing this approximation with <strong>the</strong> readily available exact<br />

solution for collisions uncoupled from streaming leads to a scheme that becomes much too diffusive, due to <strong>the</strong> splitting<br />

error, unless <strong>the</strong> grid-scale Reynolds number remains well below unity.<br />

Key words:<br />

lattice <strong>Boltzmann</strong> methods, operator splitting, Strang splitting, variable transformations<br />

1. Introduction<br />

The lattice <strong>Boltzmann</strong> approach to simulating hydrodynamics recovers <strong>the</strong> Navier–Stokes equations from a large<br />

system of algebraic equations of <strong>the</strong> form<br />

∆t<br />

f i (x + ξ i ∆t, t + ∆t) − f i (x, t) = −<br />

τ + ∆t/2<br />

(<br />

f i (x, t) − f (0)<br />

i<br />

(x, t) ) , (1)<br />

for i = 0, . . . , n. The dependent variables f i are defined at a discrete set of spatial points x and equally spaced time levels<br />

t separated by a timestep ∆t. The points x form a regular lattice L such that x + ξ i ∆t ∈ L whenever x ∈ L. The vectors<br />

ξ i thus join nearby points of <strong>the</strong> lattice. The quantities f (0)<br />

i<br />

are local functions of all <strong>the</strong> f i at <strong>the</strong> same point x and time t.<br />

The parameter τ controls <strong>the</strong> viscosity of <strong>the</strong> Navier–Stokes equations recovered from (1).<br />

A useful intermediary between <strong>the</strong> lattice <strong>Boltzmann</strong> equation (1) with its discrete space-time points and <strong>the</strong> Navier–<br />

Stokes equations is <strong>the</strong> discrete <strong>Boltzmann</strong> equation<br />

∂ t f i + ξ i · ∇ f i = − 1 τ<br />

( )<br />

fi − f (0)<br />

i , (2)<br />

which is a partial differential equation for functions f i of continuous space and time coordinates. The discreteness of<br />

<strong>the</strong> discrete <strong>Boltzmann</strong> equation lies only in <strong>the</strong> restriction of <strong>the</strong> velocity variable ξ, which is a continuous variable in<br />

<strong>the</strong> classical kinetic <strong>the</strong>ory of gases, to a finite set {ξ 0 , . . . , ξ n }. The Navier–Stokes equations may be derived from <strong>the</strong><br />

discrete <strong>Boltzmann</strong> equation by seeking solutions that vary slowly compared with <strong>the</strong> natural timescale τ of <strong>the</strong> collision<br />

operator on <strong>the</strong> right hand side of (2). This derivation may be achieved using <strong>the</strong> same Chapman–Enskog expansion that<br />

is employed in <strong>the</strong> classical kinetic <strong>the</strong>ory of gases [1].<br />

The remaining step in <strong>the</strong> derivation of <strong>the</strong> Navier–Stokes equations from <strong>the</strong> lattice <strong>Boltzmann</strong> equation is to determine<br />

<strong>the</strong> relation between <strong>the</strong> latter and <strong>the</strong> discrete <strong>Boltzmann</strong> equation. The more common approach, following that<br />

used previously for lattice gas cellular automata [2, 3] is to take <strong>the</strong> fully discrete system (1) as a starting point, and <strong>the</strong>n<br />

derive (2) from a Taylor expansion of <strong>the</strong> f i in x and t around a reference point. A detailed exposition may be found in<br />

[4].<br />

Alternatively, one may adopt <strong>the</strong> discrete <strong>Boltzmann</strong> equation as <strong>the</strong> starting point, and derive <strong>the</strong> lattice <strong>Boltzmann</strong><br />

equation through a fur<strong>the</strong>r discretisation of x and t. A particularly attractive approach recognises that <strong>the</strong> left hand side<br />

(∂ t +ξ i·∇) f i of <strong>the</strong> discrete <strong>Boltzmann</strong> equation corresponds to a derivative along a characteristic, so a natural discretisation<br />

Preprint submitted to Computers and Ma<strong>the</strong>matics with Applications December 12, 2010


follows from integration along characteristics [5, 6]. This approach shows that (1) may be derived as a second-order<br />

accurate discretisation of (2) in ∆t and ∆x, provided one replaces <strong>the</strong> dependent variables f i with f i = f i + O(∆t). The<br />

statement of second-order accuracy refers to <strong>the</strong> so-called acoustic scaling of ∆t and ∆x, in which <strong>the</strong> lattice velocity<br />

c = ∆x/∆t remains order unity. This derivation also justifies <strong>the</strong> replacement of <strong>the</strong> collision time τ in <strong>the</strong> PDE with<br />

τ + ∆t/2 in <strong>the</strong> discrete system. An equivalent modification of <strong>the</strong> collision time is also necessary in <strong>the</strong> Taylor expansion<br />

route from (2) to (1). <strong>On</strong>e may also explore <strong>the</strong> relation between (1) and (2) use a different scaling, known as <strong>the</strong><br />

diffusive scaling, in which ∆x ∼ ɛL and ∆t ∼ ɛ 2 T in terms of a macroscopic lengthscale L, timescale T, and expansion<br />

parameter ɛ [7, 8]. This scaling leads directly to <strong>the</strong> incompressible Navier–Stokes equations, because <strong>the</strong> lattice velocity<br />

c ∼ ɛ −1 (L/T) goes to infinity as ɛ → 0. In terms of standard dimensionless groups, <strong>the</strong> acoustic scaling corresponds to<br />

taking <strong>the</strong> Reynolds number to infinity at fixed Mach number, while <strong>the</strong> diffusive scaling takes <strong>the</strong> Mach number to zero<br />

at fixed Reynolds number.<br />

In this paper we present an alternative derivation of <strong>the</strong> lattice <strong>Boltzmann</strong> equation from <strong>the</strong> discrete <strong>Boltzmann</strong> equation<br />

that uses Strang [9] splitting to combine separate discretisations of <strong>the</strong> uncoupled advection and collision terms into a<br />

second-order accurate overall scheme under <strong>the</strong> acoustic scaling. Besides offering fur<strong>the</strong>r insight into <strong>the</strong> somewhat subtle<br />

relation between (1) and (2) this derivation using Strang splitting is instructive when one wishes to include additional<br />

terms, perhaps involving explicit finite difference approximations, while retaining overall second-order accuracy. The relation<br />

between (1) and (2) is subtle because connections between <strong>the</strong>m are almost invariably derived using approximations<br />

that are valid for ∆t ≪ τ, yet <strong>the</strong> results are relied upon to justify a numerical scheme that is frequently employed with<br />

∆t ≫ τ. The continued validity of <strong>the</strong> numerical scheme in this regime depends crucially on <strong>the</strong> use of a Crank–Nicolson<br />

approximation for <strong>the</strong> collision term, and <strong>the</strong> interaction between <strong>the</strong> resulting temporal truncation error and <strong>the</strong> splitting<br />

error associated with Strang splitting, as illustrated in sections 8 and 9 below. Replacing <strong>the</strong> Crank–Nicolson approximation<br />

with <strong>the</strong> readily available exact solution for <strong>the</strong> uncoupled collision term leads to a numerical scheme that is unable<br />

to reach grid-scale Reynolds numbers above unity due to excessive numerical viscosity in <strong>the</strong> ∆t ≫ τ regime.<br />

2. Derivation by integration along characteristics<br />

Following <strong>the</strong> approach of He et al. [5, 6] we rewrite <strong>the</strong> discrete <strong>Boltzmann</strong> equation (2) as<br />

d<br />

ds f i(x + ξ i s, t + s) = − 1 (<br />

fi (x + ξ<br />

τ<br />

i s, t + s) − f (0)<br />

i<br />

(x + ξ i s, t + s) ) , (3)<br />

where <strong>the</strong> left hand side is a total derivative along <strong>the</strong> characteristic (x ′ , t ′ ) = (x + ξ i s, t + s) parametrised by s. Integrating<br />

both sides along this characteristic from s = 0 to s = ∆t gives<br />

f i (x + ξ i ∆t, t + ∆t) − f i (x, t) =<br />

∫ ∆t<br />

0<br />

C i (x + ξ i s, t + s) ds. (4)<br />

The left hand side integrates exactly to give <strong>the</strong> difference of <strong>the</strong> function values at ei<strong>the</strong>r end of <strong>the</strong> characteristic. The<br />

integrand on <strong>the</strong> right hand side of (4) is <strong>the</strong> collision term<br />

C i (x ′ , t ′ ) = − 1 τ<br />

Approximating this remaining integral by <strong>the</strong> trapezium rule gives<br />

(<br />

fi (x ′ , t ′ ) − f (0)<br />

i<br />

(x ′ , t ′ ) ) . (5)<br />

f i (x + ξ i ∆t, t + ∆t) − f i (x, t) = 1 2 ∆t ( C i (x + ξ i ∆t, t + ∆t) + C i (x, t) ) + O ( ∆t 3) . (6)<br />

However, C i (x + ξ i ∆t, t + ∆t) itself depends on <strong>the</strong> f i (x + ξ i ∆t, t + ∆t), and this dependence is typically nonlinear through<br />

<strong>the</strong> functional dependence of f (0)<br />

i<br />

on <strong>the</strong> moments<br />

ρ =<br />

n∑<br />

f i , ρu =<br />

i=0<br />

n∑<br />

ξ i f i , (7)<br />

that define <strong>the</strong> local fluid density ρ and fluid velocity u. Equation (6) <strong>the</strong>refore defines a coupled system for <strong>the</strong> f i at all<br />

gridpoints at time t + ∆t.<br />

He et al. [5, 6] obtained an explicit scheme by introducing a different set of variables<br />

i=0<br />

f i (x ′ , t ′ ) = f i (x ′ , t ′ ) + ∆t (<br />

fi (x ′ , t) − f (0)<br />

i<br />

(x ′ , t) ) . (8)<br />

2τ<br />

This definition was motivated by collecting all <strong>the</strong> terms that are evaluated at (x + ξ i ∆t, t + ∆t) in (6) and calling <strong>the</strong><br />

resulting combination f i (x + ξ i ∆t, t + ∆t). The previous implicit system (6) now becomes an explicit formula for <strong>the</strong> f i at<br />

time t + ∆t,<br />

∆t (<br />

f i (x + ξ i ∆t, t + ∆t) − f i (x, t) = − f<br />

τ + ∆t/2 i (x, t) − f (0)<br />

i<br />

(x, t) ) . (9)<br />

2


This formula is <strong>the</strong> well-known lattice <strong>Boltzmann</strong> algorithm. The collision time τ in <strong>the</strong> partial differential equation is<br />

replaced by τ + ∆t/2 in <strong>the</strong> numerical scheme. Moreover, <strong>the</strong> variables appearing in <strong>the</strong> lattice <strong>Boltzmann</strong> algorithm are<br />

not <strong>the</strong> original variables f i in <strong>the</strong> discrete <strong>Boltzmann</strong> PDE, but <strong>the</strong> transformed variables f i defined by (8).<br />

We <strong>the</strong>refore discard <strong>the</strong> f i and evolve <strong>the</strong> f i instead. However, we still need to evaluate ρ and u as <strong>the</strong>se quantities<br />

appear in <strong>the</strong> definition of f (0)<br />

i<br />

. Fortunately, <strong>the</strong>y are readily obtained from moments of <strong>the</strong> f i instead of moments of <strong>the</strong><br />

f i . Taking moments of (8) gives<br />

n∑ n∑<br />

n∑ n∑<br />

ρ = f i = f i , ρu = ξ i f i = ξ i f i , (10)<br />

on <strong>the</strong> assumption that <strong>the</strong> collision operator C i preserves mass and momentum,<br />

i=0<br />

i=0<br />

n∑<br />

C i = 0, and<br />

i=0<br />

i=0<br />

i=0<br />

n∑<br />

ξ i C i = 0. (11)<br />

O<strong>the</strong>r moments are not conserved by collisions, so <strong>the</strong>y are affected by <strong>the</strong> replacement of f i by f i . For example, <strong>the</strong><br />

deviatoric (non-equilibrium) stress is [10]<br />

3. Derivation using operator splitting<br />

i=0<br />

Π − Π (0) =<br />

Π − n∑<br />

Π(0)<br />

1 + ∆t/(2τ) , where Π = ξ i ξ i f i . (12)<br />

We now give an alternative derivation of <strong>the</strong> lattice <strong>Boltzmann</strong> equation based on operator splitting. We split <strong>the</strong><br />

discrete <strong>Boltzmann</strong> equation (2) into two parts, one for streaming and one for collisions,<br />

i=0<br />

∂ t f i = − 1 ( )<br />

fi − f (0)<br />

i , (13a)<br />

τ<br />

(∂ t + ξ i · ∇) f i = 0. (13b)<br />

As before, (13b) is readily discretised by recognising that it is a derivative along a characteristic. Equation (13a) may be<br />

discretised with second-order accuracy in ∆t using <strong>the</strong> Crank–Nicolson approach [11]<br />

f i (t + ∆t) − f i (t)<br />

∆t<br />

= − 1 2τ<br />

(<br />

fi (t + ∆t) + f i (t) − f (0)<br />

i<br />

(t + ∆t) − f (0)<br />

i<br />

(t) ) + O(∆t 3 ). (14)<br />

This is <strong>the</strong> same approximation that we used under <strong>the</strong> name “trapezium rule” to derive (6), except every quantity in (14)<br />

is evaluated at <strong>the</strong> same point x in space. The Crank–Nicolson approach is equivalent to integration in time using <strong>the</strong><br />

trapezium rule, while our earlier derivation of (6) used an integration along characteristics in space-time.<br />

The equilibrium f (0)<br />

i<br />

is unchanged by collisions, since it is a prescribed function of <strong>the</strong> collision invariants ρ and u, so<br />

we may put f (0)<br />

i<br />

(t + ∆t) = f (0)<br />

i<br />

(t) in (14). Equation (14) may <strong>the</strong>n be solved to obtain<br />

f i (t + ∆t) = f i (t) −<br />

∆t (<br />

fi (t) − f (0)<br />

i<br />

(t) ) , (15)<br />

τ + ∆t/2<br />

after neglecting <strong>the</strong> O(∆t 3 ) truncation error. The collision time τ in <strong>the</strong> differential equation (13a) has become τ + ∆t/2<br />

when we discretise, as in <strong>the</strong> standard lattice <strong>Boltzmann</strong> collision operator.<br />

We now define S and C as <strong>the</strong> solution operators for <strong>the</strong> streaming and collision steps. In particular, C is defined using<br />

(15) as<br />

∆t (<br />

C f i (x, t) = f i (x, t) − fi (x, t) − f (0)<br />

i<br />

(x, t) ) , (16)<br />

τ + ∆t/2<br />

and S is defined by<br />

The standard lattice <strong>Boltzmann</strong> scheme may thus be written as<br />

S f i (x, t) = f i (x − ξ i ∆t, t). (17)<br />

f i (x, t + ∆t) = S C f i (x, t), (18)<br />

where S and C are applied to some transformed variables f i instead of acting directly on <strong>the</strong> f i . The solution after many<br />

timesteps is given by<br />

f i (x, t + n∆t) = S C S C . . . S C f i (x, t), (19)<br />

with n repetitions of <strong>the</strong> pair S C. However, this simple alternation of <strong>the</strong> streaming and collision operators is only first<br />

order accurate in ∆t, due to <strong>the</strong> splitting error that arises from decomposing <strong>the</strong> single PDE (2) into <strong>the</strong> two parts.<br />

3


4. The lattice <strong>Boltzmann</strong> method as Strang splitting<br />

As second-order accurate approximation to <strong>the</strong> solution of <strong>the</strong> original PDE (2) is given by Strang splitting [9],<br />

f i (x, t + ∆t) = C 1/2 S C 1/2 f i (x, t), (20)<br />

where C 1/2 denotes <strong>the</strong> action of <strong>the</strong> collision operator for a timestep ∆t/2. The O(∆t 2 ) error after a single timestep<br />

from <strong>the</strong> simple splitting formula (18) is eliminated by replacing S C with <strong>the</strong> symmetric form C 1/2 S C 1/2 . Using <strong>the</strong><br />

interpretation of <strong>the</strong> solution operators for linear differential equations as exponentials of operators, <strong>the</strong> truncation error for<br />

<strong>the</strong>se various splittings may be analysed using <strong>the</strong> Baker–Cambell–Hausdorff and Zassenhaus formulae for <strong>the</strong> exponential<br />

of a sum of non-commuting operators. For example, we write <strong>the</strong> two half-equations (13a,b) schematically as<br />

∂ t f i = C f i , ∂ t f i = S f i , (21)<br />

where C denotes a linearised form of <strong>the</strong> BGK collision operator, like that introduced in (62) and (63) below. The solutions<br />

of <strong>the</strong>se two linear differential equations are <strong>the</strong>n given formally by<br />

f i (x, t) = e t C f i (x, 0), f i (x, t) = e t S f i (x, 0), (22)<br />

in terms of <strong>the</strong> exponentials of <strong>the</strong> C and S operators. We <strong>the</strong>n have C = exp(∆tC)+O(∆t 3 ), S = exp(∆tS), and <strong>the</strong> Strang<br />

splitting formula (20) is equivalent to <strong>the</strong> statement that<br />

e ∆t(C+S) = e (∆t/2)C e ∆tS e (∆t/2)C + O(∆t 3 ). (23)<br />

This equivalence only holds for linear operators C and S, but <strong>the</strong> resulting splitting formulae such as (20) are widely<br />

employed for nonlinear operators as well.<br />

Applying <strong>the</strong> Strang splitting formula (20) for n timesteps gives<br />

which simplies to<br />

f i (x, t + n∆t) = C 1/2 S C 1/2 C 1/2 S C 1/2 . . . C 1/2 S C 1/2 f i (x, t), (24)<br />

f i (x, t + n∆t) = C 1/2 S C S C . . . S C S C 1/2 f i (x, t), (25)<br />

after using C 1/2 C 1/2 = C to combine <strong>the</strong> intermediate stages. This now begins to resemble <strong>the</strong> standard lattice <strong>Boltzmann</strong><br />

algorithm in (19), apart from <strong>the</strong> C 1/2 operators in <strong>the</strong> first and last timesteps.<br />

The standard LB algorithm performs streaming first, followed by collisions, so we rewrite (25) as<br />

f i (x, t + n∆t) = C 1/2 S C S C . . . S C S C C −1/2 f i (x, t), (26)<br />

by expressing <strong>the</strong> first collision step as C 1/2 = C C −1/2 . We define a square root of <strong>the</strong> collision operator by<br />

This is equivalent to neglecting terms of O(∆t 2 ) and higher in <strong>the</strong> expansions<br />

C 1/2 = 1 (I<br />

2<br />

+ C) . (27)<br />

C = e ∆t C = I + ∆tC + 1 2 ∆t2 C 2 + · · · , e (1/2)∆t C = I + 1 2 ∆tC + 1 8 ∆t2 C 2 + · · · . (28)<br />

Applying this operator C 1/2 to some variables which we call f i gives<br />

C 1/2 f i = f i − 1 ∆t<br />

2 τ + ∆t/2<br />

We now define C −1/2 to be <strong>the</strong> exact inverse of <strong>the</strong> C 1/2 operator. Inverting (29) gives<br />

C −1/2 f i = f i + ∆t<br />

2τ<br />

( )<br />

f i − f (0)<br />

i . (29)<br />

( )<br />

fi − f (0)<br />

i . (30)<br />

The right hand side is exactly <strong>the</strong> formula for f i introduced by He et al. [5, 6]. This is <strong>the</strong> motivation for using <strong>the</strong> notation<br />

f i in (29), since we have <strong>the</strong> exact relations<br />

The second-order accurate lattice <strong>Boltzmann</strong> scheme (26) thus rearranges into<br />

f i = C −1/2 f i , f i = C 1/2 f i . (31)<br />

f i (x, t + ∆t) = S C S C . . . S C S C f i (x, t). (32)<br />

This is exactly <strong>the</strong> same as <strong>the</strong> lattice <strong>Boltzmann</strong> algorithm derived by He et al. [5, 6] by integrating <strong>the</strong> full discrete<br />

<strong>Boltzmann</strong> equation along characteristics, and <strong>the</strong>n introducing an f i to f i transformation to render <strong>the</strong> resulting set of<br />

algebraic equations explicit.<br />

We achieve global second order accuracy despite (27) only defining C 1/2 up to an O(∆t 2 ) error, while <strong>the</strong> separate S<br />

and C steps have errors of O(∆t 3 ). The latter steps occur O(1/∆t) times when evaluating <strong>the</strong> evolution over a fixed time<br />

interval [0, T], so <strong>the</strong> errors <strong>the</strong>y each contribute grow from O(∆t 3 ) to O(∆t 2 ). The C 1/2 and C −1/2 operators are only<br />

applied once each, so <strong>the</strong>ir contributions to <strong>the</strong> global error are of <strong>the</strong> same order as <strong>the</strong> contributions from S and C.<br />

4


5. Matrix collision operators<br />

The above approach extends easily to general matrix collision operators. We replace (13a) by<br />

∂ t f i = −<br />

n∑<br />

j=0<br />

(<br />

Ω i j f j − f (0) )<br />

j , (33)<br />

where <strong>the</strong> Ω i j are <strong>the</strong> components of a general collision matrix Ω. Applying <strong>the</strong> Crank–Nicolson discretisation to this<br />

equation gives<br />

f i (t + ∆t) − f i (t)<br />

n∑ (<br />

= − 1<br />

∆t<br />

2<br />

Ω i j f j (t + ∆t) + f j (t) − 2 f (0)<br />

i<br />

(t) ) + O(∆t 3 ), (34)<br />

where again we put f (0)<br />

i<br />

(t + ∆t) = f (0)<br />

i<br />

(t). The solution is given in vector notation by<br />

j=0<br />

f(t + ∆t) = ( I + 1 2 ∆tΩ) −1 [(<br />

I −<br />

1<br />

2 ∆tΩ) f(t) + ∆t Ω f (0) (t) ] ,<br />

= f(t) − ( I + 1 2 ∆tΩ) −1<br />

∆tΩ<br />

(<br />

f(t) − f (0) (t) ) , (35)<br />

= Cf(t),<br />

where f = ( f 0 , f 1 , . . . f n ) T is a column vector containing <strong>the</strong> distribution function values. The second step in (35) involves<br />

writing I − 1 2 ∆tΩ = (I + 1 2∆tΩ) − ∆tΩ. Equation (35) defines <strong>the</strong> discrete collision operator C. Proceeding as before, we<br />

define C 1/2 = 1 2 (I + C) so that f i = C 1/2 f i = f i − ( I + 1 2 ∆tΩ) −1 1<br />

2 ∆tΩ ( )<br />

f i − f (0)<br />

i , (36)<br />

and invert to obtain<br />

f i = C −1/2 f i = f i + 1 2 ∆tΩ ( )<br />

f i − f (0)<br />

i . (37)<br />

These formulae coincide with <strong>the</strong> extension of He result et al.’s [5, 6] to general matrix collision operators by Dellar [12].<br />

6. Body forces<br />

This combination of Crank–Nicolson and Strang splitting may also be extended to implement body forces. The<br />

decoupled collision equation becomes<br />

∂ t f i = − 1 ( )<br />

fi − f (0)<br />

i + Ri , (38)<br />

τ<br />

where <strong>the</strong> body force term R i has <strong>the</strong> moments [13]<br />

n∑<br />

R i = 0,<br />

i=0<br />

n∑<br />

ξ i R i = F,<br />

i=0<br />

n∑<br />

ξξ i R i = F u + u F. (39)<br />

This term thus imparts a body force F to <strong>the</strong> simulated fluid. The second moment F u + u F is necessary to cancel an<br />

o<strong>the</strong>rwise spurious term in <strong>the</strong> calculation of <strong>the</strong> viscous stress at Navier–Stokes order in <strong>the</strong> Chapman–Enskog expansion<br />

[14]. Substituting <strong>the</strong> moments (39) into a truncated expansion in tensor Hermite polynomials gives <strong>the</strong> formula<br />

i=0<br />

R i = w i<br />

[<br />

θ −1 ξ i · F + θ −2 F · (ξ i ξ i − θI) · u ] , (40)<br />

for a lattice with weights w i , discrete velocities ξ i , and lattice constant θ defined by ∑ i w i ξ i ξ i<br />

equivalent to <strong>the</strong> one in [13].<br />

The Crank–Nicolson discretisation of (38) is<br />

= θI. This formula is<br />

f i (t + ∆t) − f i (t)<br />

∆t<br />

= − 1 2τ<br />

(<br />

fi (t + ∆t) + f i (t) − f (0)<br />

i<br />

(t + ∆t) − f (0)<br />

i<br />

(t) ) + 1 2 (R i(t + ∆t) + R i (t)) + O(∆t 3 ), (41)<br />

which we solve for<br />

f i (t + ∆t) = f i (t) −<br />

{<br />

∆t<br />

f i (t) − 1 [<br />

f<br />

(0)<br />

i<br />

(t + ∆t) + f (0)<br />

i<br />

(t) ]} τ + ∆t/2 2<br />

τ∆t<br />

+<br />

τ + ∆t/2 [R i(t + ∆t) + R i (t)] , (42)<br />

5


after neglecting <strong>the</strong> O(∆t 3 ) term. We retain <strong>the</strong> distinction between f (0)<br />

i<br />

(t + ∆t) and f (0)<br />

i<br />

(t), and between R i (t + ∆t) and<br />

R i (t), because f (0)<br />

i<br />

and R i both depend on <strong>the</strong> fluid velocity u, which evolves during <strong>the</strong> timestep due to <strong>the</strong> body force.<br />

From <strong>the</strong> first moment of (41) we obtain<br />

ρu(t + ∆t) = ρu(t) + ∆tF. (43)<br />

We write ρ without an argument, because ρ is constant during a collisional timestep. Equation (43) gives <strong>the</strong> exact solution<br />

for <strong>the</strong> evolution of <strong>the</strong> velocity under ρ∂ t u = F, so <strong>the</strong>re is no difference between Crank–Nicolson and forward Euler<br />

discretisations. However, (43) must be modified if F depends on u, as for <strong>the</strong> Coriolis force or a drag force.<br />

The right hand side of (42) defines <strong>the</strong> discrete collision operator C for <strong>the</strong> case with a body force. Defining as before<br />

C −1/2 to be <strong>the</strong> exact inverse of <strong>the</strong> operator C 1/2 = 1 2<br />

(I + C), we obtain<br />

f i (t) = C −1/2 f i (t) = f i (t) + ∆t {<br />

f i (t) − 1 [<br />

f<br />

(0)<br />

i<br />

(t + ∆t) + f (0)<br />

i<br />

(t) ]} 2τ 2<br />

− ∆t<br />

4 [R i(t + ∆t) + R i (t)] . (44)<br />

However, we may introduce fur<strong>the</strong>r O(∆t 2 ) errors in C 1/2 and C −1/2 without affecting <strong>the</strong> overall second-order accuracy<br />

of <strong>the</strong> scheme. Each of <strong>the</strong>se operators is only applied once in <strong>the</strong> whole computation, not once per timestep. This allows<br />

us to replace f (0)<br />

i<br />

(t + ∆t) by f (0)<br />

i<br />

(t) and R i (t + ∆t) by R i (t) to sufficient accuracy. Moreover, <strong>the</strong>se changes to f (0)<br />

i<br />

and R i are<br />

O(∆t|F|) ra<strong>the</strong>r than O(∆t/τ). They thus remain small even in <strong>the</strong> high grid-scale Reynolds number regime with τ ≪ ∆t<br />

that is discussed below.<br />

By making <strong>the</strong>se fur<strong>the</strong>r approximations we obtain <strong>the</strong> simpler formula<br />

f i (t) = f i (t) + ∆t<br />

2τ<br />

(<br />

fi (t) − f (0)<br />

i<br />

(t + ∆t) ) − ∆t<br />

2 R i(t), (45)<br />

which coincides with <strong>the</strong> expression for <strong>the</strong> f i variables given by He et al. [6] for <strong>the</strong> case with a body force. Applying<br />

this transformation to <strong>the</strong> Crank–Nicolson solution (42) gives<br />

f i (t + ∆t) = f i (t) −<br />

i<br />

∆t (<br />

f<br />

τ + ∆t/2 i (t) − f (0)<br />

i<br />

(t) ) τ∆t<br />

+<br />

τ + ∆t/2 R i(t), (46)<br />

which is <strong>the</strong> usual form of second-order lattice <strong>Boltzmann</strong> equation with a body force. Taking <strong>the</strong> first moment of (45)<br />

gives<br />

∑ ∑<br />

ξ i f i = ξ i f i − ∆t ∑<br />

ξ<br />

2 i R i = ρu − ∆t F, (47)<br />

2<br />

i<br />

so <strong>the</strong> actual fluid velocity u is related to <strong>the</strong> first moment ρu = ∑ i ξ i f i of <strong>the</strong> modified distribution functions by ρu =<br />

ρu + (∆t/2)F, as in <strong>the</strong> derivation by He et al. [6]. This derivation may be combined with that in <strong>the</strong> previous section to<br />

accommodate a body force and a matrix collision operator simultaneously.<br />

i<br />

7. Including body forces using separate steps<br />

Salmon [15] presented a three-dimensional lattice <strong>Boltzmann</strong> model for <strong>the</strong> ocean that included <strong>the</strong> Coriolis force<br />

through separate “spin steps”, instead of incorporating this force into <strong>the</strong> collision term as in <strong>the</strong> previous section. <strong>On</strong>e<br />

timestep of Salmon’s scheme may be written schematically as [15]<br />

˜f i (x, t + ∆t) = SF 1/2 CF 1/2 ˜f i (x, t), (48)<br />

for some as yet unspecified variables ˜f i . The symbol F 1/2 denotes <strong>the</strong> solution operator for evolution under <strong>the</strong> Coriolis<br />

force alone,<br />

du<br />

= −2Ω×u, (49)<br />

dt<br />

over a half-timestep of length ∆t/2. For <strong>the</strong> geophysically relevant case of rotation about a vertical axis, Ω = Ω ẑ, <strong>the</strong><br />

exact solution for <strong>the</strong> velocity is given by<br />

⎛<br />

⎞ ⎛<br />

u x<br />

cos(Ω∆t/2) sin(Ω∆t/2) 0 u x<br />

u ⎜⎝ y<br />

⎞⎟⎠<br />

⎛⎜⎝<br />

(t + ∆t/2) = − sin(Ω∆t/2) cos(Ω∆t/2) 0 u ⎟⎠ ⎜⎝ y (t). (50)<br />

⎞⎟⎠<br />

u z 0 0 1 u z<br />

In Salmon’s implementation this evolution of u was extended to <strong>the</strong> ˜f i by identifying <strong>the</strong>ir first moment with ρu, evolving<br />

this moment according to (50), and leaving <strong>the</strong> o<strong>the</strong>r moments unchanged.<br />

The extension of Strang splitting to three or more operators [16] suggests <strong>the</strong> numerical scheme<br />

f i (x, t + ∆t) = C 1/2 F 1/2 SF 1/2 C 1/2 f i (x, t), (51)<br />

6


where again <strong>the</strong> symmetrical ordering of <strong>the</strong> half-steps C 1/2 and F 1/2 eliminates <strong>the</strong> O(∆t) splitting error in <strong>the</strong> analogue of<br />

(23) for <strong>the</strong> exponential of <strong>the</strong> sum of three operators. Applying (51) for n timesteps and combining <strong>the</strong> adjacent collision<br />

half-steps as in (25) gives<br />

f i (x, t + n∆t) = C 1/2 F 1/2 SF 1/2 CF 1/2 SF 1/2 C . . . F 1/2 SF 1/2 C 1/2 f i (x, t). (52)<br />

Proceeding as in section 4 we rewrite <strong>the</strong> initial collision step as C 1/2 = C C −1/2 , and absorb C −1/2 into <strong>the</strong> definition of f i<br />

to obtain<br />

f i (x, t + ∆t) = F 1/2 SF 1/2 C f i (x, t). (53)<br />

Comparing this expression with Salmon’s scheme in (48), <strong>the</strong> two coincide if we define<br />

˜f i (x, t) = F −1/2 f i (x, t) = F −1/2 C −1/2 f i (x, t). (54)<br />

A completely second-order accurate scheme <strong>the</strong>refore requires <strong>the</strong> fluid velocity u to be recovered from <strong>the</strong> first moment<br />

ρũ = ∑ i ξ i ˜f i by applying a half-timestep of <strong>the</strong> Coriolis force,<br />

∑ ∑<br />

ρu = ξ i f i = F<br />

⎛⎜⎝<br />

1/2 ξ i ˜f i<br />

⎞⎟⎠ . (55)<br />

i<br />

This is analogous to <strong>the</strong> relation between u and u calculated in (47) when <strong>the</strong> body force is included in <strong>the</strong> collision step.<br />

i<br />

8. Crank–Nicolson approximation versus exact collisions<br />

We now return to <strong>the</strong> core lattice <strong>Boltzmann</strong> scheme, without matrix collision operators or body forces, and investigate<br />

some properties of <strong>the</strong> discrete collision steps. The Crank–Nicolson solution to <strong>the</strong> equation describing collisions,<br />

may be written as<br />

in terms of <strong>the</strong> discrete collision frequency<br />

∂ t f i = − 1 τ<br />

( )<br />

fi − f (0)<br />

i , (56)<br />

f i (t + ∆t) = f i (t) − ω ( f i (t) − f (0)<br />

i<br />

(t) ) (57)<br />

ω =<br />

∆t<br />

τ + ∆t/2 . (58)<br />

For comparison, <strong>the</strong> forward Euler approximation to (56) is (57) with ω = ∆t/τ. The difference between this first-order<br />

approximation and <strong>the</strong> second-order Crank–Nicolson approximation is <strong>the</strong> replacement of τ by τ+∆t/2 in <strong>the</strong> denominator<br />

of (58).<br />

As f (0)<br />

i<br />

is independent of t under collisions, (56) may also be solved exactly to give<br />

(<br />

f i (t + ∆t) = f (0)<br />

i<br />

(t) + exp − ∆t ) (<br />

fi (t) − f (0)<br />

i<br />

(t) ) . (59)<br />

τ<br />

This solution may be rearranged into <strong>the</strong> previous form (57) with collision frequency<br />

(<br />

ω = 1 − exp − ∆t )<br />

. (60)<br />

τ<br />

Comparing this expression with (58) shows that <strong>the</strong> earlier indications of <strong>the</strong> truncation error for <strong>the</strong> trapezium rule or<br />

Crank–Nicolson approximations as being O(∆t 3 ) should be corrected to O((∆t/τ) 3 ).<br />

These three expressions for ω as functions of τ/∆t are shown in figure 1. In <strong>the</strong> exact solution ω → 1 as τ → 0,<br />

corresponding to <strong>the</strong> complete decay of <strong>the</strong> initial deviation from equilibrium. In <strong>the</strong> Crank–Nicolson approximation<br />

ω → 2 as τ → 0, so <strong>the</strong> nonequilibrium part f i − f (0)<br />

i<br />

reverses sign in this limit. However, | f i − f (0)<br />

i<br />

| is always non-increasing<br />

under a Crank-Nicolson timestep for any combination of τ and ∆t. By contrast, <strong>the</strong> forward Euler approximation leads to<br />

| f i − f (0)<br />

i<br />

| growing when τ < ∆t/2.<br />

The ready availability of this exact solution raises <strong>the</strong> question of why one should use <strong>the</strong> approximate formula (58)<br />

for <strong>the</strong> discrete collision frequency instead of <strong>the</strong> exact result (60). The reason lies in <strong>the</strong> behaviour of <strong>the</strong> combined<br />

system of streaming and collisions, and <strong>the</strong> interaction of <strong>the</strong> discrete approximation in <strong>the</strong> solution of <strong>the</strong> collision step<br />

with <strong>the</strong> splitting error due to <strong>the</strong> separation of a single PDE into uncoupled streaming and collision steps. An analysis of<br />

<strong>the</strong> combination shows that <strong>the</strong> complete LB scheme based on ω given by (58) remains accurate even as τ → 0, while <strong>the</strong><br />

equivalent scheme based on (60) departs from <strong>the</strong> desired behaviour when τ ∆t.<br />

7


2<br />

1.5<br />

forward Euler<br />

Crank−Nicolson<br />

exact<br />

ω<br />

1<br />

0.5<br />

0<br />

0 1 2 3 4 5<br />

τ/∆t<br />

Figure 1: (Colour online.) The discrete collision frequencies ω given by <strong>the</strong> exact solution of <strong>the</strong> collision operator, and also by <strong>the</strong> Crank–Nicolson and<br />

forward Euler approximations.<br />

9. Sinusoidal shear waves<br />

We consider <strong>the</strong> behaviour of sinusoidal shear waves under <strong>the</strong> standard lattice <strong>Boltzmann</strong> scheme, and under an<br />

analogous scheme that uses <strong>the</strong> exact solution of <strong>the</strong> collision step instead of <strong>the</strong> Crank–Nicolson approximation. Our<br />

approach follows previous analyses of Fourier modes in lattice <strong>Boltzmann</strong> schemes [12, 17, 18], but for simplicity we<br />

consider only flows aligned with <strong>the</strong> discrete velocity lattice. We consider solutions whose x-dependence is of <strong>the</strong> form<br />

exp(ikx) and whose velocity is purely in <strong>the</strong> y direction. The nonlinear terms in <strong>the</strong> Navier–Stokes equations may be<br />

omitted, because u · ∇u vanishes for <strong>the</strong>se flows. This allows us to simplify <strong>the</strong> equilibrium distributions by omitting <strong>the</strong><br />

O(u 2 ) terms,<br />

f (0)<br />

i<br />

= ρw i<br />

( 1 + 3 ξi · u ) . (61)<br />

The weights w i and velocities ξ i are <strong>the</strong> standard ones for <strong>the</strong> D2Q9 lattice <strong>Boltzmann</strong> scheme [19] with w 0 = 4/9,<br />

w 1,2,3,4 = 1/9, and w 5,6,7,8 = 1/36. A fur<strong>the</strong>r simplification follows from recognising that ∇·u = 0, so <strong>the</strong> density remains<br />

constant and we may set ρ = 1. The lattice <strong>Boltzmann</strong> scheme thus becomes<br />

where<br />

n i (x + ξ ix ∆t, t + ∆t) = n i (x, t) − ω ( n i (x, t) − n (0)<br />

i<br />

(x, t) ) , (62)<br />

f i = w i + n i , n (0)<br />

i<br />

= 3 w i ξ iy u y . (63)<br />

Using <strong>the</strong> known spatial dependence proportional to exp(ikx), and assuming a separable solution in time, we rewrite<br />

(62) as<br />

⎛<br />

8∑<br />

σ exp(iξ ix k∆t)n i = n i − ω ⎜⎝ n i − 3 w i ξ iy ξ jy n j<br />

⎞⎟⎠ . (64)<br />

This gives a matrix eigenvalue problem for <strong>the</strong> vector of nine elements n = (n 0 , . . . n 8 ) T ,<br />

where M is a 9 × 9 matrix with components<br />

j=0<br />

σ n = M n, (65)<br />

M i j = exp(−iξ ix κ) [ (1 − ω)δ i j + 3ωw i ξ iy ξ jy<br />

]<br />

, (66)<br />

and κ = k∆t is <strong>the</strong> scaled wavenumber (in c = 1 units).<br />

The eigenvalues σ are given by <strong>the</strong> roots of <strong>the</strong> characteristic polynomial,<br />

1<br />

3 (σ + ω − 1)2 ( σ + (ω − 1) e i κ) 2 (<br />

σ + (ω − 1) e<br />

− i κ ) 2 { 3σ 3<br />

+ σ 2 [ω − 3 + (5ω − 6) cos κ] + σ (ω − 1) [2ω − 3 + (ω − 6) cos κ] − 3(ω − 1) 2 }<br />

(67)<br />

There are three pairs of repeated eigenvalues of <strong>the</strong> form<br />

σ = (1 − ω) e i κ m for m ∈ {−1, 0, 1}, (68)<br />

8


1<br />

2<br />

0.5<br />

1.5<br />

Im σ<br />

0<br />

1<br />

−0.5<br />

−1<br />

−1 −0.5 0 0.5 1<br />

Re σ<br />

ω 0 0.5<br />

Figure 2: (Colour online.) The complex eigenvalues σ of <strong>the</strong> matrix M for κ = π/4 as functions of <strong>the</strong> discrete collision frequency ω. The viscous decay<br />

mode corresponds to <strong>the</strong> dense band of rapidly varying colour near σ = 1 on <strong>the</strong> real axis.<br />

and three more eigenvalues given by <strong>the</strong> roots of <strong>the</strong> remaining cubic in (67). Figure 2 shows <strong>the</strong> eigenvalues σ in<br />

<strong>the</strong> complex plane as functions of <strong>the</strong> discrete collision frequency ω for disturbunces with dimensionless wavenumber<br />

κ = π/4.<br />

The viscous decay mode is given by <strong>the</strong> eigenvalue close to 1, which corresponds to <strong>the</strong> dense band of rapidly varying<br />

colour in figure 2. Putting ω = ∆t/(τ + ∆t/2) as in <strong>the</strong> Crank–Nicholson expression, <strong>the</strong> eigenvalue for <strong>the</strong> viscous decay<br />

mode has <strong>the</strong> asymptotic form<br />

σ = 1 − τ 2 − 2 cos κ<br />

∆t 2 + cos κ + O(τ2 /∆t 2 ) as τ → 0. (69)<br />

The o<strong>the</strong>r two roots of <strong>the</strong> cubic in (67) form a complex conjugate pair whose asymptotic behaviour is<br />

Fur<strong>the</strong>r expanding (69) for small κ we obtain<br />

σ → − 1 ( ) 2<br />

⎤⎥⎦1/2<br />

1 + 2 cos κ<br />

3<br />

⎡⎢⎣ (1 + 2 cos κ) ± i 1 − 3<br />

as τ → 0. (70)<br />

σ = 1 − 1 τ<br />

3 ∆t κ2 + O(κ 4 ) + O(τ 2 /∆t 2 ). (71)<br />

The eigenvalues σ describe <strong>the</strong> evolution over a timestep ∆t. They are related by σ = exp(λ∆t) to <strong>the</strong> eigenvalues λ of <strong>the</strong><br />

corresponding PDE. From (71) we obtain<br />

λ = log σ<br />

∆t<br />

∼ − 1 τ<br />

3 ∆t 2 κ2 = − 1 3 τk2 as k, τ → 0, (72)<br />

so we recover <strong>the</strong> correct viscous decay rate for a sinusoidal shear flow with wavenumber k in a fluid with viscosity<br />

ν = 1 3τ. The latter is <strong>the</strong> usual lattice <strong>Boltzmann</strong> formula for <strong>the</strong> viscosity in terms of <strong>the</strong> collision time. In particular, we<br />

recover <strong>the</strong> correct fluid behaviour when τ ≪ ∆t, even though <strong>the</strong> numerical scheme was derived using an expansion in<br />

∆t/τ that would usually require τ ≫ ∆t for its validity.<br />

We also calculate <strong>the</strong> eigenvalues of <strong>the</strong> discrete <strong>Boltzmann</strong> PDE for <strong>the</strong> same flow. The analogue of (64) is<br />

⎛<br />

λn i = −iξ ix k − 1 8∑<br />

τ<br />

⎜⎝ n i − 3 w i ξ iy ξ jy n j<br />

⎞⎟⎠ , (73)<br />

which again leads to a 9 × 9 matrix eigenvalue problem for <strong>the</strong> eigenvalues λ.<br />

Figure 3 shows <strong>the</strong> decay rate of shear waves with wavenumber κ = π/4 as calculated using <strong>the</strong> two numerical<br />

schemes, <strong>the</strong> Navier–Stokes equations, and <strong>the</strong> discrete <strong>Boltzmann</strong> PDE. The Crank–Nicolson based scheme remains in<br />

good agreement with <strong>the</strong> PDE over <strong>the</strong> whole range of τ. The small τ behaviour agrees with that given by <strong>the</strong> Navier–<br />

Stokes equations, which are derived from <strong>the</strong> small τ limit of <strong>the</strong> discrete <strong>Boltzmann</strong> PDE. However, <strong>the</strong> behaviour of <strong>the</strong><br />

numerical scheme based on exact collisions deviates substantially from <strong>the</strong> correct behaviour when τ ∆t. In particular,<br />

<strong>the</strong> decay rate tends to a finite value as τ → 0, so <strong>the</strong> simulation becomes much too viscous when τ ∆t.<br />

j=0<br />

9


0<br />

−0.05<br />

Crank−Nicolson<br />

exact collisions<br />

discrete <strong>Boltzmann</strong><br />

Navier−Stokes<br />

logσ<br />

∆t<br />

−0.1<br />

−0.15<br />

−0.2<br />

0 1 2 3 4<br />

τ/∆t<br />

Figure 3: (Colour online.) Decay rates of sinusoidal disturbances with wavenumber κ = π/4 under <strong>the</strong> lattice <strong>Boltzmann</strong> schemes with <strong>the</strong> two discrete<br />

collision operators, under <strong>the</strong> discrete <strong>Boltzmann</strong> PDE, and under <strong>the</strong> Navier–Stokes equations. This comparatively large value of κ emphasises <strong>the</strong><br />

differences between <strong>the</strong> various schemes. The Crank–Nicolson based scheme remains in good agreement with <strong>the</strong> PDE over <strong>the</strong> whole range of τ, and<br />

its small τ behaviour is as described by <strong>the</strong> Navier–Stokes equations. The scheme based on exact collisions deviates from <strong>the</strong> correct behaviour when<br />

τ 1. Its decay rate does not tend to zero as τ → 0.<br />

10. Conclusions<br />

We have derived <strong>the</strong> second-order lattice <strong>Boltzmann</strong> algorithm by applying operator splitting to <strong>the</strong> discrete <strong>Boltzmann</strong><br />

partial differential equation. The streaming operator is discretised exactly by integration along characteristics, and <strong>the</strong><br />

collision operator is discretised with second order accuracy using <strong>the</strong> Crank–Nicolson approach [11]. The two separately<br />

discretised operators are combined using Strang splitting [9], which is itself second order accurate. However, Strang<br />

splitting requires one of <strong>the</strong> two operators, here <strong>the</strong> collision operator, to be applied for half timesteps. A natural approach<br />

is to approximate a half timestep of collisions using <strong>the</strong> average of <strong>the</strong> identity operator and <strong>the</strong> collision operator for a<br />

whole timestep. This approximation leads to <strong>the</strong> same transformation from f i to f i that was introduced by He et al. [5, 6]<br />

using different reasoning. In <strong>the</strong> Strang splitting approach, this transformation is given by<br />

f i = C −1/2 f i , f i = C 1/2 f i , (74)<br />

where C 1/2 = 1 2 (I + C) is <strong>the</strong> approximate half-step collision operator, and C−1/2 is <strong>the</strong> exact inverse of C 1/2 .<br />

The f i to f i transformation often receives little attention, perhaps because its effect on <strong>the</strong> simplest lattice <strong>Boltzmann</strong><br />

schemes may be absorbed by replacing τ by τ + ∆t/2, at least until one needs to evaluate <strong>the</strong> macroscopic stress in addition<br />

to <strong>the</strong> density and velocity. However, <strong>the</strong> transformation may become much more involved in more complex systems,<br />

such as multicomponent flows, and yet be essential for achieving useful computational results without an excessively<br />

short timestep [20]. Similarly, <strong>the</strong> identification of <strong>the</strong> lattice <strong>Boltzmann</strong> streaming and collision steps with Strang splitting<br />

proves valuable when combining <strong>the</strong>se steps with additional steps, for instance finite difference approximations to<br />

derivatives, or <strong>the</strong> “spin steps” sometimes used to implement body forces [15].<br />

These statements about second-order accuracy formally apply to <strong>the</strong> ratio ∆t/τ, where ∆t is <strong>the</strong> timestep and τ is <strong>the</strong><br />

collision time in <strong>the</strong> discrete <strong>Boltzmann</strong> PDE. These statements thus formally apply to <strong>the</strong> limit ∆t/τ → 0. However,<br />

<strong>the</strong> combined lattice <strong>Boltzmann</strong> scheme remains valid, and is commonly applied, in <strong>the</strong> opposite limit with ∆t ≫ τ.<br />

Allowing ∆t ≫ τ is essential for achieving grid-scale Reynolds numbers larger than unity, which in turn are needed to<br />

make simulations of turbulent flows computationally feasible. Such an extension of <strong>the</strong> range of validity of <strong>the</strong> method<br />

is feasible because hydrodynamics describes only slowly varying or “normal” [21] solutions of <strong>the</strong> underlying kinetic<br />

equations. Hydrodynamic solutions do not evolve on <strong>the</strong> collisional timescale τ, but only on much longer timescales that<br />

may be captured accurately by a timestep ∆t much larger than τ.<br />

The continued validity of <strong>the</strong> lattice <strong>Boltzmann</strong> approach for ∆t ≫ τ depends on <strong>the</strong> asymptotic properties of <strong>the</strong><br />

Crank–Nicolson approximation as τ/∆t → 0. The calculation for <strong>the</strong> decay of sinusoidal shear flows parallel to <strong>the</strong> y<br />

axis confirms that we recover <strong>the</strong> correct viscous decay rate as τ/∆t → 0. However, this property no longer holds if<br />

we use <strong>the</strong> exact solution of <strong>the</strong> collision operator in place of <strong>the</strong> Crank–Nicolson approximation. Counter-intuitively,<br />

<strong>the</strong> replacement of <strong>the</strong> exact solution of <strong>the</strong> collision operator by its Crank–Nicolson approximation is essential for <strong>the</strong><br />

validity of <strong>the</strong> lattice <strong>Boltzmann</strong> algorithm in its widely used operating regime with grid-scale Reynolds numbers larger<br />

than unity, or even comparable to unity. We have analysed this phenomenon in a concrete example whose behaviour for<br />

small τ may be extracted analytically. A more general treatment may be found in Brownlee et al. [22].<br />

10


11. Acknowledgements<br />

Some of <strong>the</strong> work reported here arose from conversations with Li-Shi Luo and Alexander Bobylev during <strong>the</strong> programme<br />

Partial Differential Equations in Kinetic Theories at <strong>the</strong> Isaac Newton Institute for Ma<strong>the</strong>matical Sciences. The<br />

author also thanks Alexander Gorban for drawing his attention to <strong>the</strong> deficiencies of <strong>the</strong> trapezium rule when τ ≪ ∆t.<br />

12. Role of <strong>the</strong> funding source<br />

The author’s research is supported by an Advanced Research Fellowship, grant number EP/E054625/1, from <strong>the</strong> UK<br />

Engineering and Physical Sciences Research Council. This body took no o<strong>the</strong>r part in <strong>the</strong> research, or in <strong>the</strong> preparation<br />

and submission of <strong>the</strong> manuscript.<br />

References<br />

[1] Chapman, S., Cowling, T.G.. The Ma<strong>the</strong>matical Theory of Non-Uniform Gases. Cambridge: Cambridge University Press; 3rd ed.; 1970.<br />

[2] Wolfram, S.. Cellular automaton fluids 1: Basic <strong>the</strong>ory. J Statist Phys 1986;45:471–526–526.<br />

[3] Frisch, U., d’Humières, D., Hasslacher, B., Lallemand, P., Pomeau, Y., Rivet, J.P.. <strong>Lattice</strong> gas hydrodynamics in two and three dimensions.<br />

Complex Sys 1987;1:649–707.<br />

[4] Hou, S., Zou, Q., Chen, S., Doolen, G., Cogley, A.C.. Simulation of cavity flow by <strong>the</strong> lattice <strong>Boltzmann</strong> method. J Comput Phys<br />

1995;118:329–347.<br />

[5] He, X., Shan, X., Doolen, G.D.. Discrete <strong>Boltzmann</strong> equation model for nonideal gases. Phys Rev E 1998;57:R13–R16.<br />

[6] He, X., Chen, S., Doolen, G.D.. A novel <strong>the</strong>rmal model of <strong>the</strong> lattice <strong>Boltzmann</strong> method in incompressible limit. J Comput Phys 1998;146:282–<br />

300.<br />

[7] Inamuro, T., Yoshino, M., Ogino, F.. Accuracy of <strong>the</strong> lattice <strong>Boltzmann</strong> method for small Knudsen number with finite Reynolds number. Phys<br />

Fluids 1997;9:3535–3542.<br />

[8] Junk, M., Klar, A., Luo, L.S.. Asymptotic analysis of <strong>the</strong> lattice <strong>Boltzmann</strong> equation. J Comput Phys 2005;210:676–704.<br />

[9] Strang, G.. <strong>On</strong> <strong>the</strong> construction and comparison of difference schemes. SIAM J Numer Anal 1968;5:506–517.<br />

[10] Dellar, P.J.. Bulk and shear viscosities in lattice <strong>Boltzmann</strong> equations. Phys Rev E 2001;64:031203.<br />

[11] Crank, J., Nicolson, P.. A practical method for numerical evaluation of solutions of partial differential equations of <strong>the</strong> heat conduction type.<br />

Proc Camb Phil Soc 1947;43:50–64. Reprinted in Adv. Comp. Math. 6 pp. 207–226.<br />

[12] Dellar, P.J.. Incompressible limits of lattice <strong>Boltzmann</strong> equations using multiple relaxation times. J Comput Phys 2003;190:351–370.<br />

[13] Luo, L.S.. Unified <strong>the</strong>ory of lattice <strong>Boltzmann</strong> models for nonideal gases. Phys Rev Lett 1998;81:1618–1621.<br />

[14] Dellar, P.J.. <strong>Lattice</strong> kinetic schemes for magnetohydrodynamics. J Comput Phys 2002;179:95–126.<br />

[15] Salmon, R.. <strong>Lattice</strong> <strong>Boltzmann</strong> solutions of <strong>the</strong> three-dimensional planetary geostrophic equations. J Marine Res 1999;57:847–884.<br />

[16] Suzuki, M.. Decomposition formulas of exponential operators and Lie exponentials with some applications to quantum mechanics and statistical<br />

physics. J Math Phys 1985;26:601–612.<br />

[17] Sterling, J.D., Chen, S.. Stability analysis of lattice <strong>Boltzmann</strong> methods. J Comput Phys 1996;123:196–206.<br />

[18] Lallemand, P., Luo, L.S.. Theory of <strong>the</strong> lattice <strong>Boltzmann</strong> method: Dispersion, dissipation, isotropy, Galilean invariance, and stability. Phys Rev<br />

E 2000;61:6546–6562.<br />

[19] Qian, Y.H., d’Humières, D., Lallemand, P.. <strong>Lattice</strong> BGK models for <strong>the</strong> Navier–Stokes equation. Europhys Lett 1992;17:479–484.<br />

[20] Bennett, S.. A lattice <strong>Boltzmann</strong> model for diffusion of binary gas mixtures. Ph.D. <strong>the</strong>sis; University of Cambridge; 2010.<br />

[21] Grad, H.. Asymptotic <strong>the</strong>ory of <strong>the</strong> <strong>Boltzmann</strong> equation. Phys Fluids 1963;6:147–181.<br />

[22] Brownlee, R.A., Gorban, A.N., Levesley, J.. Stability and stabilization of <strong>the</strong> lattice <strong>Boltzmann</strong> method. Phys Rev E 2007;75:036711–17.<br />

11

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!