arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2004.03509physics.comp-phphysics.chem-phphysics.flu-dyn
收藏

格子Boltzmann模型的半自动构造

Semi-automatic construction of Lattice Boltzmann models

Dominic Spiller, Burkhard Duenweg

摘要:

构造格子玻尔兹曼模型的一个关键步骤是定义一组合适的格子速度,以及正确分配相关的权重。对于高阶模型,这个问题的解决方案需要一个不平凡的努力。本文概述了一个公开可用的Python脚本的功能,该脚本是为了帮助研究人员完成这项任务而编写的。声速$c_s$被认为是一个参数,可以在限制范围内任意选择。在此前提下,麦克斯韦-玻尔兹曼约束方程是确定权重的线性方程组,因此可以通过标准线性代数库例程进行数值求解。通过适当的压缩,张量方程被映射成一组等价的标量方程,这大大简化了处理。对于用户提供的一组速度壳,软件首先检查是否存在权重的解,如果它也是唯一的,则返回它。在这种情况下,软件还计算产生正权重的$c_s$值的范围。具有明确定义的特殊$c_s$值的标准模型(如D3 Q19)则会导致其中一个权重为零的极限情况。在解的无限集合的情况下,用户可以通过提供$c_s$值,然后在标准线性规划的框架内最小化一个或多个权重来找到一个特定的解。一些例子说明了该方法的可行性和实用性。许多在文献中讨论过的模型都被很好地复制了,而软件也能够找到一些更高阶的新模型。

英文摘要:

A crucial step in constructing a Lattice Boltzmann model is the definition of a suitable set of lattice velocities, and the correct assignment of the associated weights. For high-order models, the solution of this problem requires a non-trivial effort. The paper outlines the functioning of a publicly available Python script which has been written to assist researchers in that task. The speed of sound $c_s$ is considered as a parameter, which can, within limits, be chosen at will. Under this premise, the Maxwell-Boltzmann constraint equations are a system of linear equations to determine the weights, and hence amenable to numerical solution by standard linear algebra library routines. By suitable contractions, the tensor equations are mapped to a set of equivalent scalar equations, which simplifies the treatment significantly. For a user-supplied set of velocity shells, the software first checks if a solution for the weights exists, and returns it if it also happens to be unique. In such a case, the software also calculates the range of $c_s$ values that yield positive weights. Standard models like D3Q19 with a well-defined special $c_s$ value then result as limiting cases where one of the weights vanishes. In case of an infinite set of solutions, the user may find one particular solution by supplying a $c_s$ value, and then minimizing one or several weights within the framework of standard linear programming. Some examples illustrate the feasibility and usefulness of the approach. A number of models that have been discussed in the literature are nicely reproduced, while the software has also been able to find some new models of even higher order.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