FGAerodynamics Class Reference

#include <FGAerodynamics.h>

Inherits FGModel, and FGXMLFileRead.

List of all members.


Detailed Description

This class owns and contains the list of force/coefficients that define the aerodynamic properties of an aircraft. Here also, such unique phenomena as ground effect, aerodynamic reference point shift, and maximum lift curve tailoff are handled.

    <aerodynamics>
       <alphalimits unit="{RAD | DEG}">
         <min> {number} </min>
         <max> {number} </max>
       </alphalimits>
       <hysteresis_limits unit="{RAD | DEG}">
         <min> {number} </min>
         <max> {number} </max>
       </hysteresis_limits>
       <aero_ref_pt_shift_x>  
         <function>
           {function contents}
         </function> 
       </aero_ref_pt_shift_x>  
       <function>
         {function contents}
       </function>
       <axis name="{LIFT | DRAG | SIDE | ROLL | PITCH | YAW}">
         {force coefficient definitions}
       </axis>
       {additional axis definitions}
    </aerodynamics>

Optionally two other coordinate systems may be used.

1) Body coordinate system:

       <axis name="{X | Y | Z}">

2) Axial-Normal coordinate system:
       <axis name="{AXIAL | NORMAL}">

Systems may NOT be combined, or a load error will occur.

Author:
Jon S. Berndt, Tony Peden
Version:
Revision
1.13

Definition at line 129 of file FGAerodynamics.h.

Public Member Functions

 FGAerodynamics (FGFDMExec *Executive)
 Constructor.
double GetAlphaCLMax (void) const
double GetAlphaCLMin (void) const
double GetAlphaW (void) const
double GetBI2Vel (void) const
double GetCI2Vel (void) const
double GetClSquared (void) const
 Retrieves the square of the lift coefficient.
vector< FGFunction * > * GetCoeff (void) const
string GetCoefficientStrings (string delimeter)
 Gets the strings for the current set of coefficients.
string GetCoefficientValues (string delimeter)
 Gets the coefficient values.
double GetForces (int n) const
 Gets the aerodynamic force for an axis.
FGColumnVector3GetForces (void)
 Gets the total aerodynamic force vector.
double GetHysteresisParm (void) const
double GetLoD (void) const
 Retrieves the lift over drag ratio.
double GetMoments (int n) const
 Gets the aerodynamic moment for an axis.
FGColumnVector3GetMoments (void)
 Gets the total aerodynamic moment vector.
double GetStallWarn (void) const
FGMatrix33GetTb2w (void)
 Calculates and returns the body-to-wind axis transformation matrix.
FGMatrix33GetTw2b (void)
 Calculates and returns the wind-to-body axis transformation matrix.
double GetvFw (int axis) const
 Retrieves the aerodynamic forces in the wind axes, given an axis.
FGColumnVector3GetvFw (void)
 Retrieves the aerodynamic forces in the wind axes.
bool Load (Element *element)
 Loads the Aerodynamics model.
bool Run (void)
 Runs the Aerodynamics model; called by the Executive.
void SetAlphaCLMax (double tt)
void SetAlphaCLMin (double tt)
 ~FGAerodynamics ()
 Destructor.


Constructor & Destructor Documentation

FGAerodynamics ( FGFDMExec Executive  ) 

Parameters:
Executive a pointer to the parent executive object

Definition at line 56 of file FGAerodynamics.cpp.

References FGColumnVector3::InitMatrix(), and FGModel::Name.


Member Function Documentation

string GetCoefficientStrings ( string  delimeter  ) 

Parameters:
delimeter either a tab or comma string depending on output type
Returns:
a string containing the descriptive names for all coefficients

Definition at line 403 of file FGAerodynamics.cpp.

Referenced by FGOutput::DelimitedOutput(), and FGOutput::SocketOutput().

string GetCoefficientValues ( string  delimeter  ) 

Parameters:
delimeter either a tab or comma string depending on output type
Returns:
a string containing the numeric values for the current set of coefficients

