RocketPy icon indicating copy to clipboard operation
RocketPy copied to clipboard

ENH: 3-DOF simulation

Open Gui-FernandesBR opened this issue 1 year ago • 4 comments

Allow RocketPy to run a point-mass simulation (3DOF).

Important aspects of this issue:

  • You should modify the flight class to add an option to run a simulation with 3DOF of 6DOF (current model). A similar approach is currently done with the equations_of_motion argument in the Flight class constructor.
  • The 3DOF simulation should run faster than our current model!
  • When using the 3DOF model, is is expected that the user may skip a few steps of the rocketpy workflow. For example, user do not needs to set moments of inertia since it will not be used for calculations.
  • However, I personally believe it would be a good application to being able to run the same Rocket object with both 3DOF and 6DOF models so we can easily compare the models.

Optionally, one may create a new FlightClass, in case you find it easier. However, I don't really appreciate this approach. I think the "giant Flight class with different options" may be a better option.

Please read the thread below to achieve a better understanding!

Gui-FernandesBR avatar Aug 19 '24 02:08 Gui-FernandesBR

Could help us on this issue: https://github.com/werocketry/RocketFlightSim/tree/main/rocketflightsim

@chasgior214

Gui-FernandesBR avatar Sep 13 '24 18:09 Gui-FernandesBR

For sure!

What is the goal of having 3 DOF simulations in RocketPy? I think the best way to implement it would depend on the goal(s) of having it.

chasgior214 avatar Sep 15 '24 02:09 chasgior214

The ability to choose between 6DoF or 3DoF simulation modes allows users to simulate without requiring extensive data, such as the rocket's inertia. This makes RocketPy useful for preliminary design phases, where only basic parameters like mass and drag are needed to estimate the rocket's apogee, without concern for stability.

This feature will need to undergo testing, but we believe it could become a valuable tool, enabling RocketPy to support the rocket's development process from initial design to launch.

LUCKIN13 avatar Nov 17 '24 22:11 LUCKIN13