A personal collection of research codes for lattice Boltzmann methods in periodic 2D domains.
For actual simulation work take a look at other codes.
When organizing an LBM code, there are two main choices for the data layout
- Structure of Arrays (SoA), and
- Array of Structures (AoS)
In the SoA layout, the PDF's pointing in a given direction at different spatial points are stored contiguously. In the AoS layout, the PDF's pointing in different directions at a given spatial point are stored contiguously.
The chosen layout carries large performance implications. For optimum performance the collision and streaming kernels should be specialized for the chosen layout.
Some of these libraries may also be used in the future:
For large-scale simulations consider using one of the following freely availables codes
For industrial purpose simulations the following solvers can also be used
- Dassault Systèmes Simulia PowerFLOW and XFlow (formerly from Exa Corporation)
- Altair ultraFluidX (formerly from FluiDyna GmbH)
- ProLB
A bunch of other (mostly research oriented) codes are described in the list by Sthavishtha Bhopalam Rajakumar (@sthavishtha).