-
-
Notifications
You must be signed in to change notification settings - Fork 190
ENH: create a dataset of pre-registered motors. #814
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
… currently with the motors/ directory, which was copied from the data/motors folder
…om_dataset() to use rocketpy.datasets.motors
Well, I believe it would be nice if the installation was optional. I think it is worth to search how to do that. One my side, there are two main concerns: |
@Gui-FernandesBR, ok, I'll search for a nice way to make it optional and discuss it in the weekly. I know that it will involve another member of the team that has access to the PyPI configuration. Regarding your concerns: 1 - There are ways, but the team and I discussed in the weekly that creating the datasets directory would be a good choice because:
2 - I thought it would fit better in the utilities because there may be future functions that also use the |
Pull request type
Checklist
black rocketpy/ tests/
) has passed locallypytest tests -m slow --runslow
) have passed locallyCHANGELOG.md
has been updated (if relevant)Current behavior
The user had to add its own .eng file to use the method
GenericMotor.load_from_eng_file()
to create a GenericMotor from it, and RocketPy didn't have a dataset of pre-registered motors.New behavior
RocketPy now has its own dataset of pre-registered motors, containing 63 .eng files, located in
rocketpy/datasets/motors/
.Three functions are now present in
utilities.py
to help:list_motors_dataset()
: returns a list of all available motors names;load_motor_from_dataset()
: load a GenericMotor from a motor name from the dataset;show_motors_dataset()
: prints the list of available motors, useful for quick inspection in terminals and Jupyter notebooks.Breaking change
Additional information
The user guide has documentation for the three new functions:



FAILED tests/integration/test_environment.py::test_rap_atmosphere - ValueError: The chosen launch time '2025-05-05-02: UTC' is not available in the provided file. Please choose a time within the range of the file, which starts at '2025-05-06-01 UTC'.
To be discussed
pip
? For now, the size of the dataset isn't big, so the easiest path is to just add it in the repo. However, in the future, it may become big enough to make it optional. Preparing the repo right now could be a good idea -- but it would demand changes in the PyPI pipeline.