THIS LIBRARY IS CURRENTLY IN EXTREMELY EARLY STAGES AND NOT VALIDATED.
A Rust port of Basilisk.
- Small build size
- Fast run time
- Fast build
- Memory safe
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source "$HOME/.cargo/env"Install just:
cargo install justIf you want to use the plotting script, install Python and matplotlib:
python3 -m pip install matplotlibgit clone git@github.com:ephraim71/basilisk-rs.git
cd basilisk-rsRun this once after cloning to download the required assets:
just fetch-assetsThis step requires network access.
cargo build --release --example full_satellite_stackRun without recorders:
SHOW_PROGRESS=1 cargo run --release --example full_satellite_stackRun with CSV recorders enabled:
SHOW_PROGRESS=1 ENABLE_RECORDING=1 cargo run --release --example full_satellite_stackCSV recorders are currently not optimized and are slow. More recorder options will be added later.
Recorded CSV output is written to examples/output/full_satellite_stack/.
If CSV recording is enabled, you can plot the output with:
python3 examples/plot_full_satellite_stack.pyOr point it at a specific output directory:
python3 examples/plot_full_satellite_stack.py examples/output/full_satellite_stackSHOW_PROGRESS=1 PROFILE_SIM=1 cargo run --release --example full_satellite_stackModules with the same priority run in parallel. There is no Basilisk-style concept of processes or tasks in this library.