Lattice Boltzmann Codes

For a brief introduction into the theory of lattice Boltzmann you can refer to my lecture notes on lattice Boltzmann.

Source Code

The following example lattice Boltzmann codes. The codes use my graphics library. You are welcome to download them for research and teaching purposes. Note that they are provided under the GNU General Public License.

D1Q5.cA simple energy conserving one dimensional lattice Boltzman method. How to incorporate interactions into this model in such a way that phase-separation can be observed is still an unsolved problem.
D2Q9.cA simple isothermal two dimensional lattice Boltzman code.
D2Q9_part.cA simple isothermal two dimensional lattice Boltzman code with a single circular particle suspendet.
D1Q3_QM_simple.cA simple one dimensional lattice Boltzmann method to solve the time dependent Schroedinger equation. The method works by writing the Schroedinger equation as a continuity equation and an Euler equation as outlined in the introduction to Lattice Boltzmann.


Web Resources

There is a Wikipedia resource for lattice Boltzmann which is still rather rudimentary.

The following research groups work in the area of lattice Boltzmann simulations. (If your research group is not mentioned here, but should be, just send me an email.) As of now this is an unordered collection of web-resources.

OpenLBJonas Latt is making his standard lattice Boltzmann code in C++ available to use under the GNU public license. Currently this is a code of one component systems with arbitrary boundaries. Probably useful for flow through porous media and turbulence simulations.
Sheffield, U.K.Chris Care's group at Sheffield Hallam University. Liquid Crystals, multi-component flows and more.
Norfolk, VALi-Shi Luo. Fundamental theory of the lattice Boltzmann method.
Oxford, U.K.Julia Yeomans. Liquid Crystals and multi-component fluids.
Edinburgh, U.K.Mike Cates. Soft Condensed Matter. His group uses Lattice Boltzmann in some of his research on Colloidal dynamics and multiphase fluids.
NIST, USANicos S. Martys, Parallel simulations with lattice Boltzmann.


22 April 2005: The init() routine in the D2Q9 codes did not set the distribution to the equilibrium distribution if the initial velocity was not set to zero. This has been corrected.

Feature Requests & Known Bugs

(April 2007) I have been asked to also provide some multi-phase multi-component source codes. I hope to provide some codes in the near future.

Top of page