LEGACY ALERT -- note that Taxila LBM has moved to github: https://github.com/ecoon/Taxila-LBM
Welcome to the (very much work-in-progress) Taxila LBM website.
Taxila LBM is a parallel implementation of the Lattice Boltzmann Method for simulation of flow in porous and geometrically complex media.
- solves both single and multi-phase systems.
- is capable of solving D2Q9, D3Q19, and other mesh dependencies, on 2D or 3D grids. It is easily extended to other models of connectivity.
- is based upon the Shan and Chen Lattice Boltzmann Method (with many advances).
- handles multi-phase systems with different phase viscosities and/or molecular masses.
- includes the ability to use (or not use) higher order derivatives or multiple relaxation times to improve stability at large viscosity ratios.
- enables multiple mineral/wall materials, allowing for different wettabilities and contact angles on each mineral.
- supports arbitrary, heterogeneous boundary conditions.
- is massively parallel, showing excellent strong and weak scaling to tens of thousands of cores on Jaguar / Titan.
- is just as easily compiled and run on multi/single core desktops and laptops (tested on MacOS / Linux only).
- is modular, "object-oriented" Fortran-90, enabling extension for new features.
- leverages PETSc, the Portable, Extensible Toolkit for Scientific Computation for data structures, communication, and (parallel) I/O.
- may be called from PFloTran, a massively parallel solver for reactive transport in porous media. This allows for micro-scale solution of reactive transport, using Taxila LBM for flow (this coupling is not completely available as open source yet).
- currently only allows structured, regular meshes.
- currently is not implemented on GPUs.
- currently does not handle curved geometries or other non-bounceback style interior boundary conditions (but we're accepting contributions!)
Authors, Contact, and Support
- Ethan Coon (ecoon _at_ lanl.gov (Primary Contact)
- Mark Porter (porterma _at_ lanl.gov)
- Qinjun Kang (qkang _at_ lanl.gov)
The software framework of this work was supported by the DR-??, PI Bill Carey (bcarey@…). The physics kernels of this work are based upon implementations by Qinjun Kang and collaborators over the course of various projects at LANL. Much support was provided by the development team of the pore-scale and hybrid modeling group for carbon sequestration at LANL, including especially
- Peter Lichtner (lichtner@…)
- David Moulton (moulton@…)
- Getting the code
- Installing pre-requisite third party libraries
- Installing Taxila LBM
- Running Taxila LBM -- a first example
- Reading output and visualization
For more, see the source code's INSTALL and README files. A paper with most functionality and theory described is in preparation, and more extensive documentation and Users Manual will be completed as time and money allow...
Taxila LBM is available under the LGPL license. Please see the source code's COPYRIGHT and LICENSE files.
If you use this code in your work, please cite...
Code design, performance, etc: Ethan T Coon, Mark L Porter, Qinjun Kang. Taxila LBM: a parallel, modular lattice Boltzmann framework for simulating pore-scale flow in porous media. Computational Geosciences. DOI 10.1007/s10596-013-9379-6
Theory, models: Mark L. Porter, E. T. Coon, Q. Kang, J. D. Moulton, and J. W. Carey. Multicomponent interparticle-potential lattice Boltzmann model for fluids with large viscosity ratios. Phys Rev E. DOI 10.1103/PhysRevE.86.036701