Skip to content

Thermal Lattice Boltzmann and Convection

Source: PHY653B Ch. 8

Intuition

The isothermal D2Q9 lattice has no temperature. Adding one naively — by extending the velocity set until the lattice supports the energy moment — requires many more velocities and is notoriously unstable. The practical answer is to run two lattices: one for momentum, one for temperature, coupled through buoyancy.

Why a second lattice

Temperature obeys an advection–diffusion equation,

\[\frac{\partial T}{\partial t} + \mathbf{u}\cdot\nabla T = \alpha\nabla^2 T\]

which needs fewer moments than momentum does — the flux is a scalar, not a tensor. A reduced stencil (D2Q5 or D2Q9 with a scalar equilibrium) suffices:

\[g_i^{\rm eq} = w_iT\left[1 + \frac{\mathbf{c}_i\cdot\mathbf{u}}{c_s^2}\right]\]

with its own relaxation time \(\tau_T\) and, by the same Chapman–Enskog argument, a predicted thermal diffusivity

\[\alpha = c_s^2\left(\tau_T - \tfrac12\right)\]

Two independent relaxation times mean the Prandtl number \(Pr = \nu/\alpha\) is now a free parameter — which single-relaxation-time BGK on one lattice could not deliver.

Coupling: the Boussinesq approximation

Density variation is neglected everywhere except in the buoyancy term, where it is linearised:

\[\mathbf{F} = \rho\,\mathbf{g}\,\beta\,(T - T_0)\]

added to the momentum lattice as a body force (Guo forcing). The temperature lattice is advected by the velocity the momentum lattice produces. That is the whole coupling: one force term and one advection velocity.

Boussinesq is valid when temperature differences are small enough that density varies weakly — which covers most laboratory convection and is where the standard benchmarks live.

Verification, then validation

Chapter 8's sequence is a model of how to build a coupled solver, and worth copying:

  1. Isolate the thermal lattice. Switch off the coupling and solve pure diffusion with an analytic solution. Confirm \(\alpha = c_s^2(\tau_T - \tfrac12)\) and second-order convergence. Do not proceed until this passes.
  2. Couple, then validate against de Vahl Davis. The differentially heated square cavity is the natural-convection benchmark, with tabulated Nusselt numbers and peak velocities at \(Ra = 10^3\)\(10^6\). Reproduce the table.
  3. Then Rayleigh–Bénard. Heated from below, and the classic instability: nothing happens until \(Ra\) exceeds the critical value

$\(Ra_c = 1707.76\)$

at which point convection rolls appear spontaneously. A solver that reproduces \(Ra_c\) to within a percent or two has demonstrated that its coupling, its boundaries and its transport coefficients are all simultaneously right — which no single-physics test can show.

\(Ra_c\) is a superb benchmark precisely because it is a threshold: it is a sharp number, it depends on everything in the solver, and there is no parameter to tune it with.

Common mistakes

  • Coupling before verifying the thermal lattice alone. If diffusion is wrong, convection will be wrong in a way that is impossible to diagnose.
  • Using the same relaxation time for both lattices. That fixes \(Pr = 1\), which is fine for gases and wrong for water (\(Pr \approx 7\)) and very wrong for liquid metals (\(Pr \sim 0.01\)).
  • Getting the thermal boundary conditions wrong. Fixed-temperature (Dirichlet) and fixed-flux (Neumann) walls need different population treatments, and an incorrect wall condition shifts \(Ra_c\) — which is exactly why \(Ra_c\) is such a good test.
  • Reporting \(Ra\) without stating how it was computed. \(Ra = g\beta\Delta T H^3/(\nu\alpha)\) involves every transport coefficient in the problem; an error in any of them misplaces the threshold.

Knowledge graph position

Prerequisites: D2Q9 lattice, Chapman–Enskog, buoyancy. Leads to: variable transport, multiphase and reacting-flow LBM.

Quiz

Q1 (conceptual). Why use a separate lattice for temperature instead of extending the velocity set?

Answer

Supporting the energy moment on a single lattice requires many more velocities and is notoriously unstable. Temperature obeys a scalar advection–diffusion equation needing far fewer moments, so a reduced second lattice is cheaper, more stable, and gives an independent relaxation time — hence a tunable Prandtl number.

Q2 (computational). A thermal lattice uses \(\tau_T = 0.9\) and the momentum lattice \(\tau = 0.6\). What is the Prandtl number?

Answer

\(\nu = \frac13(0.6-0.5) = 0.0333\), \(\alpha = \frac13(0.9-0.5) = 0.1333\). \(Pr = \nu/\alpha = 0.25\) — a liquid-metal-like value.

Q3 (MCQ). \(Ra_c = 1707.76\) is an especially good validation target because:

  • (a) it is easy to reach numerically
  • (b) it is a sharp threshold depending on the coupling, boundary conditions and both transport coefficients at once, with nothing to tune
  • (c) it does not depend on the boundary conditions
  • (d) it can be derived from the lattice weights
Answer

(b). A threshold is pass/fail rather than approximate, and this one is sensitive to every part of the solver simultaneously — so reproducing it validates the whole coupled system in a way no single-physics test can.