Skip to main content

Python package PyPI version Conda Version Conda Downloads

Dingo

Dingo (Deep Inference for Gravitational-wave Observations) is a Python program for analyzing gravitational wave data using neural posterior estimation. It dramatically speeds up inference of astrophysical source parameters from data measured at gravitational-wave observatories. Dingo aims to enable the routine use of the most advanced theoretical models in analyzing data, to make rapid predictions for multi-messenger counterparts, and to do so in the context of sensitive detectors with high event rates.

The basic approach of Dingo is to train a neural network to represent the Bayesian posterior conditioned on data. This enables amortized inference: when new data are observed, they can be plugged in and results obtained in a small amount of time. Tasks handled by Dingo include

  • building training datasets;
  • training normalizing flows to estimate the posterior density;
  • performing inference on real or simulated data; and
  • verifying and correcting model results using importance sampling.

Installation

Pip

To install using pip, run the following within a suitable virtual environment:

pip install dingo-gw

This installs Dingo and its runtime dependencies, as specified in
pyproject.toml.

Optional functionality can be enabled via extras, for example:

pip install "dingo-gw[wandb,pyseobnr]"

Conda

Dingo is also available from the conda-forge repository.
To install using conda, first activate a conda environment, then run:

conda install -c conda-forge dingo-gw

Development install

If you would like to make changes to Dingo or contribute to its development, install it from source.

First clone the repository:

git clone git@github.com:dingo-gw/dingo.git
cd dingo-gw

We recommend using uv for development installs, as it provides fast, reproducible dependency resolution.

Create a virtual environment and install all development dependencies:

uv sync

This installs Dingo in editable mode along with development, documentation, and typing dependencies. To also install optional dependencies, use

uv sync --extra wandb --extra pyseobnr

Alternative (pip)

If you prefer pip, create and activate a virtual environment:

python3 -m venv dingo-venv
source dingo-venv/bin/activate

Install Dingo in editable mode with development tools:

pip install -e ".[dev]"

Optional user-facing features can be enabled via extras, for example:

pip install -e ".[dev,wandb]"

Usage

For instructions on using Dingo, please refer to the documentation.

Using agents for development

There is a CLAUDE.md file in this repository with basic instructions for coding agents. All agents read multiple files for instructions that have different scopes. It is recommended to leave the provided CLAUDE.md as is and put additional instructions into the user-specific files ~/.claude/CLAUDE.md (systemwide) and CLAUDE.local.md (repo specific) which should then be added to the .gitignore file. If you use other agents, please follow the instructions for Codex or Antigravity and again put additional files in the .gitignore.

References

Dingo is based on the following series of papers:

  1. https://arxiv.org/abs/2002.07656: 5D toy model
  2. https://arxiv.org/abs/2008.03312: 15D binary black hole inference
  3. https://arxiv.org/abs/2106.12594: Amortized inference and group-equivariant neural posterior estimation
  4. https://arxiv.org/abs/2111.13139: Group-equivariant neural posterior estimation
  5. https://arxiv.org/abs/2210.05686: Importance sampling
  6. https://arxiv.org/abs/2211.08801: Noise forecasting
  7. https://arxiv.org/abs/2407.09602: Binary neutron star inference

Dingo was used also in https://arxiv.org/abs/2404.14286 to find evidence for eccentric binaries.

If you use Dingo in your work, we ask that you please cite at least https://arxiv.org/abs/2106.12594.

Contributors to the code are listed in AUTHORS.md. We thank Charlie Hoy, Vivien Raymond, and Rory Smith for acting as LIGO-Virgo-KAGRA (LVK) review chairs. Dingo makes use of many LVK software tools, including Bilby, bilby_pipe, and LALSimulation, as well as third party tools such as PyTorch and nflows.

Contact

For questions or comments please contact Maximilian Dax or Stephen Green.

Metadata

Release files for dingo-gw 0.10.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dingo-gw 0.10.1
File Size Uploaded
dingo_gw-0.10.1.tar.gz 872.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dingo-gw 0.10.1
File Interpreter ABI Platform
dingo_gw-0.10.1-py3-none-any.whl Python 3 none any Details

Total release size: 1.3 MB

Release files / dingo_gw-0.10.1.tar.gz

Download URL dingo_gw-0.10.1.tar.gz
Size 872.4 kB
Tags Source
SHA-256 checksum
How to use checksums
60eff5511caa433589e3f7c08847c3c79b7f38993165265b567f7b303a656fbb
BLAKE2b-256 checksum
How to use checksums
a5ce4ffc8be239f8d23075a2c2daa8336fedf813e00dbff79c008a14873a60c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / dingo_gw-0.10.1-py3-none-any.whl

Download URL dingo_gw-0.10.1-py3-none-any.whl
Size 378.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7c56ac2dcc5ee6f129c6a7328a2cf62198a781132988bfabd2ec9ddbae633e85
BLAKE2b-256 checksum
How to use checksums
9b896495d7b098a31de27379cd6317c2b9bc9613b600d293118943005c149265
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release history Release notifications | RSS feed

This release

0.10.1 This release

2 release files

0.10.0

2 release files

0.9.9

2 release files

0.9.8

2 release files

0.9.7

2 release files

0.9.6

2 release files

0.9.5

2 release files

0.9.4

2 release files

0.9.3

2 release files

0.9.2

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.7

2 release files

0.8.6

2 release files

0.8.5

2 release files

0.8.4

2 release files

0.8.3

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.9

2 release files

0.5.8

2 release files

0.5.7

2 release files

0.5.6

2 release files

0.5.5

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page