]> git.mxchange.org Git - flightgear.git/blobdiff - src/FDM/JSBSim/FGAerodynamics.h
JSBSim updates. This update changes the file format, so an update of the base
[flightgear.git] / src / FDM / JSBSim / FGAerodynamics.h
index 65cffbd7a5e2711fa8c3a53c608f602a36446b3a..5adac5b8604a3245e076b1b1ba11f956164fb5ae 100644 (file)
@@ -85,7 +85,10 @@ CLASS DOCUMENTATION
     as ground effect and maximum lift curve tailoff are handled.
     @author Jon S. Berndt
     @version $Id$
-    @see -
+    @see <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jsbsim/JSBSim/FGAerodynamics.h?rev=HEAD&content-type=text/vnd.viewcvs-markup">
+         Header File </a>
+    @see <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jsbsim/JSBSim/FGAerodynamics.cpp?rev=HEAD&content-type=text/vnd.viewcvs-markup">
+         Source File </a>
 */
 
 /*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -111,17 +114,34 @@ public:
 
   /** Gets the total aerodynamic force vector.
       @return a force vector reference. */
-  FGColumnVector& GetForces(void) {return vForces;}
+  FGColumnVector3& GetForces(void) {return vForces;}
+  double GetForces(int n) const {return vForces(n);}
 
   /** Gets the total aerodynamic moment vector.
       @return a moment vector reference. */
-  FGColumnVector& GetMoments(void) {return vMoments;}
-
-  inline FGColumnVector GetvLastFs(void) { return vLastFs; }
-  inline float GetvLastFs(int axis) { return vLastFs(axis); }
-  inline FGColumnVector GetvFs(void) { return vFs; }
-  inline float GetvFs(int axis) { return vFs(axis); }
-  float GetLoD(void);
+  FGColumnVector3& GetMoments(void) {return vMoments;}
+  double GetMoments(int n) const {return vMoments(n);}
+
+  FGColumnVector3& GetvLastFs(void) { return vLastFs; }
+  double GetvLastFs(int axis) const { return vLastFs(axis); }
+  FGColumnVector3& GetvFs(void) { return vFs; }
+  double GetvFs(int axis) const { return vFs(axis); }
+  inline double GetLoD(void) const { return lod; }
+  inline double GetClSquared(void) const { return clsq; } 
+  inline double GetAlphaCLMax(void) const { return alphaclmax; }
+  inline double GetAlphaCLMin(void) const { return alphaclmin; }
+  
+  inline double GetAlphaHystMax(void) const { return alphahystmax; }
+  inline double GetAlphaHystMin(void) const { return alphahystmin; }
+  inline double GetHysteresisParm(void) const { return stall_hyst; }
+  inline double GetStallWarn(void) const { return impending_stall; }
+  double GetAlphaW(void) const { return alphaw; }
+
+  double GetBI2Vel(void) const { return bi2vel; }
+  double GetCI2Vel(void) const { return ci2vel; }
+  
+  inline void SetAlphaCLMax(double tt) { alphaclmax=tt; }
+  inline void SetAlphaCLMin(double tt) { alphaclmin=tt; }
 
     /** Gets the strings for the current set of coefficients.
       @return a string containing the descriptive names for all coefficients */
@@ -131,22 +151,30 @@ public:
       @return a string containing the numeric values for the current set of
       coefficients */
   string GetCoefficientValues(void);
-
-  /// Gets the Normal Load Factor
-  float GetNlf(void);
-
+  
+  void bind(void);
+  void bindModel(void);
+  void unbind(void);
+  
 private:
   typedef map<string,int> AxisIndex;
   AxisIndex AxisIdx;
   typedef vector<FGCoefficient*> CoeffArray;
   CoeffArray* Coeff;
-  FGColumnVector vFs;
-  FGColumnVector vForces;
-  FGColumnVector vMoments;
-  FGColumnVector vLastFs;
-  FGColumnVector vDXYZcg;
-
-  void Debug(void);
+  FGColumnVector3 vFs;
+  FGColumnVector3 vForces;
+  FGColumnVector3 vMoments;
+  FGColumnVector3 vLastFs;
+  FGColumnVector3 vDXYZcg;
+  double alphaclmax, alphaclmin;
+  double alphahystmax, alphahystmin;
+  double impending_stall, stall_hyst;
+  double bi2vel, ci2vel,alphaw;
+  double clsq,lod;
+  
+  typedef double (FGAerodynamics::*PMF)(int) const;
+
+  void Debug(int from);
 };
 
 //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%