We contribute a new kinetic solver for incompressible and single-phase fluid simulation interacting with complex solids. By relying on only three moments per grid node instead of the usual 27-direction velocity discretization, we reduce memory usage threefold and improve efficiency by an order of magnitude, with limited impact on accuracy. As a consequence, a high-quality visual simulation of a tractor in a wind tunnel (with passively-advected colored particles to visualize the flow) can be achieved efficiently on a commodity GPU.
Kinetic solvers for incompressible fluid simulation were designed to run efficiently on massively parallel architectures such as GPUs. While these lattice Boltzmann solvers have recently proven much faster and more accurate than the macroscopic Navier-Stokes-based solvers traditionally used in graphics, it systematically comes at the price of a very large memory requirement: a mesoscopic discretization of statistical mechanics requires over an order of magnitude more variables per grid node than most fluid solvers in graphics. In order to open up kinetic simulation to gaming and simulation software packages on commodity hardware, we propose a High-Order Moment-Encoded Lattice-Boltzmann-Method solver which we coined HOME-LBM, requiring only the storage of a few moments per grid node, with little to no loss of accuracy in the typical simulation scenarios encountered in graphics. We show that our lightweight and lightspeed fluid solver requires three times less memory and runs ten times faster than state-of-the-art kinetic solvers, for a nearly-identical visual output.
Octopus: A complex object in the shape of an octopus with multiple serpentine grooves is placed in a turbulent wind field. A turbulent wake is formed.
Wind through a fern: A static 3D model of a fern is placed in a strong flow field, generating a complex wake (visualized with particles).
Propeller: A spinning propeller placed in a constant flow field going towards the right creates complex vortical patterns. In this simulation, passive colored particles are emitted at the tips of the four blades purely for visualization purposes.
Leaves blown by a jet: Several leaves of different weights are dropped on a jet flow, demonstrating two-way coupling effects.
Air comb: we simulate a hair comb containing sixty teeth moving around and creating fine vortices in its wake, properly capturing the complex fluid-solid interaction engendered by this finely-detailed geometry.
Rotor lift: Spinning a rotor (2 kilograms, span of 3.75 meters) at 19 rad/s makes it lift off; once the applied torque stops, it falls back onto the floor.
Falling cars. In this two-way coupling example of a very light car (top) and of a heavier car (bottom) dropped on the floor from a height, the car’s terminal speed ends up being very different for each case, and its wake disturbs a static smoke ring.