OpenLB-Open source lattice Boltzmann code

OpenLB-Open source lattice Boltzmann code
复制标题

OpenLB-开源格子玻尔兹曼代码

DOI:
10.1016/j.camwa.2020.04.033
复制
发表时间:
2021
影响因子:
2.9
通讯作者:
Krause M
Krause M
中科院分区:
数学2区
文献类型:
--
作者:
Krause M

文献摘要

相似文献

我们提出了 OpenLB 包,这是一个 C++ 库,为格子玻尔兹曼模拟提供了灵活的框架。该代码是公开可用的,并根据 GNU GPLv2 发布,允许适应和实施其他模型。可扩展性受益于模块化代码结构,例如通过利用模板元编程。该包涵盖了各种有条理的方法,适用于各种运输问题(例如流体、颗粒和热流)。 STL 文件格式的内置处理还允许在复杂几何形状中进行简单的模拟设置。利用 MPI 以及 OpenMP 并行性,用户能够在大规模计算集群上执行这些模拟。它需要最少量的依赖项,并包括几个基准案例和示例。这里提出的软件包旨在为学术界和工业界的申请人和开发人员提供一个开放的访问平台,这有助于将以前的实现和结果扩展到格子玻尔兹曼方法的新应用领域。 OpenLB 经过多次代码审查和出版物的测试和验证。本文总结了研究结果,并简要介绍了基本概念以及并行数据结构的设计。
We present the OpenLB package, a C++ library providing a flexible framework for lattice Boltzmann simulations. The code is publicly available and published under GNU GPLv2, which allows for adaption and implementation of additional models. The extensibility benefits from a modular code structure achieved e.g. by utilizing template meta-programming. The package covers various methodical approaches and is applicable to a wide range of transport problems (e.g. fluid, particulate and thermal flows). The built-in processing of the STL file format furthermore allows for the simple setup of simulations in complex geometries. The utilization of MPI as well as OpenMP parallelism enables the user to perform those simulations on large-scale computing clusters. It requires a minimal amount of dependencies and includes several benchmark cases and examples. The package presented here aims at providing an open access platform for both, applicants and developers, from academia as well as industry, which facilitates the extension of previous implementations and results to novel fields of application for lattice Boltzmann methods. OpenLB was tested and validated over several code reviews and publications. This paper summarizes the findings and gives a brief introduction to the underlying concepts as well as the design of the parallel data structure.