SunlightLB Logo

SunlightLB is an open-source 3D lattice Boltzmann code which can be used to solve a variety of hydrodynamics problems, including passive scalar transport problems.



SunlightLB is implemented as a library of C functions. Scripting language support is enabled by a SWIG interface file, which allows, for example, SunlightLB to be used as a perl extension module. Examples of the use of SunlightLB are provided in both C, perl, and python. SunlightLB implements a standard lattice Boltzmann algorithm for three dimensional simulations. It uses a D3Q19 lattice with a twin relaxation time scheme [1-3]. Objects, possibly moving, are included by a link bounce-back method [2]. This enables SunlightLB to solve a variety of hydrodynamics problems such as the computation of flows through pore spaces, the computation of resistance matrices for colloidal hydrodynamics problems, and so on. Both zero Reynolds number flows, and non-zero Reynolds number flows, can be solved. In addition, passive scalar transport is implemented on top of the lattice Boltzmann scheme via a tagged-particle propagation algorithm, with a variety of boundary conditions [4, 5]. This allows simulation of a variety of reaction-advection-diffusion problems, such as a passive scalar adsorbing in a porous material in the presence of a flow (deep-bed filtration).

The algorithms underlying SunlightLB are published in the following literature (see [5] for a condensed summary of the algorithms) :

[1] Qian, d'Humieres and Lallemand, Europhys. Lett. 17, 479 (1992).
[2] Ladd, J. Fluid Mech. 271, 285 (1994).
[3] Behrend, Harris and Warren, Phys. Rev. E 50, 4586 (1994).
[4] Lowe and Frenkel, Physica A 220, 251 (1995).
[5] Warren, Int. J. Mod. Phys. C 8, 889 (1997).

Documentation for SunlightLB is still very sparse unfortunately, though some examples are given.


SunlightLB is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

SunlightLB is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with SunlightCBM. If not, see <>.

Copyright is retained by Unilever.  Please feel free to get in touch if you want to discuss alternative licensing arrangements.


Portions of this site are copyright © 2005-12 Unilever UK Central Resources Ltd
Registered in England & Wales, Company No 29140; Registered Office: Unilever House, Blackfriars, London, EC4P 4BQ, UK.