A small jax package for differentiable and fast gravitational wave data analysis.
Project description
ripple 🌊
A JAX-based package for differentiable gravitational-wave waveform generation
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
- IMRPhenomD
- IMRPhenomD_NRTidalv2
- IMRPhenomXAS
- IMRPhenomXAS_NRTidalv3
- IMRPhenomPv2
- IMRPhenomXPHM (MSA)
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.
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"
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ripplegw-0.1.0.tar.gz.
File metadata
- Download URL: ripplegw-0.1.0.tar.gz
- Upload date:
- Size: 388.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1df54bd681cbc1baf4fbb484f9869e69c02c39b065b611bc90ed9c66d48f6a4a
|
|
| MD5 |
569147e29c7ba55812cba2e173fc74fb
|
|
| BLAKE2b-256 |
b9e334e7c912de48999174c1aa345acb059453dd2185ba6f06a223598fa1ff41
|
File details
Details for the file ripplegw-0.1.0-py3-none-any.whl.
File metadata
- Download URL: ripplegw-0.1.0-py3-none-any.whl
- Upload date:
- Size: 119.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3bcb73acc451b46a6a4ec5c1dd136ad1a9678dd3186bc324cb895e8b01c41444
|
|
| MD5 |
9147cd166b6a78f30afce992d8669b55
|
|
| BLAKE2b-256 |
c19febd5cd04e4b36719dd287e4449f19425f0f1eef3d067ae2942f73a3e1f99
|