Releases: RocketPy-Team/RocketPy
v1.2.2
What's Changed
- BUG: wrong rocket mass in parachute u_dot method by @Gui-FernandesBR in #569
- REL: Update version to 1.2.2 by @Gui-FernandesBR in #574
Installation
To install this rocketpy version, you can use pip install rocketpy==1.2.2
Full Changelog: v1.2.1...v1.2.2
v1.2.1
This is a minor release focused to solve a specific bug that was discovered when simulating a rocket with a diameter transition.
What's Changed
- BUG: Add reference area factor correction to aero surfaces (solves #557) by @giovaniceotto in #558
- REL: bump up rocketpy version to v1.2.1 by @Gui-FernandesBR in #562
Full Changelog: v1.2.0...v1.2.1
v1.2.0
v1.2.0 🚀
The newest version of RocketPy is officialy released
- You can already download it using pip:
pip install rocketpy==1.2.0
📦 - Don't forget to check the documentation page: RocketPy Docs 📚
What is new 🌟
This releases includes new features and enhancements that will improve the rocketpy experience for both users and developers. Let's check it:
For users 👩🔬👨🔬
- 🚀 Air Brakes Simulation!
- One can now simulate Rockets with Air Brakes and customized control functions!
- Fine tune your rocket for hitting that bullseye apogee.
- 📃 The documentation pages:
- Added juno3 flight example
- Data import through headered CSV Related Docs updated.
- Speedup notebooks and collab docs by not cloning the whole repository.
- 📊 Data handling and exporting:
- Import flight data to RocketPy with
FlightDataImporter
class. - Added
Function
low pass signal filtering. - Support for headered CSV on
Function
inputs. - Export any rocketpy data to a CSV with
Function.savetxt
.
- Import flight data to RocketPy with
- 🛠️ Various maintenance updates and code optimizations.
- Function priority on reverse arithmetic operations.
- Parachute trigger is now case insensitive.
- Updates and speedups do
Function
interpolation methods. - Rocket power on and off drag plots joined into one.
- Added a argument for optional datasource mutation on
Function.set_discrete
. - Fixed framing of 3D Flight Trajectory plots.
- Fixed Rockets without a motor not being drawn.
- Fixed a specific bug in which fin flutter analysis did not find any fins.
For devs 💻
- Testing refactors by splitting into unit and non unit testing.
- Added documentation for tests.
- Update GitHub actions workflow.
- Precalculate barometric heights to speed up simulation.
- Makefiles updates and addition of new commands.
Commit summary 🔍
- MNT: update develop by @Gui-FernandesBR in #487
- Doc/adding tst to docs by @lucasfourier in #491
- ENH: Function Reverse Arithmetic Priority by @phmbressan in #488
- GIT: Set code owners as @RocketPy-Team/code-owners by @giovaniceotto in #493
- ENH: Parachute trigger doesn't work if "Apogee" is used instead of "apogee" by @Gui-FernandesBR in #489
- MNT: Add repr method to Parachute class by @Gui-FernandesBR in #490
- ENH: Get Instance Attributes by @MateusStano in #477
- TST: solid_motor.py testing refactors by @lucasfourier in #494
- TST: Splitting unit testing module from non unit testes inside the new 'unit' folder for the several testing modules. by @lucasfourier in #499
- DOC: Update CSV Header Related Docs by @MateusStano in #495
- TST: Add unit test for get_value_opt method by @Gui-FernandesBR in #505
- MNT: Update interpolation method in linearly_interpolated_func by @Gui-FernandesBR in #504
- ENH: optimize
get_value_opt
in class Function by @styris00 in #501 - ENH: add Function.low_pass_filter method by @kalounis in #508
- ENH: Alternative for State History by @MateusStano in #507
- ENH: create FlightDataImporter class by @Gui-FernandesBR in #474
- DOC: add juno3 flight example by @Gui-FernandesBR in #513
- BUG: EmptyMotor is breaking the Rocket.draw() method by @Gui-FernandesBR in #516
- MNT: update github actions with logical sequence of tests by @Gui-FernandesBR in #500
- BUG: fin_flutter_analysis doesn't find any fin set by @Gui-FernandesBR in #510
- ENH : Add of a line for saving the filtered dataset by @kalounis in #518
- BUG: 3D trajectory plot not labeling axes by @Gui-FernandesBR in #533
- ENH: Argument for Optional Mutation on Function Discretize by @phmbressan in #519
- ENH: adds new Function.savetxt method by @Gui-FernandesBR in #514
- ENH: improve Function.low_pass_filter and adds docs by @Gui-FernandesBR in #538
- MNT: Encapsulate quaternion conversions by @Gui-FernandesBR in #537
- ENH Precalculate Barometric Height by @MateusStano in #511
- ENH: Shepard Optimized Interpolation - Multiple Inputs Support by @phmbressan in #515
- DOC: Installing imageio library on dispersion analysis notebook by @Lucas-Prates in #540
- DOC: Replacing git clone command with curl in notebooks. by @Lucas-Prates in #544
- ENH: Air Brakes by @MateusStano in #426
- ENH: Function inputs from CSV file header. by @phmbressan in #542
- ENH: Plotting both power on and off drag curves in a single plot. by @juliomachad0 in #547
- MNT: update Makefile by @Gui-FernandesBR in #539
- BUG: Elliptical Fins Draw by @MateusStano in #548
- MNT: small fixes before v1.2 by @Gui-FernandesBR in #550
- BUG: fix
get_controller_observed_variables
in the air brakes examples by @Gui-FernandesBR in #551 - BUG: Update flight trajectory plot axes limits by @Gui-FernandesBR in #552
- MNT: Final refactor before v1.2 by @Gui-FernandesBR in #553
- ENH: update master with develop for version 1.2.0 by @Gui-FernandesBR in #536
- REL: Update version to 1.2.0 by @Gui-FernandesBR in #555
New Contributors 🤝
We welcome new contributors, with special thanks to:
- @styris00 made their first contribution in #501
- @kalounis made their first contribution in #508
- @ClementMonaco made their first contribution in #508
- @Lucas-Prates made their first contribution in #540
- @juliomachad0 made their first contribution in #547
Full Changelog: v1.1.5...v1.2.0
v1.1.5
RocketPy v1.1.5 🚀
This newest version of RocketPy is available now!
- Install and check it out by using pip:
pip install rocketpy==1.1.5
📦 - Don't forget to check the documentation page: RocketPy Docs 📚
What's Changed
- BUG: Invalid Arguments on Two Dimensional Discretize (HOTFIX). by @phmbressan in #521
- BUG: Parachute Pressures not being Set before All Info. by @phmbressan in #534
- REL: Update RocketPy version to 1.1.5 by @Gui-FernandesBR in #535
Full Changelog: v1.1.4...v1.1.5
v1.1.4
RocketPy v1.1.4 🚀
This newest version of RocketPy is available now!
- Install and check it out by using pip:
pip install rocketpy==1.1.4
📦
What's Changed
- FIX: changes Generic Motor exhaust velocity to cached property by @giovaniceotto in #497
- DOC: Change from % to ! in the first cell to run properly in Colab. by @giovaniceotto in #496
Full Changelog: v1.1.3...v1.1.4
v1.1.3
RocketPy v1.1.3 🚀
This newest version of RocketPy is available now!
- Install and check it out by using pip:
pip install rocketpy==1.1.3
📦 - Don't forget to check the documentation page: RocketPy Docs 📚
What's been Fixed 🔧
- FIX: Broken Function.get_value_opt for N-Dimensional Functions by @giovaniceotto in #492
Contributors
Special thanks to the team that contributed to this quick fix:
It is also important to mention all the users that have reported bugs on our discord channel, this would not be possible without you all.
Full Changelog: v1.1.2...v1.1.3
v1.1.2
RocketPy v1.1.2 🚀
This newest version of RocketPy is available now!
- Install and check it out by using pip:
pip install rocketpy==1.1.2
📦 - Don't forget to check the documentation page: RocketPy Docs 📚
What's been Fixed 🔧
This release solves a bug from v1.1.1
regarding CSV reads, check out the CHANGELOG file and PR #485 for more details.
- BUG: Function breaks if a header is present in the csv file by @phmbressan in #485
Contributors
Special thanks to the team that contributed to this quick fix:
It is also important to mention all the users that have reported bugs on our discord channel, this would not be possible without you all.
Full Changelog: v1.1.1...v1.1.2
v1.1.1
RocketPy v1.1.1 🚀
The newest version of RocketPy is officialy released
- You can download this version using pip:
pip install rocketpy==1.1.1
📦 - Don't forget to check the documentation page: RocketPy Docs 📚
What has been fixed 🔧
This release solves a few bugs from the implementation from v1.1.0
- HOTFIX: Negative Static Margin by @giovaniceotto in #476
- HOTFIX: 2D .CSV Function and missing set_get_value_opt call by @MateusStano in #478
- HOTFIX: Tanks Overfill not Being Detected by @phmbressan in #479
- BUG: Prevent out of bounds Tanks from Instantiation by @phmbressan in #484
What has been added 🌟
- DOC: Add RocketPy change log file by @Gui-FernandesBR in #472
Contributors 🤝
Special thanks to the team that contributed to this quick fixes:
It is also important to mention all the users that have reported bugs on our discord channel, this would not be possible without you all.
Full Changelog: v1.1.0...v1.1.1
v1.1.0
RocketPy v1.1.0 🚀
The newest version of RocketPy is officialy released
- You can already download it using pip:
pip install rocketpy==1.1.0
📦 - Don't forget to check the documentation page: RocketPy Docs 📚
What is new 🌟
This releases includes life-saving features that will improve the rocketpy experience for both users and developers. Let's check it:
For users 👩🔬👨🔬
- 📃 The documentation pages had several improvements, including:
- A new section for the Function class
- Better descriptions of the flight simulation results
- More rocket flight examples added to the "Flight Examples" page
- Explanations on how to export the flight data to spreadsheet and analyze it
- Refactor and update the dispersion analysis notebook
- Improved mass and inertias documentation
- Fix positions and coordinate system documentation page
- 🚀 Draw your rocket!
- You can now plot a representation of the Rocket and Motor after defining the objects, this may help a lot when checking the input data.
- 🛠️ Various maintenance updates for smoother and more efficient code performance.
- Fixed the
max_heigth
, improving the plots of theEnvironment
class - Adding Stability Margin with Mach dependency
- New
get_solution_at_time
method to improve multi-stage rocket simulations - The
Function
class now checks and validates the user inputs - Improved mass flow rate calculations
- Fixed a bug that changed the tank's height when adding spherical Caps
- Some refactors and updates to docstrings were applied to the
Environment
,Flight
andFunction
classes
- Fixed the
For devs 💻
- Documentation of how to build the docs page locally
- Added pylint and flake8 config files
- Documentation on how to run rocketpy on docker
- Integration of Codecov for better code coverage analysis.
- New unit tests added for Flight and Function class
- Removed useless warnings
- Add _MotorPlots Inheritance to Motor Plots Classes
Commit summary 🔍
- ENH: Adding Stability Margin with Mach dependency by @Gui-FernandesBR in #377
- FIX: Motors UnitTesting Warnings by @phmbressan in #422
- ENH: rocket drawing by @Gui-FernandesBR in #419
- DOC: organize examples folder by @Gui-FernandesBR in #429
- MNT: Fix env plots max heights by @Gui-FernandesBR in #433
- BUG: Maintaing Extrapolation when Adding Discrete Functions with Constants by @MateusStano in #432
- ENH: liquid motors draw by @Gui-FernandesBR in #434
- ENH: solid motors draw by @Gui-FernandesBR in #435
- BUG: flight.prints.max_values() fails when launching an EmptyMotor by @Gui-FernandesBR in #438
- MNT: fix env plots legends by @Gui-FernandesBR in #440
- ENH: new Flight.get_solution_at_time() method by @Gui-FernandesBR in #441
- TST: new set of tests to the Flight class by @Gui-FernandesBR in #408
- DOC: Add documentation on how to build the docs by @Gui-FernandesBR in #452
- DOC: fix positions and coordinate system documentation page by @giovaniceotto in #454
- ENH: Add mass_flow_rate() to GenericMotor class by @Gui-FernandesBR in #459
- ENH: Add _MotorPlots Inheritance to Motor Plots Classes by @MateusStano in #456
- DOCs: improve mass and inertia docs by @Gui-FernandesBR in #445
- ENH: Clean Plots and Prints Subpackages init files by @MateusStano in #457
- MNT: add codecov integration by @Gui-FernandesBR in #458
- ENH: workflows update and new docker files by @Gui-FernandesBR in #448
- BUG: User input checks added for Function class by @brunosorban in #451
- DOC: refactor dispersion analysis notebook by @giovaniceotto in #463
- ENH: Spherical Caps Included in Total Length by @MateusStano in #455
- DOC: add documentation for flight data export. by @phmbressan in #464
- ENH: draw motors by @Gui-FernandesBR in #436
- DOC: Documentation for Function Class Usage by @phmbressan in #465
- DOC: first simulation allinfo by @FranzYuri in #466
- TST: new set of tests by @lucasfourier in #467
- BUG: Fix find_input() Function to Return a Single Value by @MateusStano in #471
- MNT: solve warnings by @Gui-FernandesBR in #470
Contributors 🤝
Special thanks to the team that contributed to more than 200 commits of this release:
It is also important to mention all the users that have requested features and reported bugs on our discord channel, this would not be possible without you all.
Full Changelog: v1.0.1...v1.1.0
v1.0.1
RocketPy v1.0.1
The release of RocketPy v1.0.1 is a new step in improving the simulations results. This release includes many improvements to the main README and bug fixes regarding motors coordinate placement.
What's Changed
- Refactor of the README file regarding new features and graphics of Google Earth export capabilities, many thanks to @giovaniceotto ;
- Fix in #423 of a bug in which coordinates were not being correct if the motor origin is not in the nozzle by @phmbressan . Thanks to @Gui-FernandesBR for reporting it;
- Improved print messages to make it clearer which mass is being logged by @MateusStano .
How to Get RocketPy v1.0.1
To get started with RocketPy v1.0.1, you can install the latest release using pip:
pip install rocketpy==1.0.1
Feedback and Bug Reports
We encourage all users to try out RocketPy v1.0.1 and share their feedback or report any issues on our GitHub repository.
Thank you for your continued support and enthusiasm for RocketPy. We look forward to seeing the amazing projects you'll create with this new release!