Skip to main content

Powered by numpyro and jax, package for fitting the GW population with a nonparametric binning scheme, where bins are correlated with only their nearest neighbors. Meant for inferring the GW population distribution nonparametrically in higher dimensions.

Project description

PixelPop

Package for nonparameteric (AKA weakly modeled, data-driven) Bayesian inference of a gravitational wave population, built on JAX and numpyro. Aimed particularly at correlated nonparameteric inference in spaces with dimension 2-3.

This method works by binning the space into a cartesian grid, and inferring the log-rate density in each bin, each of which is a free parameter. Each bin is coupled to its nearest-neighbors using an intrinsic conditional-autoregressive (ICAR) model.

The dimension of the inference problem can become very large (e.g. 10^4 for a 2-dimensional space with a density of 100 bins along each axis), and we leverage auto-differentiation and GPU acceleration in JAX, as well as the efficient No-U-Turn HMC sampler in numpyro to sample the posterior.

Running PixelPop

Please see the example run scripts in the examples/ directory.

Attribution

Please cite Heinzel et al. (2025) if you use PixelPop in your research.

@article{Heinzel:2024jlc,
    author = "Heinzel, Jack and Mould, Matthew and {\'A}lvarez-L{\'o}pez, Sof{\'\i}a and Vitale, Salvatore",
    title = "{High resolution nonparametric inference of gravitational-wave populations in multiple dimensions}",
    eprint = "2406.16813",
    archivePrefix = "arXiv",
    primaryClass = "astro-ph.HE",
    doi = "10.1103/PhysRevD.111.063043",
    journal = "Phys. Rev. D",
    volume = "111",
    number = "6",
    pages = "063043",
    year = "2025"
}

Additionally, consider citing Heinzel et al. (2025) which applies PixelPop to GWTC-3

@article{Heinzel:2024hva,
    author = "Heinzel, Jack and Mould, Matthew and Vitale, Salvatore",
    title = "{Nonparametric analysis of correlations in the binary black hole population with LIGO-Virgo-KAGRA data}",
    eprint = "2406.16844",
    archivePrefix = "arXiv",
    primaryClass = "astro-ph.HE",
    doi = "10.1103/PhysRevD.111.L061305",
    journal = "Phys. Rev. D",
    volume = "111",
    number = "6",
    pages = "L061305",
    year = "2025"
},

and Alvarez-Lopez et al. (2025) which shows PixelPop can accurately recover the complex, multi-dimensional correlations in a realistic population-synthesis population.

@article{Alvarez-Lopez:2025ltt,
    author = "Alvarez-Lopez, Sofia and Heinzel, Jack and Mould, Matthew and Vitale, Salvatore",
    title = "{Nowhere left to hide: revealing realistic gravitational-wave populations in high dimensions and high resolution with PixelPop}",
    eprint = "2506.20731",
    archivePrefix = "arXiv",
    primaryClass = "astro-ph.HE",
    month = "6",
    year = "2025"
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pixelpop-0.2.12.tar.gz (18.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pixelpop-0.2.12-py3-none-any.whl (64.7 kB view details)

Uploaded Python 3

File details

Details for the file pixelpop-0.2.12.tar.gz.

File metadata

  • Download URL: pixelpop-0.2.12.tar.gz
  • Upload date:
  • Size: 18.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.6

File hashes

Hashes for pixelpop-0.2.12.tar.gz
Algorithm Hash digest
SHA256 cfdbcafb6e939d3adc5c3f4ab419c72b7efb899e6977621f35d8a1ec868d6c7c
MD5 01ef3eabd89c8d8a6942f30b6cded372
BLAKE2b-256 3681ed0344efca26a5db8a55fa17d09c9ceca8e7be61479b19322c990022fe96

See more details on using hashes here.

File details

Details for the file pixelpop-0.2.12-py3-none-any.whl.

File metadata

  • Download URL: pixelpop-0.2.12-py3-none-any.whl
  • Upload date:
  • Size: 64.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.6

File hashes

Hashes for pixelpop-0.2.12-py3-none-any.whl
Algorithm Hash digest
SHA256 81ae537a26a710b0526ce6a267b150a329888408ab50fbb113676eecae27872a
MD5 836cd42a446a28ecf0b5e529b66efcb6
BLAKE2b-256 cc195d0be93238329bd91dc103051369a2e289b0832762193312e0ee0cd8dabd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page