Symbolic implementation of extensions of the PyCosmo Boltzmann solver. Moser, B., Lorenz, C. S., Schmitt, U., Réfrégier, A., Fluri, J., Sgier, R., Tarsitano, F., & Heisenberg, L. Astronomy and Computing, June, 2022.
Symbolic implementation of extensions of the PyCosmo Boltzmann solver [link]Paper  doi  abstract   bibtex   
PyCosmo is a Python-based framework for the fast computation of cosmological model predictions. One of its core features is the symbolic representation of the Einstein-Boltzmann system of equations. Efficient C/C++ code is generated from the SymPy symbolic expressions making use of the sympy2c package. This enables easy extensions of the equation system for the implementation of new cosmological models. We illustrate this with three extensions of the PyCosmo Boltzmann solver to include a dark energy component with a constant equation of state, massive neutrinos and a radiation streaming approximation. We describe the PyCosmo framework, highlighting new features, and the symbolic implementation of the new models. We compare the PyCosmo predictions for the ΛCDM model extensions with CLASS, both in terms of accuracy and computational speed. We find a good agreement, to better than 0.1% when using high-precision settings and a comparable computational speed. Links to the Python Package Index (PyPI) page of the code release and to the PyCosmo Hub, an online platform where the package is installed, are available at: https://cosmology.ethz.ch/research/software-lab/PyCosmo.html.
@article{moser_symbolic_2022,
	title = {Symbolic implementation of extensions of the {PyCosmo} {Boltzmann} solver},
	issn = {2213-1337},
	url = {https://www.sciencedirect.com/science/article/pii/S2213133722000373},
	doi = {10.1016/j.ascom.2022.100603},
	abstract = {PyCosmo is a Python-based framework for the fast computation of cosmological model predictions. One of its core features is the symbolic representation of the Einstein-Boltzmann system of equations. Efficient C/C++ code is generated from the SymPy symbolic expressions making use of the sympy2c package. This enables easy extensions of the equation system for the implementation of new cosmological models. We illustrate this with three extensions of the PyCosmo Boltzmann solver to include a dark energy component with a constant equation of state, massive neutrinos and a radiation streaming approximation. We describe the PyCosmo framework, highlighting new features, and the symbolic implementation of the new models. We compare the PyCosmo predictions for the ΛCDM model extensions with CLASS, both in terms of accuracy and computational speed. We find a good agreement, to better than 0.1\% when using high-precision settings and a comparable computational speed. Links to the Python Package Index (PyPI) page of the code release and to the PyCosmo Hub, an online platform where the package is installed, are available at: https://cosmology.ethz.ch/research/software-lab/PyCosmo.html.},
	language = {en},
	urldate = {2022-06-13},
	journal = {Astronomy and Computing},
	author = {Moser, B. and Lorenz, C. S. and Schmitt, U. and Réfrégier, A. and Fluri, J. and Sgier, R. and Tarsitano, F. and Heisenberg, L.},
	month = jun,
	year = {2022},
	keywords = {cosmological neutrinos, cosmology, dark energy, uses sympy},
	pages = {100603},
}

Downloads: 0