waLBerla (widely applicable Lattice Boltzmann from Erlangen) is a massively parallel framework for multiphysics simulation applications. Beyond computational fluid dynamics with the lattice Boltzmann method, the framework now features multiphase and free-surface flows, rigid body and particle dynamics as well as fluid-structure coupling with moving geometries.
WaLBerla is designed for performance across scales. Written in modern C++20 and utilizing vectorization, OpenMP, CUDA and HIP, the framework makes the most of modern parallel processors of all sizes. Its block-structured computational grids allow for efficient distributed parallelization, effective meshing and grid refinement, as well as dynamic load balancing. Near-perfect scaling behavior has been demonstrated on state-of-the-art supercomputers, such as SuperMUC-NG, JUWELS Booster and LUMI-G.
Powered by the lattice Boltzmann method, waLBerla offers a platform for computational fluid dynamics across a wide range of applications. Using the lbmpy library, applications can choose from a variety of collision models, from the foundational BGK to the highly accurate K17 cumulant method. Complement these with link-wise boundary conditions, use memory-efficient in-place streaming, or include mass-conserving volumetric mesh refinement to construct a flow solver taylored to your needs.
With its versatile Python-based metaprogramming ecosystem, waLBerla tackles the difficulties of modern-day hardware diversity through code generation. Describe numerical methods using a mathematical toolbox and let the code generator take care of the implementation details. Automated generation of hardware-specific parallel kernels makes it easy to target and switch between different platforms without sacrificing performance.
Simulate realistic particle interactions with mesa-pd, waLBerla’s high-performance DEM module. Fully customizable through code generation, mesa-pd supports simulations of rigid body dynamics, contact forces, and complex material models — all with full parallel scalability.
The waLBerla project aims for sustainable software development using latest best practices. A modular code base, clean interfaces, and adherence to modern coding standards are the basis for extensibility and long-term software stability. Continuous integration and testing ensure reproducible builds and code robustness. Being fully open-source, waLBerla welcomes community contributions through its GitLab development platform. The framework is published as free software under the GNU GPLv3.
Tackle complex, real-world problems by coupling LBM, DEM, and other solvers in waLBerla. Construct multiphase and temperature-dependent problems without ever leaving the LBM framework; simulate particulate flows with fully resolved particles; or include complex and moving geometries using the partially saturated cells method.
waLBerla is available through a Git repository hosted on our GitLab server.
Use this option if you want to keep track of new features easily.
In case you want to contribute contact us to get an account for GitLab.
Instead of using Git, you can also directly download the source code as an archive of your choice.
They contain the most recent release version of waLBerla.