 |
JSBSim Flight Dynamics Model
1.1.11 (13 Feb 2022)
An Open Source Flight Dynamics and Control Software Library in C++
|
44 #include "math/FGLocation.h"
45 #include "input_output/FGGroundCallback.h"
79 bool Run(
bool Holding)
override;
80 static constexpr
double GetStandardGravity(
void) {
return gAccelReference; }
83 void SetOmegaPlanet(
double rate) {
86 double GetSemimajor(
void)
const {
return a;}
87 double GetSemiminor(
void)
const {
return b;}
107 return GroundCallback->GetAGLevel(location, contact, normal, velocity,
117 return GroundCallback->GetAGLevel(location, lDummy, vDummy, vDummy,
131 GroundCallback->SetTerrainElevation(h);
140 GroundCallback->SetTime(time);
201 bool Load(
Element* el)
override;
207 static constexpr
double gAccelReference = 9.80665 / fttom;
216 std::unique_ptr<FGGroundCallback> GroundCallback;
218 double GetGAccel(
double r)
const;
221 void Debug(
int from)
override;
Encapsulates the JSBSim simulation executive.
This class implements a 3 element column vector.
FGLocation holds an arbitrary location in the Earth centered Earth fixed reference frame (ECEF).
Base class for all scheduled JSBSim models.
eGravType
These define the indices use to select the gravitation models.
void SetGravityType(int gt)
Set the gravity type.
@ gtWGS84
Evaluate gravity using WGS84 formulas that take the Earth oblateness into account.
bool Run(bool Holding) override
Runs the Inertial model; called by the Executive Can pass in a value indicating if the executive is d...
FGMatrix33 GetTec2l(const FGLocation &location) const
Transform matrix from the earth centered to local horizontal frame.
FGMatrix33 GetTl2ec(const FGLocation &location) const
Transform matrix from the local horizontal frame to earth centered.
int GetGravityType(void) const
Get the gravity type.
Handles matrix math operations.
void SetGroundCallback(FGGroundCallback *gc)
Sets the ground callback pointer.
void SetTerrainElevation(double h)
Set the terrain elevation above sea level.
FGMatrix33 Transposed(void) const
Transposed matrix.
@ gtStandard
Evaluate gravity using Newton's classical formula assuming the Earth is spherical.
void SetTime(double time)
Set the simulation time.
double GetAltitudeAGL(const FGLocation &location) const
Get the altitude above ground level.
void SetAltitudeAGL(FGLocation &location, double altitudeAGL)
Set the altitude above ground level.
This class provides callback slots to get ground specific data.
Models inertial forces (e.g.
double GetContactPoint(const FGLocation &location, FGLocation &contact, FGColumnVector3 &normal, FGColumnVector3 &velocity, FGColumnVector3 &ang_velocity) const
Get terrain contact point information below the current location.