Definition at line 433 of file FGAerodynamics.cpp.

Referenced by FGOutput::DelimitedOutput(), and FGOutput::SocketOutput().

double GetForces ( int  n  )  const [inline]

Parameters:
n Axis index. This could be 0, 1, or 2, or one of the axis enums: eX, eY, eZ.
Returns:
the force acting on an axis

Definition at line 158 of file FGAerodynamics.h.

FGColumnVector3& GetForces ( void   )  [inline]

Returns:
a force vector reference.

Definition at line 152 of file FGAerodynamics.h.

Referenced by FGAuxiliary::Run(), and FGAircraft::Run().

double GetMoments ( int  n  )  const [inline]

Returns:
the moment about a single axis (as described also in the similar call to GetForces(int n).

Definition at line 167 of file FGAerodynamics.h.

FGColumnVector3& GetMoments ( void   )  [inline]

Returns:
a moment vector reference.

Definition at line 162 of file FGAerodynamics.h.

Referenced by FGAircraft::Run().

FGMatrix33 & GetTb2w ( void   ) 

Returns:
a reference to the wind-to-body transformation matrix.

Definition at line 260 of file FGAerodynamics.cpp.

References FGModel::Auxiliary, FGAuxiliary::Getalpha(), and FGAuxiliary::Getbeta().

Referenced by FGAircraft::Run(), and FGAerodynamics::Run().

FGMatrix33 & GetTw2b ( void   ) 

Returns:
a reference to the wind-to-body transformation matrix.

Definition at line 233 of file FGAerodynamics.cpp.

References FGModel::Auxiliary, FGAuxiliary::Getalpha(), and FGAuxiliary::Getbeta().

Referenced by FGAerodynamics::Run(), and FGForce::Transform().

double GetvFw ( int  axis  )  const [inline]

Parameters:
axis the axis to return the force for (eX, eY, eZ).
Returns:
a reference to a column vector containing the requested wind axis force.

Definition at line 177 of file FGAerodynamics.h.

FGColumnVector3& GetvFw ( void   )  [inline]

Returns:
a reference to a column vector containing the wind axis forces.

Definition at line 171 of file FGAerodynamics.h.

Referenced by FGOutput::DelimitedOutput(), FGAircraft::GetNlf(), and FGOutput::SocketOutput().

bool Load ( Element element  )  [virtual]

The Load function for this class expects the XML parser to have found the aerodynamics keyword in the configuration file.

Parameters:
element pointer to the current XML element for aerodynamics parameters.
Returns:
true if successful

Reimplemented from FGModel.

Definition at line 288 of file FGAerodynamics.cpp.

References FGXMLFileRead::document, FGModel::FDMExec, Element::FindElement(), Element::FindElementValueAsNumberConvertFromTo(), Element::FindNextElement(), Element::GetAttributeValue(), FGFDMExec::GetFullAircraftPath(), FGXMLFileRead::LoadXMLDocument(), and FGModel::PropertyManager.

Referenced by FGFDMExec::LoadModel().

bool Run ( void   )  [virtual]

Returns:
false if no error

Reimplemented from FGModel.

Definition at line 116 of file FGAerodynamics.cpp.

References FGModel::Aircraft, FGModel::Auxiliary, FGModel::FDMExec, FGAuxiliary::Getalpha(), FGAircraft::Getcbar(), FGAuxiliary::Getqbar(), FGAerodynamics::GetTb2w(), FGAerodynamics::GetTw2b(), FGFunction::GetValue(), FGAuxiliary::GetVt(), FGAircraft::GetWingArea(), FGAircraft::GetWingIncidence(), FGAircraft::GetWingSpan(), FGAircraft::GetXYZrp(), FGFDMExec::Holding(), FGColumnVector3::InitMatrix(), FGModel::MassBalance, FGModel::Run(), and FGMassBalance::StructuralToBody().


The documentation for this class was generated from the following files:
Generated on Sun May 4 15:10:26 2008 for JSBSim Flight Dynamics Model by  doxygen 1.5.1