pocoMC: A Python package for accelerated Bayesian inference in astronomy and cosmology

Minas Karamanis, David Nabergoj, Florian Beutler, John A. Peacock, Uros Seljak

Submitted on 12 July 2022


pocoMC is a Python package for accelerated Bayesian inference in astronomy and cosmology. The code is designed to sample efficiently from posterior distributions with non-trivial geometry, including strong multimodality and non-linearity. To this end, pocoMC relies on the Preconditioned Monte Carlo algorithm which utilises a Normalising Flow in order to decorrelate the parameters of the posterior. It facilitates both tasks of parameter estimation and model comparison, focusing especially on computationally expensive applications. It allows fitting arbitrary models defined as a log-likelihood function and a log-prior probability density function in Python. Compared to popular alternatives (e.g. nested sampling) pocoMC can speed up the sampling procedure by orders of magnitude, cutting down the computational cost substantially. Finally, parallelisation to computing clusters manifests linear scaling.


Comment: 6 pages, 1 figure. Submitted to JOSS. Code available at

Subjects: Astrophysics - Instrumentation and Methods for Astrophysics; Astrophysics - Cosmology and Nongalactic Astrophysics; Physics - Computational Physics