Skip to main content

Constrain gravitational potential with stream curvature

Project description

potamides

Actions Status Documentation Status

PyPI version PyPI platforms

GitHub Discussion

About

potamides is a Python package for constraining gravitational potentials using stellar stream curvature analysis. The name is inspired by Greek ποταμίδες ("potamídes", meaning "river streams"), with the initial "P" representing $\Phi$, the conventional symbol for gravitational potential in astronomy.

Key Features

  • 🌊 Spline-based stream modeling: Smooth parametric representation of stellar streams with cubic spline interpolation
  • 📐 Curvature analysis: Compute geometric properties including tangent vectors, curvature, principal normals, and arc-length
  • 🌌 Gravitational field fitting: Match stream curvature to potential models with customizable halo and disk components
  • JAX-accelerated: Fast, GPU-compatible computations with automatic differentiation and JIT compilation
  • 📊 Likelihood framework: Bayesian inference for potential parameters using curvature-acceleration alignment
  • 📈 Visualization tools: Built-in plotting methods for tracks, geometry vectors, and gravitational fields

Installation

Using pip (recommended)

pip install potamides

From source

git clone https://github.com/xggs-dev/potamides.git
cd potamides
uv pip install -e .

Requirements

  • Python >= 3.11
  • JAX >= 0.5.3
  • For GPU support, install JAX with CUDA support separately
  • See pyproject.toml for full dependency list

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

This package builds upon excellent open-source scientific software:

  • JAX: High-performance numerical computing with automatic differentiation
  • galax: Galactic dynamics in JAX
  • interpax: Interpolation library for JAX
  • Astropy: Community Python library for astronomy
  • unxt: Unitful quantities for JAX

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

potamides-0.2.0.tar.gz (251.0 kB view details)

Uploaded Source

Built Distribution

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

potamides-0.2.0-py3-none-any.whl (39.9 kB view details)

Uploaded Python 3

File details

Details for the file potamides-0.2.0.tar.gz.

File metadata

  • Download URL: potamides-0.2.0.tar.gz
  • Upload date:
  • Size: 251.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for potamides-0.2.0.tar.gz
Algorithm Hash digest
SHA256 dafdc2399d32f528c4f99754009a78703846fc207d33f916b3e84a227431a33d
MD5 6a0b8e970ac87d8b9d9d97a10c6ab4eb
BLAKE2b-256 a9bbaeadc6ec35f2da50eff8ffcabfa726d1d374096bbf771330fc2cb408c97e

See more details on using hashes here.

Provenance

The following attestation bundles were made for potamides-0.2.0.tar.gz:

Publisher: cd.yml on xggs-dev/potamides

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file potamides-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: potamides-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 39.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for potamides-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e7989a017407665afdffd94b39e2e3d190f49c64162b5e74a44354fa12784622
MD5 8a778a8491a86560fd7581531ff30045
BLAKE2b-256 c9d72938023e9a00082ac3af0dbdfc411207a303d136b668c37b18e317f20e49

See more details on using hashes here.

Provenance

The following attestation bundles were made for potamides-0.2.0-py3-none-any.whl:

Publisher: cd.yml on xggs-dev/potamides

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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