Skip to content

Commit 14b9984

Browse files
aZira371CopilotCopilot
authored
ENH: 3-dof lateral motion improvement (#883)
* ENH: addition of bella lui based 3 dof and 6 dof comparison notebook - ENH: a new notebook bella_lui_3dof_vs_6dof.ipynb which uses new implementations of weathercocking model on 3dof * ENH: addition of weathercocking model to flight.py - ENH: introduced new weathercock_coeff parameter in Flight.init (default: 1.0) - ENH: updated u_dot_generalized_3dof to compute quaternion derivatives proportional to misalignment with relative wind - ENH: angular velocity = weathercock_coeff * sin(misalignment_angle) * ENH: added tests for weathercocking to test_flight_3dof.py - ENH: unit tests added for weathercocking to check whether weathercock_coeff=0 results in fixed attitude (no quaternion change). - MNT: format and lint updates for new additions * DOC: updating 3 dof documentation and corresponding index.rst - DOC: added 3 dof and 6 dof comparison analysis to three_dof_simulation.rst - DOC: updated iusers/index.rst to build three_dof_simulation.rst - MNT: deleted the bella_lui_3dof_vs_6dof_comparison.ipynb as the doc now covers this section * MNT: corrections to test_flight_3dof.py - MNT: corrected doc string to represent correct orientation - MNT: improved tolerance of check on quaternion derivative which should be ideally very small when axes are aligned * MNT: docstring corrections to flight.py around new weathercocking implementation * BUG: correction of singularity bug during align on vectors in weathercocking - BUG: implemented a dot product check to ensure that singularity bug is avoided when rocket body and wind velocity are anti aligned to make rocket statically stable (in u_dot_generalized_3dof) - MNT: removed redundant double assignment of e0 and w0 vectors within u_dot_generalized_3dof - MNT: format correction to test_flight_3dof.py * MNT: updating location of 3 dof doc in users index.rst - MNT: 3 dof documentation only referred in users section/getting started - MNT: correction of docstring in flight.py - MNT: corrected unit_vector call when defining rotation axis in u_dot_generalized_3dof - MNT: docstring correction in test_flight_3dof.py - ENH: test coverage added for anti alignment case in weathercock model to test_flight_3dof.py * DOC: three_dof_simulation.rst update to add explanation of weather cocking coeff usage and value. * MNT: changed default value of weather_coeff in flight.py and added fixtures to test_flight_3dof.py * MNT: shifting test_flight_dof.py to integration tests. - MNT: fixed default weathercock_coeff value in flight.py to match 3 dof behaviour by default - MNT: corrected fixtures and docstrings in test_flight_3dof.py * MNT: docsrting update in test_flight_3dof.py Co-authored-by: Copilot <[email protected]> * MNT: Update of docstring in test_flight_3dof.py - MNT: correction of docstring now that fixtures are used. Co-authored-by: Copilot <[email protected]> * DOC: Update of three_dof_simulation.rst Co-authored-by: Copilot <[email protected]> * Update tests/integration/simulation/test_flight_3dof.py Co-authored-by: Copilot <[email protected]> * Docstring Update tests/integration/simulation/test_flight_3dof.py Co-authored-by: Copilot <[email protected]> * docstring Update tests/integration/simulation/test_flight_3dof.py Co-authored-by: Copilot <[email protected]> * docstring Update docs/user/three_dof_simulation.rst Co-authored-by: Copilot <[email protected]> * Docstring Update rocketpy/simulation/flight.py Co-authored-by: Copilot <[email protected]> * MNT: Docstring updates to various files related to 3 dof * MNT: unit vector edge case check in flight.py - MNT: perp_axis singularity value error implemented to handle edge case for perp_axis being parallel to body axis in weathercocking model of 3 dof. * DOC: Add note about motor file paths in 3-DOF comparison section (#902) * Initial plan * DOC: Add note about motor file paths in 3-DOF comparison section Co-authored-by: aZira371 <[email protected]> --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: aZira371 <[email protected]> * MNT: eliminate quaternion derivative code duplication in u_dot_generalized_3dof (#903) * Initial plan * Refactor: eliminate quaternion derivative code duplication in u_dot_generalized_3dof Co-authored-by: aZira371 <[email protected]> * Improve comment clarity in weathercocking aligned case Co-authored-by: aZira371 <[email protected]> --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: aZira371 <[email protected]> * DOC: CHANGELOG.md update to reflect implementation of 3 dof lateral motion improvement --------- Co-authored-by: Copilot <[email protected]> Co-authored-by: Copilot <[email protected]>
1 parent 45a7369 commit 14b9984

File tree

6 files changed

+743
-152
lines changed

6 files changed

+743
-152
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ Attention: The newest changes should be on top -->
3232

3333
### Added
3434

35+
- ENH: 3-dof lateral motion improvement [#883](https://github.com/RocketPy-Team/RocketPy/pull/883)
3536
- ENH: Add multi-dimensional drag coefficient support (Cd as function of M, Re, α) [#875](https://github.com/RocketPy-Team/RocketPy/pull/875)
3637
- ENH: Add save functionality to `_MonteCarloPlots.all` method [#848](https://github.com/RocketPy-Team/RocketPy/pull/848)
3738
- ENH: add animations for motor propellant mass and tank fluid volumes [#894](https://github.com/RocketPy-Team/RocketPy/pull/894)

docs/user/index.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ RocketPy's User Guide
77

88
Installation and Requirements <installation.rst>
99
First Simulation <first_simulation.rst>
10-
3-DOF Simulations <three_dof_simulation.rst>
10+
3 DOF Simulations and Comparison <three_dof_simulation.rst>
1111

1212
.. toctree::
1313
:maxdepth: 1

0 commit comments

Comments
 (0)