Skip to main content

ripple 🌊

A JAX-based package for differentiable gravitational-wave waveform generation

docs license coverage pre-commit.ci status

ripple is a JAX-based package for differentiable gravitational-wave waveform generation. By implementing waveform models as differentiable JAX functions, ripple enables gradient-based inference and runs natively on GPU, making it well-suited for use within modern probabilistic inference pipelines such as Jim.

Supported waveforms:

  • TaylorF2 — fast post-Newtonian waveform, aligned spins, tidal-capable
  • IMRPhenomXAS — aligned-spin binary black holes
  • IMRPhenomXPHM — precessing spins with higher-order modes
  • IMRPhenomXAS_NRTidalv3 — tidal corrections for binary neutron star mergers
  • IMRPhenomXP_NRTidalv3 — precessing spins with tidal corrections
  • SineGaussian — time-domain burst waveform
  • PulsarSignal — continuous-wave signal from a spinning neutron star
  • etc.

See the Waveform Catalogue for the full list of supported waveforms.

For a quick introduction, see the Quick Start guide.

[!WARNING] ripple has not yet reached v1.0.0 and the API may change. Use at your own risk. Consider pinning to a specific version if you need API stability.

Installation

The simplest way to install ripple is through pip:

pip install rippleGW

This will install the latest stable release and its dependencies. ripple is built on JAX. By default, this installs the CPU version of JAX. If you have an NVIDIA GPU, install the CUDA-enabled version:

pip install rippleGW[cuda]

If you want to install the latest version of ripple, you can clone this repo and install it locally:

git clone https://github.com/GW-JAX-Team/ripple.git
cd ripple
pip install -e .

We recommend using uv to manage your Python environment. After cloning the repository, run uv sync to create a virtual environment with all dependencies installed.

Origins

ripple was originally developed as tedwards2412/ripple by Thomas Edwards and others. The original repository is no longer actively maintained; this fork is the active continuation of the project.

Attribution

If you use ripple in your research, please cite the accompanying paper:

@article{Edwards:2023sak,
    author = "Edwards, Thomas D. P. and Wong, Kaze W. K. and Lam, Kelvin K. H. and Coogan, Adam and Foreman-Mackey, Daniel and Isi, Maximiliano and Zimmerman, Aaron",
    title = "{Differentiable and hardware-accelerated waveforms for gravitational wave data analysis}",
    eprint = "2302.05329",
    archivePrefix = "arXiv",
    primaryClass = "astro-ph.IM",
    doi = "10.1103/PhysRevD.110.064028",
    journal = "Phys. Rev. D",
    volume = "110",
    number = "6",
    pages = "064028",
    year = "2024"
}

Metadata

Release files for rippleGW 0.4.0

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

Source distribution (sdist)

Source distribution for rippleGW 0.4.0
File Size Uploaded
ripplegw-0.4.0.tar.gz 521.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for rippleGW 0.4.0
File Interpreter ABI Platform
ripplegw-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 757.8 kB

Release files / ripplegw-0.4.0.tar.gz

Download URL ripplegw-0.4.0.tar.gz
Size 521.4 kB
Tags Source
SHA-256 checksum
How to use checksums
b62a10c9bc8290bf4c55af04370994218f4558cd94794c32b43d8780b91e4b4f
BLAKE2b-256 checksum
How to use checksums
1565a2dc4f9e4c2b054f8f7505e17cb9b2123ae58536642135f043c4de09d00c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / ripplegw-0.4.0-py3-none-any.whl

Download URL ripplegw-0.4.0-py3-none-any.whl
Size 236.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9e488e187591d3e558dc2242d1650edf2a50b999659f5f0e4df11d59dc60b60d
BLAKE2b-256 checksum
How to use checksums
cab5c1f78b84835b25deb250a3079a8472d56dceee278025e0d27f9990bb4b50
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.9

2 release files

0.0.7

1 release file

0.0.6

2 release files

0.0.5

2 release files

0.0.4

1 release file

0.0.3

2 release files

0.0.2

2 release files

0.0.1

1 release file

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