Astrodynamics written in JAX for massively parallel computation
Project description
astrojax
Astrodynamics written in JAX for massively parallel simulation.
The goal of this project is to provide a high-performance astrodynamics library that can be used for research and education. The library is built on top of JAX, which allows for automatic differentiation and GPU/TPU acceleration. The goal is to provide a proof-of-concept implementation of common astrodynamics algorithms that can be used as a starting point for further development. It is not intended to be a full-featured, high-accuracy astrodynamics library (at least not yet).
Install
pip install astrojax
# or
uv add astrojax
Quickstart
This project uses just as a command runner and uv for Python package management.
# Install just (macOS)
brew install just
# Install uv
curl -LsSf https://astral.sh/uv/install.sh | sh
# Clone and install everything (dev deps + extras)
just install
Development
Every recipe has an equivalent raw command you can run directly.
| Task | just recipe |
Raw command |
|---|---|---|
| Install dev deps + extras | just install |
uv sync --dev --extra extras |
| Run tests | just test |
uv run pytest tests/ -v |
| Test with coverage | just test-cov |
uv run pytest --cov=astrojax --cov-report=term-missing |
| Format code | just fmt |
uv run ruff format |
| Lint (auto-fix) | just lint |
uv run ruff check --fix |
| Type check | just typecheck |
uvx ty check |
| All quality checks | just check |
Runs fmt + lint + typecheck |
| Build docs | just docs-build |
uv run zensical build --clean |
| Serve docs | just docs-serve |
uv run zensical serve --clean |
License
The code in this repository is licensed under the MIT License. See LICENSE for details.
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 astrojax-0.3.1.tar.gz.
File metadata
- Download URL: astrojax-0.3.1.tar.gz
- Upload date:
- Size: 3.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8e4375adf157ebca0976ac454f47e49b1dca973466c610f43cbd0ccf75ad8b2c
|
|
| MD5 |
8d6b41805cdd2dc51b571945c1ae6472
|
|
| BLAKE2b-256 |
0e6e3bf0e832bf049e8681e942255fdf042b71f2803c85751a2eafbe1f725c39
|
Provenance
The following attestation bundles were made for astrojax-0.3.1.tar.gz:
Publisher:
release.yml on duncaneddy/astrojax
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
astrojax-0.3.1.tar.gz -
Subject digest:
8e4375adf157ebca0976ac454f47e49b1dca973466c610f43cbd0ccf75ad8b2c - Sigstore transparency entry: 951650828
- Sigstore integration time:
-
Permalink:
duncaneddy/astrojax@f5b75e83f32c5b0d8dc6c027c966c09d31d25ef3 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/duncaneddy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@f5b75e83f32c5b0d8dc6c027c966c09d31d25ef3 -
Trigger Event:
push
-
Statement type:
File details
Details for the file astrojax-0.3.1-py3-none-any.whl.
File metadata
- Download URL: astrojax-0.3.1-py3-none-any.whl
- Upload date:
- Size: 3.8 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eefe0638cbec4689b266c03f5ebfc69dd93c3ada093273167c5760c9cdf268f4
|
|
| MD5 |
977bba5c9e8c0c4c51d086c6435ea1c2
|
|
| BLAKE2b-256 |
96abd8e4ba92c1fcfe2948c21858316e437308a3abbf8c22a6bfdffbf5a4d03e
|
Provenance
The following attestation bundles were made for astrojax-0.3.1-py3-none-any.whl:
Publisher:
release.yml on duncaneddy/astrojax
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
astrojax-0.3.1-py3-none-any.whl -
Subject digest:
eefe0638cbec4689b266c03f5ebfc69dd93c3ada093273167c5760c9cdf268f4 - Sigstore transparency entry: 951650897
- Sigstore integration time:
-
Permalink:
duncaneddy/astrojax@f5b75e83f32c5b0d8dc6c027c966c09d31d25ef3 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/duncaneddy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@f5b75e83f32c5b0d8dc6c027c966c09d31d25ef3 -
Trigger Event:
push
-
Statement type: