PyUltraLight: A Pseudo-Spectral Solver for Ultralight Dark Matter Dynamics

Faber Edwards,Emily Kendall,Shaun Hotchkiss,Richard Easther
DOI: https://doi.org/10.1088/1475-7516/2018/10/027
2018-10-17
Abstract:PyUltraLight simulates the dynamics of ultralight dark matter in a non-expanding background. PyUltraLight can describe the evolution of several interacting ultralight dark matter halos or one or more halos orbiting a central, fixed Newtonian potential, the latter scenario corresponding to dwarf galaxies orbiting a massive central galaxy. We verify PyUltraLight by showing that it reproduces qualitative dynamical features of previously published simulations and demonstrate that it has excellent energy-conservation properties. PyUltraLight is implemented in a Python-based Jupyter notebook, solving the Schrodinger-Poisson equation governing ultralight scalar field dark matter dynamics in the non-relativistic regime using a symmetrised split-step pseudospectral algorithm. The notebook interface makes it simple to specify simulation parameters and visualise the resulting output but performance-critical routines are managed via calls to computationally efficient compiled libraries. PyUltraLight runs on standard desktop hardware with support for shared memory mutlithreading and is available on GitHub.
Cosmology and Nongalactic Astrophysics
What problem does this paper attempt to address?