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.3.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.3-py3-none-any.whl (49.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pixelpop-0.2.3.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.3.tar.gz
Algorithm Hash digest
SHA256 f268589bcda27fd80c05f01f3be7232b57d3e4bd9d07dd1970e9df9cddcf2017
MD5 f73b24807d6869598c1e6a104c794c48
BLAKE2b-256 a28d1a27cff4f18c00823904a7f6f1fd1ff754afef780bb55d1da7eec04bea41

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pixelpop-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 49.5 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 bf3285b947f7af5378b1d8c35896ee79b456de38c76065c99f54900f46e33b6e
MD5 1783974f681b5dd36911246ebd2b435f
BLAKE2b-256 c82a14dd049f2aee0088e3212a99f901b14cae5b9f6b5d88e0b4971f032acac2

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