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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pixelpop-0.2.8.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.8.tar.gz
Algorithm Hash digest
SHA256 fbe035614d4765b6f2d3232f57a6edc24262091d0bcb85b78ab13cef03139034
MD5 97e2abe32153b4495bf5e6d48a47354b
BLAKE2b-256 92a29cf0c72690c352208af47756af11948a0f2994bfd1e95ef54afe858427a1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pixelpop-0.2.8-py3-none-any.whl
  • Upload date:
  • Size: 63.4 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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 88cfbd3b6c18de2cd35885966f6bfff9d72abe2abf79c246d4c189ad0248907f
MD5 7815d77cff343f3756bc23dde055c183
BLAKE2b-256 bce014f9e22936a3c9331d527fb01b3c451525bd389cd9d2af7a89305553fd45

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