Skip to main content

A JAX-accelerated stream generator (StreaMAX)

Project description

Banner Image credit: Sarah Kane

A JAX-Accelerated Stellar Stream Generator

StreaMAX is a lightweight, high-performance simulator for stellar streams built with JAX.
It’s designed to make modeling and inference on stellar streams fast enough for Bayesian analysis and modern data-intensive workflows.


🚀 Features

  • Particle-spray modeling of stellar streams
  • Fast 2D track extraction
  • JAX-accelerated integration for GPU/TPU compatibility
  • Automatic differentiation, can easily compute gradients of the models directly via JAX
  • Modular architecture

🧩 Models

StreaMAX supports:

  • Rapid generation of stellar streams using the particle-spray method
  • Efficient extraction of stream tracks for analysis and inference

🧪 Quick Start

See the quick_start.ipynb notebook for an example on how to:

  • Define potential and stream parameters
  • Generate a stream using the particle-spray method
  • Extract and visualize the resulting track

⚙️ Installation

From PyPI

pip install StreaMAX

From GitHub (development version)

git clone https://github.com/David-Chemaly/StreaMAX.git
cd StreaMAX
pip install -e .

Manual dependency installation

pip install -r requirements.txt

📚 Citation & License

This project is released under the MIT License.
If you use StreaMAX in your research, please cite and reference the repository:

Chemaly, D. et al. 2025 (in prep.). StreaMAX: A JAX-accelerated stellar stream generator.
GitHub repository: https://github.com/David-Chemaly/StreaMAX


🪐 Contributing

Pull requests and feature suggestions are welcome.
If you encounter bugs or wish to contribute new potentials or integrators, please open an issue on GitHub.


Fast. Differentiable. Modular. JAX-powered.

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

streamax-0.3.0.tar.gz (10.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

streamax-0.3.0-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

Details for the file streamax-0.3.0.tar.gz.

File metadata

  • Download URL: streamax-0.3.0.tar.gz
  • Upload date:
  • Size: 10.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for streamax-0.3.0.tar.gz
Algorithm Hash digest
SHA256 f0d5a7f30c9513beeaeb0a439a1ab1e9aafb068c6bf0a0c13dda5a21f1f215f0
MD5 0264629875d135e7fb7e9adee87d542d
BLAKE2b-256 ff828b79d6b273781ef444a0d3169b860f0b0c1440b26e5e6af56d11073ea8c5

See more details on using hashes here.

File details

Details for the file streamax-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: streamax-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 10.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for streamax-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 93e66ad785b85150dc40ddade23c55325180bba0de930eee7d519a5ef71c0e46
MD5 ecd1496326a2a20cf9522b79ecbe3eb6
BLAKE2b-256 5ed32b715091ce4e9ebb5deedbde734b99efeb1a85821bf4f15e0ef28818ee23

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