OpenLB User Guide: Associated with Release 1.6 of the Code

Adrian Kummerländer,Samuel J. Avis,Halim Kusumaatmaja,Fedor Bukreev,Michael Crocoll,Davide Dapelo,Simon Großmann,Nicolas Hafen,Shota Ito,Julius Jeßberger,Eliane Kummer,Jan E. Marquardt,Johanna Mödl,Tim Pertzel,František Prinz,Florian Raichle,Martin Sadric,Maximilian Schecher,Dennis Teutscher,Stephan Simonis,Mathias J. Krause
2024-08-08
Abstract:OpenLB is an object-oriented implementation of LBM. It is the first implementation of a generic platform for LBM programming, which is shared with the open source community (GPLv2). Since the first release in 2007, the code has been continuously improved and extended which is documented by thirteen releases as well as the corresponding release notes which are available on the OpenLB website (<a class="link-external link-https" href="https://www.openlb.net" rel="external noopener nofollow">this https URL</a>). The OpenLB code is written in C++ and is used by application programmers as well as developers, with the ability to implement custom models OpenLB supports complex data structures that allow simulations in complex geometries and parallel execution using MPI, OpenMP and CUDA on high-performance computers. The source code uses the concepts of interfaces and templates, so that efficient, direct and intuitive implementations of the LBM become possible. The efficiency and scalability has been checked and proved by code reviews. This user manual and a source code documentation by DoxyGen are available on the OpenLB project website.
Mathematical Software,Distributed, Parallel, and Cluster Computing,Numerical Analysis
What problem does this paper attempt to address?