#include <FGRocket.h>
Inherits FGEngine.
One can model the thrust of a solid rocket by providing a normalized thrust table as a function of time. For instance, the space shuttle solid rocket booster normalized thrust value looks roughly like this:
<thrust_table name="propulsion/thrust_time" type="internal">
<tableData>
0.0 0.00
0.2 0.91
8.0 0.97
16.0 0.99
20.0 1.00
21.0 1.00
24.0 0.95
32.0 0.85
40.0 0.78
48.0 0.72
50.0 0.71
52.0 0.71
56.0 0.73
64.0 0.78
72.0 0.82
80.0 0.81
88.0 0.73
96.0 0.69
104.0 0.59
112.0 0.46
120.0 0.09
132.0 0.00
</tableData>
</thrust_table>
The left column is time, the right column is normalized thrust. Inside the FGRocket class code, the maximum thrust is calculated, and multiplied by this table. The Rocket class also tracks burn time. All that needs to be done is for the rocket engine to be throttle up to 1. At that time, the solid rocket fuel begins burning and thrust is provided.
Definition at line 134 of file FGRocket.h.
Public Member Functions | |
| double | Calculate (void) |
| Determines the thrust. | |
| FGRocket (FGFDMExec *exec, Element *el, int engine_number) | |
| Constructor. | |
| string | GetEngineLabels (string delimeter) |
| string | GetEngineValues (string delimeter) |
| bool | GetFlameout (void) |
| Gets the flame-out status. | |
| double | GetOxiFlowRate (void) const |
| double | GetTotalImpulse (void) const |
| Gets the total impulse of the rocket. | |
| ~FGRocket (void) | |
| Destructor. | |
| exec | pointer to JSBSim parent object, the FDM Executive. | |
| el | a pointer to the XML Element instance representing the engine. | |
| engine_number | engine number |
Definition at line 54 of file FGRocket.cpp.
| double Calculate | ( | void | ) | [virtual] |
| bool GetFlameout | ( | void | ) | [inline] |
The engine will "flame out" if the throttle is set below the minimum sustainable-thrust setting.
Definition at line 158 of file FGRocket.h.
| double GetTotalImpulse | ( | void | ) | const [inline] |
Definition at line 152 of file FGRocket.h.
1.5.5