(vc_lowmach_bubble)= # Variable-density low-Mach warm bubble (sanity check) ```{note} This is a **sanity check**, not a benchmark validation. There is no closed-form or cited reference solution to compare against; the case confirms that the variable-density low-Mach closure runs **stably** over a sustained run and reproduces the **qualitatively correct** buoyant physics. The quantitative benchmark validation for this closure is the Sandia helium plume. ``` ## Why this case matters The variable-density low-Mach thermal closure {footcite:t}`taha2024fire` slaves the density to temperature through the equation of state $\rho = P/(rT)$ and carries the reduced hydrodynamic pressure $\theta^h$ in the fluid zeroth moment. That pressure relaxes acoustically, with no elliptic projection, so the dilatation produced by the energy field can excite an under-damped, highest-wavenumber (checkerboard / acoustic) mode, so the closure is numerically delicate. This case exercises the closure end-to-end with the {ref}`in-collision bulk-viscosity stabilization ` (`models.LBM.bulk_viscosity`) enabled, and checks that the run stays stable and physical. The stabilization is necessary: with the bulk viscosity off the identical setup diverges within a few hundred steps; with it on the run completes. The case therefore also guards against regressions in the stabilization. ## Setup A smooth warm Gaussian temperature bubble is seeded low in a periodic box: ```{math} --- label: vc_lowmach_bubble_ic --- T(x,y,z) = T_\mathrm{ref}\left[1 + A\,\exp\!\left(-\frac{(x-x_0)^2+(y-y_0)^2+(z-z_0)^2}{2s^2}\right)\right] ``` with amplitude $A = 0.05$ and width $s \approx 6$ lattice units, centred low at $(x_0,y_0,z_0) = (24,24,24)$ in a $48\times48\times96$ domain. The EOS makes the warm core lighter ($\rho = P/(rT)$), and gravity along $-z$ lifts it. There is no continuous heat source: the bubble simply diffuses and rises. ### Simulation parameters | Parameter | Value | | -------------------------- | ------------------------------------------------------------ | | Domain | $48 \times 48 \times 96$ | | Velocity set / operator | D3Q27 / HRR-BGK | | LES / SGS constant | Smagorinsky / $C_S = 0.1$ | | $\tau$ | $0.6$ | | Gravity | $[0, 0, -2\times10^{-4}]$ | | EOS | $r = 1$, $P = 1$, $T_\mathrm{ref} = 1$, $\mathrm{Pr} = 0.71$ | | `bulk_viscosity` ($\nu_b$) | $0.16667 = 1/6$ (i.e. $\omega_\mathrm{bulk} = 1.0$) | | Steps | $6000$ | ### Validation metrics The notebook reads the volume snapshots and asserts the qualitative success criteria of a healthy run: - **No divergence** - every snapshot is finite (no NaN in $\rho$, $\mathbf{u}$). - **Bounded, subsonic velocity** - $\max|\mathbf{u}|$ stays far below $\mathrm{Ma} = 0.1$ and shows no exponential growth (the checkerboard mode is suppressed). Observed peak $\approx 1.1\times10^{-3}$ ($\mathrm{Ma} \approx 2\times10^{-3}$). - **Physical buoyant rise** - the mean vertical velocity is positive and grows smoothly. - **Diffusive relaxation** - the peak temperature decays toward ambient and the warm core stays EOS-consistently lighter than ambient. ## References ```{footbibliography} ``` ```{toctree} --- hidden: --- 01_lowmach_bubble.ipynb ```