A Modified BGK Collision Operator for Exact Conservation in Numerical Solutions of Boltzmann-BGK
Vienna B. Rossmanith
TL;DR
The paper tackles exact conservation in numerical solutions of the 1D1V Boltzmann-BGK equation by introducing a Strang operator-splitting framework that decouples transport and collision. It combines a third-order Lax-Wendroff-type transport discretization with a second-order, L-stable TR-BDF2 collision integrator, and adds a modified collision operator based on a Hermite-polynomial correction to enforce exact mass, momentum, and energy conservation on truncated velocity grids. The modified Maxwellian tilde M is determined by matching discrete moments via a small 3×3 linear system, enabling exact conservation up to machine precision. The scheme is validated on a test with piecewise Maxwellian initial data, demonstrating conservation and accurate evolution across all Knudsen numbers and confirming asymptotic-preserving behavior as epsilon varies. The authors also provide freely available Java/Python code implementing the method.
Abstract
Ideal gases can be modeled by the Boltzmann equation from statistical physics. Instead of trying to track the position and velocity of a large number of gas molecules, it is possible to describe the particles with a particle distribution function. The Boltzmann equation provides the rule for evolving the distribution function over time, allowing one to simulate the gas dynamics. In this work, we develop a novel numerical method for solving the 1D1V Boltzmann-BGK equation. Several important ingredients are combined to create an accurate, efficient, robust numerical method valid in all flow regimes. First, we make use of operator splitting to create separate transport and collision sub-steps, each of which is easier to discretize than the whole system; second, we introduce a third-order accurate Lax-Wendroff-type scheme for the transport sub-step; third, we make use of the second-order L-stable TR-BDF method for the collision sub-step. The final component we introduce is a novel treatment of the collision sub-step to guarantee that the total mass, momentum, and energy are conserved even in the presence of a truncated velocity range and quadrature errors in computing moments. The key idea is to multiply the Maxwell-Boltzmann distribution in the collision sub-step by a quadratic Hermite polynomial, where the coefficients in the polynomial are chosen to ensure exact conservation. The resulting scheme is verified on piecewise constant initial data with periodic boundary conditions; exact conservation up to machine precision is demonstrated for mass, momentum, and energy. The resulting method is implemented in a freely available Java code with Python plotting routines.
