Skip to content

GW-JAX-Team/jim

 
 

Jim 🚬

A JAX-based gravitational-wave inference toolkit

docs license coverage pre-commit.ci status

Jim is a JAX-based toolkit for Bayesian parameter estimation of gravitational-wave sources. It pairs differentiable waveform models from ripple with GPU-accelerated JAX-based samplers, enabling massively parallel inference.

Supported samplers:

  • flowMC — normalizing-flow-enhanced MCMC

For a quick introduction, see the Quick Start guide.

Warning

Jim 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 Jim is through pip:

pip install JimGW

This will install the latest stable release and its dependencies. Jim 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 JimGW[cuda]

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

git clone https://github.com/GW-JAX-Team/jim.git
cd jim
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 Jim in your research, please cite the accompanying paper:

@article{Wong:2023lgb,
    author = "Wong, Kaze W. K. and Isi, Maximiliano and Edwards, Thomas D. P.",
    title = "{Fast Gravitational-wave Parameter Estimation without Compromises}",
    eprint = "2302.05333",
    archivePrefix = "arXiv",
    primaryClass = "astro-ph.IM",
    doi = "10.3847/1538-4357/acf5cd",
    journal = "Astrophys. J.",
    volume = "958",
    number = "2",
    pages = "129",
    year = "2023"
}

About

Gravitational-wave data analysis tools in JAX

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Contributors

No contributors

Languages

  • Python 100.0%