ELI5 - Lattice- Boltzmann CFD.. What is it and how is it different from RANS CFD modeling?

Well hot damn, a question on my specialty!

Well, from a broad overview perspective:

RANS, and NS in general, is based on fluid being a continuum, which it usually is basically. However, in reality it is made up of lots of molecules doing all sorts of seemingly random things to make what we see on our macroscopic level appear deterministic.

But, you can actually describe the fluid as a bunch of molecules, like it really is. This behavior is captured, statistically (so you don't have to describe every molecule) by the Boltzmann equation. We can apply some models based on ways these particles collide, a special differncing scheme, and arrive at the lattice Boltzmann equation. This equation is proven (via Chapman-Enskog expansion) to recover the N-S equations! So we now have something that is based on the more fundamental physics which can model big systems. What's even better is that by modifying that model of how the particles collide you can capture stuff N-S absolutely cannot!

Boundary conditions are super easy to implelent for arbitrary geometry and are 2nd order accurate.

There are no non-linearities (as in the N-S equations), so computation is fast and efficient with a minimum of "bandaids" to get it working. Also, it is super efficient computationally because the the data you need to progress in time and space only relies on one node, no need for high order extrapolations. It is superior for turbulence, multiphase, fast runs, incompressible flows, high Kn flows, and a bunch of other stuff vs. RANS.

To your specific questions. Where LBM falls behind a bit of RANS is compressible flows. It can do them, but not to the same accuracy quite yet. So, for flow over the car example, if the Mach number is below 0.3 LBM will be more accurate and efficient than NS, but if the car is extremely speedy, it isn't your best option (yet).

Technically there is no mesh. But, there is a lattice which basically functions the same. In most cases this lattice is on a regular cartesian grid, and simple modifications to the simple boundary condition schemes to handle complex geometry. So basically no meshing required. However, sometimes finite volume is used and an unstructred grid needs to be generated similarly to N-S.

But overall, preprocessing is much easier, and in many ways so is post processing.

That should keep things high level, but if there is interest in more theory or detail I can provide that. I am currently a PhD candidate creating new math methods within the LBM framework to describe more phenomena and bring it to the point of replacing NS.

/r/CFD Thread