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

Uploaded Python 3

File details

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

File metadata

  • Download URL: pixelpop-0.2.13.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.13.tar.gz
Algorithm Hash digest
SHA256 3faa27976b9307c074fd63677574a8201efeb5e489bb0517cc578627e9f81378
MD5 066b525636614223a15a374badc5ff6d
BLAKE2b-256 3fece8656071e9459b7d86a28bb12bba59586fe671fed138abc719e7520db3b8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pixelpop-0.2.13-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.13-py3-none-any.whl
Algorithm Hash digest
SHA256 0cd1053ee708574682b2d2c8cae822995a0a2a801365308c0fc62f3c2931e574
MD5 cc4582a9c045e7ec15aa03c7075b7f3e
BLAKE2b-256 37c697029d067bdc1ad1c9d6513f2b7bd9a6788c63228fa36d13efccac586b9e

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