%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
+namespace JSBSim {
+
class FGInertial : public FGModel {
public:
bool Run(void);
FGColumnVector3& GetForces(void) {return vForces;}
FGColumnVector3& GetGravity(void) {return vGravity;}
- float GetForces(int n) {return vForces(n);}
+ FGColumnVector3& GetCoriolis(void) {return vCoriolis;}
+ FGColumnVector3& GetCentrifugal(void) {return vCentrifugal;}
+ double GetForces(int n) const {return vForces(n);}
bool LoadInertial(FGConfigFile* AC_cfg);
- double SLgravity(void) {return gAccelReference;}
- double gravity(void) {return gAccel;}
- double omega(void) {return RotationRate;}
- double RefRadius(void) {return RadiusReference;}
+ double SLgravity(void) const {return gAccelReference;}
+ double gravity(void) const {return gAccel;}
+ double omega(void) const {return RotationRate;}
+ double RefRadius(void) const {return RadiusReference;}
+
+ void bind(void);
+ void unbind(void);
private:
- void Debug(void);
FGColumnVector3 vOmegaLocal;
FGColumnVector3 vForces;
FGColumnVector3 vRadius;
FGColumnVector3 vGravity;
+ FGColumnVector3 vCoriolis;
+ FGColumnVector3 vCentrifugal;
double gAccel;
double gAccelReference;
double RadiusReference;
double RotationRate;
double GM;
+ void Debug(int from);
};
-
+}
//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
#endif