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 (https://www.openlb.net). 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