I am trying to learn the Lattice-Boltzmann method and was looking for some good beginner resources explaining the method. I have been looking at some codes online, but have been having trouble understanding them.

Can someone suggest some good introductory resources about the Lattice-Boltzmann method? If you know of any codes that might be useful then please link to them as well (Matlab preferred).

  • 1
    $\begingroup$ Welcome to SciComp.SE. This is not the right place for what you are asking. If you want to keep your question here I suggest you to describe your problem. What is the equation you are trying to solve? What is the part you don't understand? What have you tried so far? $\endgroup$ – nicoguaro Mar 2 '16 at 22:15
  • $\begingroup$ Have you read the Wikipedia article and checked this site? $\endgroup$ – nicoguaro Mar 2 '16 at 22:16

Back in August 2011, I followed a beginners course on LBM in Canada. The resources for that course are still up and contain a nice tutorial covering a wide range of topics: theory, coding setup, boundary conditions, multiphase, etc. The simpler tutorials are in Matlab, for the more advanced tutorials some knowledge of C/C++ is required. To be frank if you plan on doing anything worthwhile in CFD using LBM you will probably need to step away from Matlab at some point anyway.

As for literature which contains some nice coding samples:

  1. Lattice Boltzmann Modeling: An Introduction for Geoscientists and Engineers by Sukop & Thorne
  2. Lattice Boltzmann Method Fundamentals and Engineering Applications with Computer Codes by Mohamad

As for other literature which is required reading to understand LBMs:

  1. The Lattice Boltzmann Equation: For Fluid Dynamics and Beyond by Succi
  2. Lattice-Gas Cellular Automata and Lattice Boltzmann Models: An Introduction by Wolf-Gladrow

Some opensource codes to get you started:

  1. Palabos - written in C++ for multi-CPU applications. Contains a cavity example in 2D and 3D.
  2. Sailfish CFD - written in Python with a CUDA/OpenCL backend using the pyCuda/pyOpenCl API for multi-GPU applications. Also contains a cavity example in 2D. (my personal favorite)
| cite | improve this answer | |
  • $\begingroup$ I have no idea how those courses were aimed at beginners, the introduction talks about Hermite Polynomials as a foundational concept to understanding LBM (it isn't...) and contains an obesity of context specific nomenclature, to the point of being almost unintelligible to anyone not used to Canadian fluid dynamics courses. How anyone who is a beginner could walk in the door to those lectures and understand what was going on is beyond me. $\endgroup$ – whn Dec 6 '19 at 18:10
  • $\begingroup$ For example, lets go to the first "assignment" where they require you to understand Taylor-Green vortex decay. Yeah, no one who doesn't already know a lot about fluid dynamics has even heard of that, let alone is going to understand what that means. $\endgroup$ – whn Dec 6 '19 at 18:15

Not the answer you're looking for? Browse other questions tagged or ask your own question.