Skip to main content

Research Repository

Advanced Search

LBflow: An extensible lattice Boltzmann framework for the simulation of geophysical flows. Part I: theory and implementation

Llewellin, EW

Authors



Abstract

This article presents LBflow. a flexible, extensible implementation of the lattice Boltzmann method. The code has been developed with geophysical applications in mind, and is designed to be usable by those with no specialist computational fluid dynamics expertise. LBflow provides a 'virtual laboratory' which can be used, rapidly and easily, to obtain accurate flow data for the geometrically complex, three-dimensional flows that abound in geophysical systems. Parameters can be 'steered' by the user at runtime to allow efficient and intuitive exploration of parameter space. LBflow is written in object-oriented C++ and adopts a modular approach. Lattice Boltzmann algorithms for distinct classes of material are encoded in separate modules, which implement a standard interface, and which are linked to LBflow dynamically at runtime. This allows users with programming skill and expertise in the lattice Boltzmann method to create and share new LBfloW modules, extending functionality. A companion application, LBview, provides a graphical user interface to LBflow and renders a user-configurable visualization of the output. LBflow's output can be piped directly to LBview allowing realtime visualization of steered flow. LBview also facilitates analysis of the data generated by LBflow. This article presents an overview of the theory of the lattice Boltzmann method and describes the design and operation of LBflow. The companion paper, 'Part II', describes the practical usage of LBflow and presents detailed validation of its accuracy for a variety of flows. (C) 2009 Elsevier Ltd. All rights reserved.

Citation

Llewellin, E. (2010). LBflow: An extensible lattice Boltzmann framework for the simulation of geophysical flows. Part I: theory and implementation. Computers and Geosciences, 36(2), 115-122. https://doi.org/10.1016/j.cageo.2009.08.004

Journal Article Type Article
Publication Date 2010-02
Journal Computers and Geosciences
Print ISSN 0098-3004
Publisher Elsevier
Volume 36
Issue 2
Pages 115-122
DOI https://doi.org/10.1016/j.cageo.2009.08.004