This is the RocketPy-based flight simulation for BEARS rockets, built by BEARS (Berlin Experimental Astronautics Research Student Team e.V.).
First, we need to install uv, a Python package manager.
- On Linux and macOS, use
curl -LsSf https://astral.sh/uv/install.sh | sh. - On Windows, use
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex". - When in doubt, refer to the official setup instructions: https://docs.astral.sh/uv/getting-started/installation/
To install or update the dependencies of this project, run this command from within the project root:
uv sync --devThe uv package manager also automatically manages a separate Python installation for the project, so you do not have to think about your system-wide Python installation and pip packages.
To ensure a consistent style in the repository, pre-commit hooks are used.
Within the project root, install the pre-commit hooks to the local repository:
pre-commit installThe hooks are based on the configuration located in .pre-commit-config.yaml and will be run automatically before every git commit.
If you just want to run the simulation with default parameters, you can use one of the two provided scripts (assuming you installed Python and all required packages).
On Windows, run the following in a command prompt:
powershell -ExecutionPolicy Bypass -file .\run-simulation.ps1 .\template .\outputOn Linux, run the following in a terminal:
bash ./run-simulation.sh ./template ./outputIn both cases, if you do not pass arguments, the simulation uses the ./template folder to read its configuration and the ./output folder for output.
The package contains two commands: The simulation (sim) and the GUI (gui).
You can run the simulation from a terminal as follows:
uv run python -m rocketpal sim ./input --output ./outputTo see the available command line parameters, run one of the following (depending on what info you need):
uv run python -m rocketpal --help
uv run python -m rocketpal sim --help
uv run python -m rocketpal gui --helpTo run the provided unit tests, run this command from within the project root:
uv run python -m pytestA file for the motor has to be provided in .eng format. On at least one website offering compatible files, this format has been referred to as "RASP" format. It is documented here: https://www.thrustcurve.org/info/raspformat.html
The parts list is provided by BEARS in Excel (.xlsx) format. The following steps are used to convert it into a format usable by the flight simulation.
First, open the parts list Excel table online and store a local copy (Datei -> Eine Kopie Erstellen -> Eine Kopie herunterladen):
Second, open the local copy (.xlsx) in LibreOffice Calc and save it as a CSV file (.csv), accepting the warning dialogs about exporting to CSV:
Finally, open the CSV file (.csv) in a text editor, copy the contents and paste them into template/parts_list.csv, replacing the old file contents.







