Slurm:用于等离子体建模的流体粒子胞中粒子代码
计算物理
2018-12-05 v2
摘要
随着百亿亿次计算时代的临近,基于粒子的模型因其优异的可扩展性而成为研究焦点。我们提出一个新代码 Slurm,它实现了经典的粒子胞中粒子(particle-in-cell)算法,用于磁化流体与等离子体的建模。其特性包括粒子体积演化,可抑制数值有限网格不稳定性,并允许对 Kelvin-Helmholtz 与 Rayleigh-Taylor 等关键物理不稳定性进行建模。Slurm 中的磁场通过粒子携带的电磁矢量势来处理。磁通的数值耗散极低,且磁场的螺线管性质被保持到机器精度。采用双链表来承载粒子,因此开放边界条件的实现简单高效。该代码用 C++ 编写,使用 OpenMP 多线程,除 Boost 外无外部依赖。它易于在多核台式机以及大型共享内存机器上安装和使用。Slurm 是其首要目标——日球层空间天气事件建模——的理想工具。本文引导读者了解物理模型、算法以及所有重要的实现细节。理想情况下,读完本文后,读者应能够使用 Slurm 求解所需问题,或创建新的流体 PIC 代码。
引用
@article{arxiv.1802.08838,
title = {Slurm: fluid particle-in-cell code for plasma modeling},
author = {Vyacheslav Olshevsky and Fabio Bacchini and Stefaan Poedts and Giovanni Lapenta},
journal= {arXiv preprint arXiv:1802.08838},
year = {2018}
}
备注
Accepted to the special issue "Advances in the Numerical Simulation of Plasmas" of the Computer Physics Communications