Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

PyCOOL — A Cosmological Object-Oriented Lattice code written in Python

Journal Article · · Journal of Cosmology and Astroparticle Physics

There are a number of different phenomena in the early universe that have to be studied numerically with lattice simulations. This paper presents a graphics processing unit (GPU) accelerated Python program called PyCOOL that solves the evolution of scalar fields in a lattice with very precise symplectic integrators. The program has been written with the intention to hit a sweet spot of speed, accuracy and user friendliness. This has been achieved by using the Python language with the PyCUDA interface to make a program that is easy to adapt to different scalar field models. In this paper we derive the symplectic dynamics that govern the evolution of the system and then present the implementation of the program in Python and PyCUDA. The functionality of the program is tested in a chaotic inflation preheating model, a single field oscillon case and in a supersymmetric curvaton model which leads to Q-ball production. We have also compared the performance of a consumer graphics card to a professional Tesla compute card in these simulations. We find that the program is not only accurate but also very fast. To further increase the usefulness of the program we have equipped it with numerous post-processing functions that provide useful information about the cosmological model. These include various spectra and statistics of the fields. The program can be additionally used to calculate the generated curvature perturbation. The program is publicly available under GNU General Public License at https://github.com/jtksai/PyCOOL. Some additional information can be found from http://www.physics.utu.fi/tiedostot/theory/particlecosmology/pycool/.

OSTI ID:
22280131
Journal Information:
Journal of Cosmology and Astroparticle Physics, Journal Name: Journal of Cosmology and Astroparticle Physics Journal Issue: 04 Vol. 2012; ISSN 1475-7516
Country of Publication:
United States
Language:
English

Similar Records

ELLIPT2D: A Flexible Finite Element Code Written Python
Technical Report · Wed Mar 21 23:00:00 EST 2001 · OSTI ID:781479

python binder for libROM
Software · Tue Jul 18 20:00:00 EDT 2023 · OSTI ID:code-111342

galpy: A python LIBRARY FOR GALACTIC DYNAMICS
Journal Article · Sat Jan 31 23:00:00 EST 2015 · Astrophysical Journal, Supplement Series · OSTI ID:22340088