Installation#
Note
Scarabaeus has not been added to PyPi yet. You will need to compile Rust source code in order for it to function correctly, see the developer guide for further instructions.
Requirements#
Dependency |
Version |
Notes |
|---|---|---|
Python |
3.11+ |
Required |
NumPy |
latest |
Array mathematics |
SciPy |
latest |
Integrators and linear algebra |
SpiceyPy |
latest |
SPICE toolkit Python wrapper |
matplotlib |
latest |
Plotting utilities |
Rust / Cargo |
1.75+ |
Developer builds only — not required for users |
The full dependency list is managed in pyproject.toml and is installed automatically by pip.
User Installation#
1. Clone the repository
git clone <repository-url>
cd scarabaeus
2. Create a virtual environment
python -m venv .venv
# macOS / Linux
source .venv/bin/activate
# Windows
.venv\Scripts\activate
3. Install Scarabaeus
pip install .
Once the package is published on PyPI, users will also be able to install with:
pip install scarabaeus
Note
SPICE kernels — Scarabaeus uses SPICE kernels for ephemeris, reference frames, and spacecraft clock data. These are not distributed with the package. Load them in your script with:
import scarabaeus as scb
scb.SpiceManager.load_kernel_from_mkfile("path/to/metakernel.tm")
See NAIF’s kernel guide for details on obtaining and configuring kernels.
Developer Installation#
Developer installation additionally requires Rust/Cargo to compile the high-performance integrator back-end.
# After the user installation steps above:
pip install -e . --group dev # editable install with dev extras
maturin develop # compile and bind the Rust back-end
pre-commit install # install commit hooks
See the developer guide for the full developer setup guide.