Skip to content

Chapman–Enskog: The Viscosity Is a Prediction

Source: PHY653B Ch. 7

Intuition

You never tell a lattice Boltzmann solver what the viscosity is. You set a relaxation time \(\tau\), and the fluid that emerges has a viscosity that the Chapman–Enskog expansion predicts:

\[\boxed{\;\nu = c_s^2\left(\tau - \tfrac12\right)\;}\]

That equation is the most satisfying thing in the chapter, because it converts a modelling assumption into a falsifiable claim you can check to three digits — and the widget does exactly that, matching to under 1% across the useful range of \(\tau\).

Where it comes from

Expand \(f_i\) about equilibrium in the Knudsen number \(\varepsilon\):

\[f_i = f_i^{(0)} + \varepsilon f_i^{(1)} + \varepsilon^2 f_i^{(2)} + \dots, \qquad f_i^{(0)} = f_i^{\rm eq}\]

and separate time scales, \(\partial_t = \partial_{t_0} + \varepsilon\partial_{t_1}\). Taking moments order by order:

  • \(O(\varepsilon^0)\) gives the continuity and Euler equations — the inviscid fluid.
  • \(O(\varepsilon^1)\) gives the viscous stress, with \(f_i^{(1)}\) providing the deviatoric part of the momentum flux. This is where the viscosity appears, and it comes out proportional to \(\tau\).

Recovering Navier–Stokes requires the third- and fourth-order moment conditions of the lattice to hold exactly — which is precisely why those conditions are stated as requirements rather than niceties.

Where the −½ comes from

The single most-asked question about LBM, and the answer is not a fudge.

The lattice Boltzmann equation is not a differential equation; it is a discrete update in which collision and streaming each act over a full time step. Taylor-expanding the discrete update to second order in \(\Delta t\) produces an extra term beyond the continuous Boltzmann equation, and that term contributes a negative numerical viscosity of exactly \(c_s^2\Delta t/2\).

In lattice units (\(\Delta t = 1\)):

\[\nu = c_s^2\tau - \frac{c_s^2}{2} = c_s^2\left(\tau - \frac12\right)\]

So the \(-\tfrac12\) is the discretisation error of the scheme, computed exactly and folded into the answer. LBM is second-order accurate because this term is known and accounted for, not in spite of it. It is a rare and elegant case of a truncation error being turned into part of the model.

The consequences

Stability floor. \(\nu > 0\) requires \(\tau > \tfrac12\). As \(\tau \to \tfrac12\) the viscosity vanishes and the scheme approaches instability — exactly where you want to be for high Reynolds number. This one constraint drives most LBM research: multi-relaxation-time (MRT), regularised and entropic collision operators all exist to push the usable \(\tau\) closer to \(\tfrac12\).

Boundary slip. Halfway bounce-back places the wall exactly midway between nodes only in the small-\(\tau\) limit. At larger \(\tau\) the BGK operator develops a viscosity-dependent slip and the effective wall position drifts. In the widget this shows up as the measured \(\nu\) degrading from 0.1% error at \(\tau = 1.0\) to about 1.2% at \(\tau = 1.5\) — a real, documented effect of the boundary condition, not solver sloppiness.

Verification is easy and mandatory. Poiseuille flow has an exact parabola, \(u(y) = \frac{g}{2\nu}y(H-y)\). Fit it, extract \(\nu\), compare with \(c_s^2(\tau-\tfrac12)\). Any new LBM code should do this before doing anything else.

Common mistakes

  • Treating \(-\tfrac12\) as an empirical correction. It is derived, exactly, from the discreteness of the update.
  • Running at \(\tau\) very close to 0.5 for high \(Re\). You get instability, not accuracy.
  • Comparing measured and predicted \(\nu\) without converging the flow. The parabola only holds at steady state; measure too early and the fit is meaningless.

Knowledge graph position

Prerequisites: D2Q9 lattice, collision operators, Navier–Stokes. Leads to: thermal LBM, MRT and entropic schemes, turbulent LBM.

Quiz

Q1 (conceptual). Explain the origin of the \(-\tfrac12\) in \(\nu = c_s^2(\tau - \tfrac12)\).

Answer

The LBM update is discrete, not differential. Taylor-expanding it to second order in \(\Delta t\) produces a term beyond the continuous Boltzmann equation that acts as a negative numerical viscosity \(c_s^2\Delta t/2\). Subtracting it from \(c_s^2\tau\) gives the physical viscosity — a truncation error computed exactly and absorbed into the model.

Q2 (computational). What \(\tau\) gives \(Re = 1000\) for a channel of height 40 lattice units with peak velocity 0.05?

Answer

\(\nu = uH/Re = (0.05)(40)/1000 = 2\times10^{-3}\). Then \(\tau = \nu/c_s^2 + \tfrac12 = 3\times2\times10^{-3} + 0.5 = 0.506\) — uncomfortably close to the stability floor, which is exactly why high-\(Re\) BGK LBM is difficult and why MRT schemes exist.

Q3 (MCQ). The measured viscosity in the widget degrades from 0.1% error at \(\tau = 1.0\) to ~1.2% at \(\tau = 1.5\) because:

  • (a) the solver becomes unstable
  • (b) halfway bounce-back develops a viscosity-dependent slip, shifting the effective wall position
  • (c) the Mach number rises
  • (d) the moment conditions fail at large \(\tau\)
Answer

(b). The bounce-back wall sits exactly halfway between nodes only for small \(\tau\); the BGK operator introduces a slip that grows with viscosity. It is a boundary-condition effect, documented and expected — and a good example of a "converged" result that still moves when you change a numerical parameter.