Computes aerodynamic, thrust, and gravitational forces acting on the rocket. More...
#include <ForcesModel.h>
Public Member Functions | |
| ForcesModel (std::shared_ptr< Rocket > rocket, std::shared_ptr< Environment > environment) | |
| Constructs a new ForcesModel. | |
| ~ForcesModel ()=default | |
| Default destructor. | |
| std::array< double, 3 > | computeNetForce (const FlightState &state) const |
| Computes the net external force vector acting on the rocket. | |
| std::array< double, 3 > | computeNetMoment (const FlightState &state) const |
| Computes the net external moment vector acting on the rocket. | |
Private Member Functions | |
| std::array< double, 3 > | computeAerodynamicDrag (const FlightState &state) const |
| Computes aerodynamic drag force based on velocity and rocket configuration. | |
| std::array< double, 3 > | computeThrust (const FlightState &state) const |
| Computes thrust force based on motor outputs. | |
| std::array< double, 3 > | computeGravity (const FlightState &state) const |
| Computes gravitational force based on altitude and mass. | |
Private Attributes | |
| std::shared_ptr< Rocket > | rocket_ |
| Rocket model reference. | |
| std::shared_ptr< Environment > | environment_ |
| Atmospheric and gravity conditions. | |
Computes aerodynamic, thrust, and gravitational forces acting on the rocket.
The ForcesModel provides force and moment outputs based on the current rocket state, environmental conditions, and rocket configuration.
| ForcesModel::ForcesModel | ( | std::shared_ptr< Rocket > | rocket, |
| std::shared_ptr< Environment > | environment ) |
Constructs a new ForcesModel.
| rocket | Pointer to the rocket configuration. |
| environment | Pointer to the simulation environment. |
|
default |
Default destructor.
|
private |
Computes aerodynamic drag force based on velocity and rocket configuration.
| state | Current flight state. |


|
private |
Computes gravitational force based on altitude and mass.
| state | Current flight state. |


| std::array< double, 3 > ForcesModel::computeNetForce | ( | const FlightState & | state | ) | const |
Computes the net external force vector acting on the rocket.
| state | Current flight state. |

| std::array< double, 3 > ForcesModel::computeNetMoment | ( | const FlightState & | state | ) | const |
Computes the net external moment vector acting on the rocket.
Initially returns zero (for 3-DoF), but structured for 6-DoF extension.
| state | Current flight state. |
|
private |
Computes thrust force based on motor outputs.
| state | Current flight state. |

|
private |
Atmospheric and gravity conditions.