paper

FastPM: a new scheme for fast simulations of dark matter and halos

arXiv:1603.00476 · doi:10.1093/mnras/stw2123

Abstract

We introduce FastPM, a highly-scalable approximated particle mesh N-body solver, which implements the particle mesh (PM) scheme enforcing correct linear displacement (1LPT) evolution via modified kick and drift factors. Employing a 2-dimensional domain decomposing scheme, FastPM scales extremely well with a very large number of CPUs. In contrast to COmoving-LAgrangian (COLA) approach, we do not require to split the force or track separately the 2LPT solution, reducing the code complexity and memory requirements. We compare FastPM with different number of steps () and force resolution factor () against 3 benchmarks: halo mass function from Friends of Friends halo finder, halo and dark matter power spectrum, and cross correlation coefficient (or stochasticity), relative to a high resolution TreePM simulation. We show that the modified time stepping scheme reduces the halo stochasticity when compared to COLA with the same number of steps and force resolution. While increasing and improves the transfer function and cross correlation coefficient, for many applications FastPM achieves sufficient accuracy at low and . For example, and simulation provides a substantial saving (a factor of 10) of computing time relative to , simulation, yet the halo benchmarks are very similar at . We find that for abundance matched halos the stochasticity remains low even for . FastPM compares well against less expensive schemes, being only 7 (4) times more expensive than 2LPT initial condition generator for (). Some of the applications where FastPM can be useful are generating a large number of mocks, producing non-linear statistics where one varies a large number of nuisance or cosmological parameters, or serving as part of an initial conditions solver.

14 pages, 13 figures. The development is hosted at https://github.com/rainwoodman/fastpm . Major revision addressing referee report from MNRAS; Update code repository URL in comments