论文标题

霜冻:均衡动量的CUDA实现了分层四阶向前符号积分器

FROST: a momentum-conserving CUDA implementation of a hierarchical fourth-order forward symplectic integrator

论文作者

Rantala, Antti, Naab, Thorsten, Springel, Volker

论文摘要

我们提出了四阶前向符号积分器的新型分层公式及其在GPU加速的直接夏季n-body代码霜冻中的数值实现。由于其层次性质,新的集成商特别适合具有较大动力学范围的模拟。通过计算牛顿加速度之外,通过计算附加梯度术语来使其在四阶符号积分器中的严格积极积分子阶段成为可能。所有力量计算和踢操作都是同步的,因此积分算法显然是势头的。我们还采用了一个时间步骤对称过程来大致使用自适应个体时间步长恢复时间可逆性。我们在一系列的二元,几种体和百万型模拟中演示,这些模拟将能量保存到$ |ΔE / e |的水平。 \ sim 10^{ - 10} $,而线性和角动量中的错误实际上可以忽略不计。对于典型的星团仿真,我们发现霜缩放到$ n_ \ mathrm {gpu}^\ mathrm {max} \ sim 4 \ sim 4 \ sim 4 \ times n/10^5 $ gpus,使直接求和n-boto n = 10^6 $在具有数百和更多gpus的系统上的$ n = 10^6 $粒子上。由于层次集成的性质,包含开普勒求解器或带有牛顿后校正的正规集成器,以便在代码中进行紧密相遇和二进制文件。

We present a novel hierarchical formulation of the fourth-order forward symplectic integrator and its numerical implementation in the GPU-accelerated direct-summation N-body code FROST. The new integrator is especially suitable for simulations with a large dynamical range due to its hierarchical nature. The strictly positive integrator sub-steps in a fourth-order symplectic integrator are made possible by computing an additional gradient term in addition to the Newtonian accelerations. All force calculations and kick operations are synchronous so the integration algorithm is manifestly momentum-conserving. We also employ a time-step symmetrisation procedure to approximately restore the time-reversibility with adaptive individual time-steps. We demonstrate in a series of binary, few-body and million-body simulations that FROST conserves energy to a level of $|ΔE / E| \sim 10^{-10}$ while errors in linear and angular momentum are practically negligible. For typical star cluster simulations, we find that FROST scales well up to $N_\mathrm{GPU}^\mathrm{max}\sim 4\times N/10^5$ GPUs, making direct summation N-body simulations beyond $N=10^6$ particles possible on systems with several hundred and more GPUs. Due to the nature of hierarchical integration the inclusion of a Kepler solver or a regularised integrator with post-Newtonian corrections for close encounters and binaries in the code is straightforward.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源