A Python library written in Rust for quick and efficient modeling and analysis of rocket data.
Currently it has a 1D-1Dof, and 2D-3Dof model formats, with a 3D-6Dof model format planned. The model parameters are input conditions; planned functionality is to be able to train a model to data.
The long-term vision of this project is to be a toolbox for testing out different rocket models with data-fitted and uncertainty-estimated parameters. The primary intended use case is to be a means to do on-the-ground modeling work relavent to past and future rockets; but, it will be performant enough that it could be used in-the-loop in some launch vehicle applications.
Follow this guide to get Rust setup in VS Code, or figure out how to set it up in your dev environment of choice.
We use uv to handle the python side of this project. It's like pip but better, install it here.
# Run the Demo
uv run examples/demo.py
# Building and Publishing Manually
## Prerequisites
Ensure you have `uv` installed. The project is configured to use `maturin` and `zig` (for cross-compilation) via `uv`.
## Building Wheels
To build wheels for Windows (x64), Linux (x86_64), and Linux (aarch64) for supported Python versions:
```powershell
.\build_wheels.ps1
This script will:
- Clean the
target/wheelsdirectory. - Build Windows wheels.
- Cross-compile Linux wheels using Zig.
You will need a PyPI API token.
- Check Version: Ensure
Cargo.tomlversion is updated. - Upload:
uv run maturin upload target/wheels/*- Username:
__token__ - Password: Your PyPI API token (starts with
pypi-).
- Username: