lbmpy: A Generic Tool for Interactive Development of Highly Efficient Lattice Boltzmann Methods

Holzer M, Rüde U (2021)


Publication Language: English

Publication Type: Conference contribution, Conference Contribution

Publication year: 2021

Event location: Online

Abstract

In this talk, we give an introduction to our open-source lattice Boltzmann code generation framework lbmpy. With lbmpy, the lattice Boltzmann method can be described in an abstract mathematical form, which gives us several significant advantages. First, we can derive the collision operator for many different lattice Boltzmann methods (LBM) directly from the Maxwell-Boltzmann equation and the generating functions. This includes moment-, entropic- or cumulant-based schemes. Thus, developing new models becomes possible in a high-level formulation close to the representations usually found in the literature. Additionally, we can insert scenario-specific information into the equations, like fixing relaxation rates, stencil, force model, turbulence models, streaming pattern or domain sizes, such that the equations can be reduced to a simpler form. This eventually saves floating-point operations (FLOPs) and often leads to significantly more efficient execution. From these simplified equations, highly optimised C, CUDA, or OpenCL kernels can be generated. This systematic approach to realising LBM codes is characterised by a clear separation of concerns between model development and the implementation in a low-level hardware-specific way. To illustrate working with lbmpy, we will present a Multiphysics scenario, where a conservative Allen-Cahn model is combined with a hydrodynamic Lattice Boltzmann method. This coupled method is suitable for simulating two-phase flows with a high-density ratio and high Reynolds numbers. We will demonstrate how the components are realised with lbmpy and how they can be executed directly in an interactive jupyter environment.

Authors with CRIS profile

How to cite

APA:

Holzer, M., & Rüde, U. (2021). lbmpy: A Generic Tool for Interactive Development of Highly Efficient Lattice Boltzmann Methods. In Proceedings of the International Conference for Mesoscopic Methods in Engineering and Science. Online.

MLA:

Holzer, Markus, and Ulrich Rüde. "lbmpy: A Generic Tool for Interactive Development of Highly Efficient Lattice Boltzmann Methods." Proceedings of the International Conference for Mesoscopic Methods in Engineering and Science, Online 2021.

BibTeX: Download