Releases: RocketPy-Team/RocketPy
v1.0.0a1
🌏Welcome to v1.0.0a1
An incredible pre-release of RocketPy. We encourage all users to install and test the new features.
To install it, you can simply run:
pip install rocketpy --pre
🚀What's Changed:
- Added support for
LiquidMotor
andHybridMotor
😁 - Various improvements were made to the Flight and Rocket classes.
- New features were added, such as the CompareFlights class for comparing flight plots, new nosecone types, and a RailButtons class.
- Several bug fixes were made, addressing issues with parachute lag, standard atmosphere, flight without rail buttons, and more.
- Dependency upgrades: update netcdf4 requirement and dropping support for Python 3.7.
- New utility functions and methods were added, including Function Operations and Piecewise Functions.
- Significant breaking change: ALL the code now is based on snake_case instead of the old camelCase format.
👨💻List of merged Pull Requests:
- ENH: Liquid Motors Mass Flow Based Tank by @giovaniceotto in #254
- ENH: liquid motors ullage tank by @phmbressan in #255
- ENH: implement mass based tanks and update notebook. by @phmbressan in #260
- ENH: Moved Flight prints to flight_prints.py by @MateusStano in #289
- ENH: Moved Environment prints to environment_prints.py by @MateusStano in #294
- ENH: adding name as a karg in Flight class by @Gui-FernandesBR in #293
- ENH: Moved Environment plots to environment_plots.py by @MateusStano in #296
- ENH: Moved Rocket plots to rocket_plots.py by @ompro07 in #302
- ENH: Moved Rocket prints to rocket_prints.py by @ompro07 in #303
- ENH: liquid motors tank inertia by @phmbressan in #299
- ENH: Liquid Motors Updates by @phmbressan in #307
- TST: adjusting test distances vs positions by @Gui-FernandesBR in #305
- ENH: Moved Flight plots to flight_plots.py by @MateusStano in #290
- ENH: Introducing CompareFlights class, a comparison of flight plots by @Gui-FernandesBR in #295
- TST: new plots tests by @Gui-FernandesBR in #320
- MAINT: refactor flight class init method by @Gui-FernandesBR in #321
- ENH: Refactor and replace plots and outputs + Compare plots by @MateusStano in #287
- DOC: new deployable payload example by @Gui-FernandesBR in #322
- TST: New tests for AeroSurfaces, Environment, Environment Analysis and Function by @Gui-FernandesBR in #306
- ENH: Distances vs Positons v2 by @giovaniceotto in #282
- ENH: fix_legends by @FranzYuri in #329
- FIX: Implementation of analytical integral of linearly interpolated Functions by @giovaniceotto in #332
- ENH: Parachute.info() method created by @Gui-FernandesBR in #324
- MAINT: move flutter analysis into utilities submodule by @Gui-FernandesBR in #325
- ENH: Added Piecewise class and other new Function methods by @gautamsaiy in #330
- ENH: titles in function plots by @FranzYuri in #328
- ENH: plot-airfoil-information by @FranzYuri in #327
- ENH: /setters and getters by @FranzYuri in #333
- MAINT: move last plots from Environment class by @Gui-FernandesBR in #326
- ENH: New nosecone types added. by @CabGT in #339
- ENH: change aero surfaces class by @FranzYuri in #341
- ENH: aerodynamic surfaces parent class by @MateusStano in #342
- TST: Flutter test fix by @giovaniceotto in #347
- FIX: Flight Reynolds & Dynamic viscosity wrong values by @giovaniceotto in #346
- ENH: Function Operations by @giovaniceotto in #334
- BUG: Parachute lag warning when lag is 0 by @MateusStano in #343
- FIX: Correct timezonefinder import. by @phmbressan in #349
- BUG:
*
instead of-
in sub by @MateusStano in #351 - DOC: convert pdf files to rst and add them to docs by @Gui-FernandesBR in #319
- ENH: variable gravity by @FranzYuri in #338
- ENH: add " ' " to Function repr by @MateusStano in #358
- ENH: Environment changes for Dispersion by @MateusStano in #357
- BUG: Parachute lag warning when lag is 0 #2 by @MateusStano in #356
- BUG: readme by @GabrielBarberini in #360
- ENH: Function Comparison and Identity Map by @phmbressan in #353
- ENH: simpler parachute triggers by @FranzYuri in #345
- TST: Remove Flutter Tests by @MateusStano in #366
- MAINT: moving env_analysis plots and prints by @Gui-FernandesBR in #370
- BUG: fix standard atmosphere by @Gui-FernandesBR in #369
- ENH: AeroSurfaces(ABC) and Improvements to Rocket.aerodynamicSurfaces by @MateusStano in #355
- ENH: liquid motors optimization by @phmbressan in #354
- ENH: RailButtons Class by @MateusStano in #344
- MAINT: convert windrose ipywidgets and jsonpickle to optional dependencies by @Gui-FernandesBR in #368
- MAINT: upgrade netcdf4 requirement by @Gui-FernandesBR in #374
- MAINT: Dropping support for python 3.7 by @Gui-FernandesBR in #365
- MAINT: EnvironmentAnalysis major refactor by @Gui-FernandesBR in #373
- ENH: liquid-motors-linear-algebra by @giovaniceotto in #364
- ENH: burnout time changes. Breaking changes by @FranzYuri in #337
- ENH: motors mass by @phmbressan in #363
- BUG: flight without rail buttons by @Gui-FernandesBR in #383
- MAINT: move aero surface plots and prints by @Gui-FernandesBR in #381
- MAINT: Move the rail length definition to the Flight Class by @Gui-FernandesBR in #378
- ENH new utility functions by @Gui-FernandesBR in #376
- ENH: Resetable Funcified Methods by @giovaniceotto in #385
- FIX: funcify titles - pt1 by @phmbressan in #384
- ENH: Move Motor Plots and Prints by @MateusStano in #387
- ENH: Liquid Motors by @giovaniceotto in #233
- ENH: Snake Case by @MateusStano in #361
- DOC: update README.md with new features of v1.0.0a1. by @phmbressan in #388
- DOC: improve docs before v1 by @Gui-FernandesBR in #386
- REL: v1.0.0a1 by @giovaniceotto in #389
🎮New Contributors
- @gautamsaiy made their first contribution in #330
- @CabGT made their first contribution in #339
Full Changelog: v0.13.1...v1.0.0a1
v0.13.1
What's Changed
- HotFix for Python 3.11 by @MateusStano, @giovaniceotto , @phmbressan and @CabGT in #348
Full Changelog: v0.13.0...v0.13.1
V0.13.0
What's Changed
- Enh: Using jsonpickle to serialize EnvAnal by @PatrickSampaioUSP in #239
- ENH: Refactor Env Analysis .json conversions by @Gui-FernandesBR in #237
- ENH: Adding .nc files for EnvAnalysis at EuroC by @Gui-FernandesBR in #238
- ENH: automate dispersion inputs with csv by @FranzYuri in #229
- [EuroC][EnvAnalysis] add forecast comparison to env analysis by @Gui-FernandesBR in #244
- ENH: Environment Analysis - Wind Heading Profiles by @Gui-FernandesBR in #197
- WIP: ENH: Env Analysis Euroc 2022 by @Gui-FernandesBR in #226
- ENH: Introducing properties in Flight class by @Gui-FernandesBR in #249
- ENH: Add Sweep Length to Trapezoidal Fins by @giovaniceotto in #256
- ENH: Adding AeroSurfaces classes by @Gui-FernandesBR in #263
- Fix: Cached Property support for Python 3.6 and 3.7 by @giovaniceotto in #283
- ENH: Function class - Funcify Decorator & setDiscreteBasedOnModel by @giovaniceotto in #291
- DOC: fix Getting Started notebooks Dynamic Analysis section by @giovaniceotto in #298
- Fix: Flight Bearing by @Gui-FernandesBR in #300
- TST: Fix static margin related tests by @MateusStano in #304
- MAINT: Flight class post methods by @giovaniceotto in #292
- changes addTrapezoildalFins to addTrapezoidalFins by @GabrielBarberini in #311
- ENH: implement retrieval of atmospheric data from Windy API by @Gui-FernandesBR in #301
- MAINT: use raw.githubusercontent address in readme by @Gui-FernandesBR in #317
- MAINT: Cleaning up some repo files by @Gui-FernandesBR in #316
- BUG: Flight.plotPressureSignals and "StandardAtmosphere" environment pressure calculation by @MateusStano in #313
- ENH: Make timezonefinder an optional dependency by @giovaniceotto in #315
- REL: Welcome to v0.13.0 by @Gui-FernandesBR in #323
New Contributors
- @GabrielBarberini made their first contribution in #311
Full Changelog: v0.12.1...v0.13.0
v0.12.1
What's Changed
- REL: Automate Release to PyPI with GitHub Actions by @giovaniceotto in #264
- Hotfix for issues #251 and #261 by @giovaniceotto in #262
- No more dependencies on python 3.8, now you should be free to easily use python 3.6+ again.
- Importing netCDF4 also has been facilitated by requiring a version that works with OpenDAP.
Full Changelog: v0.12.0...v0.12.1
v0.12.0
New features
- ENH: Elliptical fins added to Rocket class by @KrWanderley in #172
New Contributors
- @KrWanderley , @matheus-doretto , @CabGT made their first contribution in #172 . It's definetely a huge pleasure to have such smart people as you working with us, thank you so much guys! And of course... We are looking forward to see more additions from you soon ;)
Installation
RocketPy can be installed/updated using pip with the following command:
pip install rocketpy==0.12.0
Can't wait for the next release!!! Let's rocket them all.
Stay hungry, stay foolish, and always keep learning.
@Projeto-Jupiter/rocketpy-team
Full Changelog: v0.11.1...v0.12.0
v0.11.1
Bug corrections
- @MateusStano noticed a bug that made RocketPy mistakenly use the wrong drag coefficient for each phase of the flight (powered vs. unpowered). This has been successfully corrected in #221 and is the main reason for this release.
Installation
RocketPy can be installed/updated using pip with the following command:
pip install rocketpy==0.11.1
Other improvements
- FIX: fixing docs errors by @PatrickSampaioUSP in #202
- FIX: fixing docs error - 2nd attempt by @giovaniceotto in #203
- FIX: fixing docs error - 3rd attempt by @giovaniceotto in #210
- MAINT: Created FUNDING.yml by @Gui-FernandesBR in #213
- MAINT: Adding Github Sponsors badge to README by @Gui-FernandesBR in #212
- DOC: add first version of getting started with rocketpy as developer tutorial by @brunosorban in #215
- DOC: rocketpy hackathon tutorial github link update d by @phmbressan in #216
New Contributors
- @phmbressan made their first contribution in #216 . It was an extreme honor to get some addition from this young talent, thank you Bressan!
Can't wait for the next release!!! Let's rocket them all.
Stay hungry, stay foolish, and always keep learning.
Full Changelog: v0.11.0...v0.11.1
v0.11.0
New features
- Environment Analysis
- A new class is born! RocketPy's meteorological capabilities have just been upgraded. Users can now analyze a range of historical weather data to get a comprehensive understanding of how atmospheric conditions behave at their rocket's launch site.
- by @PatrickSampaioUSP @giovaniceotto @Gui-FernandesBR @MateusStano @FranzYuri in #135
- Easy Export Flight Data to csv files
- Export flight trajectory to .kml file so it can be seen on google earth:
- Evaluate parachute equilibrium altitude
- Introducing Motor class instead of solidmotor class
Bug corrections
- Fix test warnings by @giovaniceotto in https://github.com/Projeto-Jupiter/RocketPy/pull/149
- Adapt to new cftime version solving calendar bugs by @giovaniceotto in https://github.com/Projeto-Jupiter/RocketPy/pull/151
Other improvements
- Adding new unit tests:
- Awesome implementation of dimensionality tests by @PatrickSampaioUSP in https://github.com/Projeto-Jupiter/RocketPy/pull/153
- Added Rocket class unit tests by @PatrickSampaioUSP in https://github.com/Projeto-Jupiter/RocketPy/pull/121
- Passing Plots to a future Front-End Integration
- RocketPy now works on MATLAB!
Installation
RocketPy can be installed/updated using pip with the following command:
pip install rocketpy==0.11.0
Can't wait for the next release!!! Let's rocket them all.
Stay hungry, stay foolish, and always keep learning.
@Projeto-Jupiter/rocketpy-team
Full Changelog: Projeto-Jupiter/RocketPy-Jupiter@v0.10.0...v0.11.0
v0.10.0
What's new?
- RocketPy can finally work with Environment date and time in any desired time zone. It's an awesome feature created by @FranzYuri in https://github.com/Projeto-Jupiter/RocketPy/pull/110 and #123. A new section in our Environment Class Example notebook was added to demonstrate how this can be used
Bug corrections
-
Aerodynamic forces evaluation
- We improved our Airfoil implementation in order to solve a bug with airfoil input data. See #140 to undesrtand the problem, and the awesome resolution by @MateusStano
- Our aerodynamic was also improved to allow better calculation of roll moment of rockets with canted angle fins. See the great work done by @MateusStano on #116.
-
Weird stable rockets with negative static margins
- Issue #115 solved by @Lucas-KB in https://github.com/Projeto-Jupiter/RocketPy/pull/125, helped by @lucasfourier and @giovaniceotto
- This issue only affected rockets which had one or more diameter reductions (such as tails), making them seem more stable than they should be, and caused problems from v0.9.7 until v0.9.9. New tests have been implemented to make sure this never happens again, making RocketPy significantly more trustworthy.
-
Function class initialization
- Fixed input name for some Functions instances initialized with int/float or callable by @giovaniceotto in https://github.com/Projeto-Jupiter/RocketPy/pull/141
Other improvements
- We are raising a warning when the user tries to use Environment Forecast Models without installing netCDF4 library, good work done by @skrobchik in https://github.com/Projeto-Jupiter/RocketPy/pull/127
- RocketPy now has a parachute.py, which was created by @FranzYuri in https://github.com/Projeto-Jupiter/RocketPy/pull/113. It was an enhancement in the organization of our Rocket class
- We are adding a SolidMotor_class_usage notebook in order to better illustrate how this class works. Initially created by @lucasfourier in https://github.com/Projeto-Jupiter/RocketPy/pull/42 and finished by @Gui-FernandesBR and @giovaniceotto
New Contributors
- @skrobchik made his first contribution in https://github.com/Projeto-Jupiter/RocketPy/pull/127, it is a huge pleasure to have you in our comunity Robert!
Installation
RocketPy can be installed/updated using pip with the following command:
pip install rocketpy==0.10.0
Can't wait for the next release!!! Let's rocket them all.
Stay hungry, stay foolish, and always keep learning.
@Projeto-Jupiter/rocketpy-team
Full Changelog: Projeto-Jupiter/RocketPy-Jupiter@v0.9.9...v0.10.0
v0.9.9
What's Changed
- Roll moment calculation due to fin cant angle by @MateusStano in https://github.com/Projeto-Jupiter/RocketPy/pull/116
- Added utilities.py submodule by @FranzYuri in https://github.com/Projeto-Jupiter/RocketPy/pull/108
- Fixed bug on reading '.eng' motor files by @luimot in https://github.com/Projeto-Jupiter/RocketPy/pull/105
New Contributors
- @luimot made their first contribution in https://github.com/Projeto-Jupiter/RocketPy/pull/105
- @AdrianoAntongiovanni made their first contribution in https://github.com/Projeto-Jupiter/RocketPy/pull/104
- @MateusStano made their first contribution in https://github.com/Projeto-Jupiter/RocketPy/pull/116
Installation
RocketPy, as of this version, can be installed using pip with the following command:
pip install rocketpy==0.9.9
Full Changelog: Projeto-Jupiter/RocketPy-Jupiter@v0.9.8...v0.9.9
v0.9.8
New Features
New names to RocketPy
- RocketPy now is available on rocketpy.org
- Package name changed to
rocketpy
Continuous Integration
- Added Lint tests using Travis CI
- Github tests were available since last release
- Added an unit test specially for SolidMotor class, detailed in #79
Bug Fixes
- Fixed problem with inconsistent dates in meteorological files due to mixed calendars, see more in #73
Enhancements
- The Dispersion Analysis example was improved
- New documentation page style using the pydata html theme
- Typo fixes on the main rocketpy files
Acknowledgments
- Thanks to @PatrickSampaioUSP and @giovaniceotto for the work on CI and documentation;
- Thanks to @Lucas-KB , @ompro07 and @lucasfourier for fixing the calendar bug so fast and to @gorzardfu for bringing the issue to our attention;
- Thanks to @Lucas-KB , @FranzYuri , @MrGribel , @ompro07 and @lucasfourier for the typo fixes.
Installation
RocketPy, as of this version, can be installed using pip with the following command:
pip install rocketpy==0.9.8