WSF
wsf::six_dof::RigidBodyGroundReactionPoint Class Reference

#include <WsfRigidBodySixDOF_GroundReactionPoint.hpp>

Inheritance diagram for wsf::six_dof::RigidBodyGroundReactionPoint:
Collaboration diagram for wsf::six_dof::RigidBodyGroundReactionPoint:

Public Member Functions

 RigidBodyGroundReactionPoint ()=default
 ~RigidBodyGroundReactionPoint ()=default
RigidBodyGroundReactionPointoperator= (const RigidBodyGroundReactionPoint &other)=delete
RigidBodyGroundReactionPointClone () const
bool ProcessInput (UtInput &aInput)
bool Initialize ()
bool CalcNormalForceMoment (UtVec3dX &aForce_lbs, UtVec3dX &aMoment_ftlbs, bool &aMaxCompressionExceeded, double aDeltaT_sec)
double CalcMaxFrictionForceMagnitude_lbs (const UtVec3dX &aDesiredForceBasedFrictionDirectionInSurfaceVecNED)
void CalcFrictionForceMomentWhileInMotion (UtVec3dX &aForce_lbs, UtVec3dX &aMoment_ftlbs)
void CalcFrictionForceMomentStartingToMove (UtVec3dX &aForce_lbs, UtVec3dX &aMoment_ftlbs, const UtVec3dX &aFrictionDirectionInSurfaceNED)
bool CalcGroundReactionForceMoment (UtVec3dX &aForce_lbs, UtVec3dX &aMoment_ftlbs, bool &aMaxCompressionExceeded, double aDeltaT_sec, const UtVec3dX &aAdditiveVelocityNED_fps)
size_t GetBrakingControlHandle () const
void SetBraking (double aNormalizedValue)
double GetBraking () const
size_t GetSteeringControlHandle () const
void SetSteeringAngle_deg (double aSteeringAngle_deg)
double GetSteeringAngle_deg () const
bool IsLandingGear ()
void GetSteeringData (double &aCurrentSteeringAngle_deg, double &aMaxSteeringAngle_deg) const
void GetData (UtVec3dX &aGearPos_m, UtVec3dX &aGearCompressionVec, UtVec3dX &aCurrentGearRollingVec, UtVec3dX &aCurrentForce_lbs, UtVec3dX &aCurrentMoment_ftlbs, UtVec3dX &aCurrentNormalForce_lbs, UtVec3dX &aCurrentFrictionForce_lbs, double &aUncompressedLength_ft, double &aMaximumCompression_ft, double &aCurrentCompression_ft, double &aNormalizedBrakingValue, double &aSteeringAngle_deg, double &aHeightAboveTerrain_ft, bool &aIsLandingGear, bool &aInContactWithGround, bool &aMaxCompressionExceeded)
void GetCompressionData (double &aUncompressedLength_ft, double &aMaximumCompression_ft, double &aCurrentCompression_ft, double &aNormalizedBrakingValue, double &aSteeringAngle_deg, bool &aInContactWithGround, bool &aMaxCompressionExceeded)
bool NotMoving () const
Public Member Functions inherited from wsf::six_dof::Object
 Object ()=default
virtual ~Object ()=default
virtual std::string GetName () const
virtual void SetName (const std::string &aName)
virtual MoverGetParentVehicle () const
virtual void SetParentVehicle (Mover *aParentVehicle)

Protected Member Functions

 RigidBodyGroundReactionPoint (const RigidBodyGroundReactionPoint &aSrc)=default
bool SetDataWhenNotInContactWithGround (UtVec3dX &aForce_lbs, UtVec3dX &aMoment_ftlbs, bool &aMaxCompressionExceeded)
bool SetDataWhenTinyDeltaT (UtVec3dX &aForce_lbs, UtVec3dX &aMoment_ftlbs, bool &aMaxCompressionExceeded)
bool ReturnWhenNotInContactWithGround (UtVec3dX &aForce_lbs, UtVec3dX &aMoment_ftlbs, bool &aMaxCompressionExceeded)
bool ReturnWhenTinyDeltaT (UtVec3dX &aForce_lbs, UtVec3dX &aMoment_ftlbs, bool &aMaxCompressionExceeded)
void CalcFrictionForceMoment (UtVec3dX &aForce_lbs, UtVec3dX &aMoment_ftlbs, const UtVec3dX &aFrictionDirectionInSurfaceNED, bool aUseForceBasedFriction)
Protected Member Functions inherited from wsf::six_dof::Object
 Object (const Object &)=default

Protected Attributes

std::string mControlSurfaceName
std::string mSteeringControlSurfaceName
std::string mNWSAngleControlSurfaceName
size_t mControlSurfaceHandle = 0
size_t mSteeringControlSurfaceHandle = 0
size_t mNWSAngleControlSurfaceHandle = 0
bool mNoseGear = false
bool mNWS_Engaged = false
bool mExternalForceBeingApplied = false
std::string mBrakeControlName
size_t mBrakeControlHandle = 0
UtVec3dX mGearPos_m
UtVec3dX mGearCompressionVec
UtVec3dX mGearRollingVec
double mSpringConstant_lbs_per_ft = 0.0
double mDamperConstant_lbs_per_fps = 0.0
double mUncompressedLength_ft = 0.0
double mMaximumCompression_ft = 0.0
double mRollingFrictionCoefficient = 0.02
double mBrakingFrictionCoefficient = 0.5
double mScuffingFrictionCoefficient = 0.4
bool mUseFriction = true
bool mIsLandingGear = false
double mNormalizedBrakingValue = 0.0
double mSteeringAngle_deg = 0.0
UtVec3dX mCurrentGearVel_NED_mps
UtVec3dX mCurrentGearRollingVecNED
UtVec3dX mCurrentNormalForceBody_lbs
UtVec3dX mCurrentFrictionForceBody_lbs
UtVec3dX mCurrentForce_lbs
UtVec3dX mCurrentMoment_ftlbs
UtVec3dX mCurrentExternalForce_lbs
double mCurrentCompression_ft = 0.0
double mCurrentCompressionRate_fps = 0.0
double mHeightAboveTerrain_ft = 1000000.0
bool mInContactWithGround = false
bool mMaxCompressionExceeded = false
bool mIsValid = false
bool mNotMoving = false
double mLastCompression_ft = 0.0
double mLastCompressionRate_fps = 0.0
UtVec3dX mLastNetGearVelInSurfaceNED_fps
bool mLastNetGearVelInSurfaceNEDValid = false
double mLastNormalForceMagnitude_lbs = 0.0
Protected Attributes inherited from wsf::six_dof::Object
std::string mObjName = ""
MovermParentVehicle = nullptr

Friends

class RigidBodyLandingGear

Constructor & Destructor Documentation

◆ RigidBodyGroundReactionPoint() [1/2]

wsf::six_dof::RigidBodyGroundReactionPoint::RigidBodyGroundReactionPoint ( )
default

◆ ~RigidBodyGroundReactionPoint()

wsf::six_dof::RigidBodyGroundReactionPoint::~RigidBodyGroundReactionPoint ( )
default

◆ RigidBodyGroundReactionPoint() [2/2]

wsf::six_dof::RigidBodyGroundReactionPoint::RigidBodyGroundReactionPoint ( const RigidBodyGroundReactionPoint & aSrc)
protecteddefault

Member Function Documentation

◆ CalcFrictionForceMoment()

◆ CalcFrictionForceMomentStartingToMove()

void wsf::six_dof::RigidBodyGroundReactionPoint::CalcFrictionForceMomentStartingToMove ( UtVec3dX & aForce_lbs,
UtVec3dX & aMoment_ftlbs,
const UtVec3dX & aFrictionDirectionInSurfaceNED )

References CalcFrictionForceMoment().

Referenced by operator=().

◆ CalcFrictionForceMomentWhileInMotion()

void wsf::six_dof::RigidBodyGroundReactionPoint::CalcFrictionForceMomentWhileInMotion ( UtVec3dX & aForce_lbs,
UtVec3dX & aMoment_ftlbs )

References CalcFrictionForceMoment().

Referenced by operator=().

◆ CalcGroundReactionForceMoment()

◆ CalcMaxFrictionForceMagnitude_lbs()

◆ CalcNormalForceMoment()

◆ Clone()

wsf::six_dof::RigidBodyGroundReactionPoint * wsf::six_dof::RigidBodyGroundReactionPoint::Clone ( ) const

References RigidBodyGroundReactionPoint().

Referenced by operator=().

◆ GetBraking()

double wsf::six_dof::RigidBodyGroundReactionPoint::GetBraking ( ) const

References mNormalizedBrakingValue.

Referenced by operator=().

◆ GetBrakingControlHandle()

size_t wsf::six_dof::RigidBodyGroundReactionPoint::GetBrakingControlHandle ( ) const

References mBrakeControlHandle.

Referenced by operator=().

◆ GetCompressionData()

void wsf::six_dof::RigidBodyGroundReactionPoint::GetCompressionData ( double & aUncompressedLength_ft,
double & aMaximumCompression_ft,
double & aCurrentCompression_ft,
double & aNormalizedBrakingValue,
double & aSteeringAngle_deg,
bool & aInContactWithGround,
bool & aMaxCompressionExceeded )

◆ GetData()

void wsf::six_dof::RigidBodyGroundReactionPoint::GetData ( UtVec3dX & aGearPos_m,
UtVec3dX & aGearCompressionVec,
UtVec3dX & aCurrentGearRollingVec,
UtVec3dX & aCurrentForce_lbs,
UtVec3dX & aCurrentMoment_ftlbs,
UtVec3dX & aCurrentNormalForce_lbs,
UtVec3dX & aCurrentFrictionForce_lbs,
double & aUncompressedLength_ft,
double & aMaximumCompression_ft,
double & aCurrentCompression_ft,
double & aNormalizedBrakingValue,
double & aSteeringAngle_deg,
double & aHeightAboveTerrain_ft,
bool & aIsLandingGear,
bool & aInContactWithGround,
bool & aMaxCompressionExceeded )

◆ GetSteeringAngle_deg()

double wsf::six_dof::RigidBodyGroundReactionPoint::GetSteeringAngle_deg ( ) const

References mSteeringAngle_deg.

Referenced by operator=().

◆ GetSteeringControlHandle()

size_t wsf::six_dof::RigidBodyGroundReactionPoint::GetSteeringControlHandle ( ) const

◆ GetSteeringData()

◆ Initialize()

◆ IsLandingGear()

bool wsf::six_dof::RigidBodyGroundReactionPoint::IsLandingGear ( )
inline

References mIsLandingGear.

◆ NotMoving()

bool wsf::six_dof::RigidBodyGroundReactionPoint::NotMoving ( ) const

References mNotMoving.

◆ operator=()

◆ ProcessInput()

◆ ReturnWhenNotInContactWithGround()

bool wsf::six_dof::RigidBodyGroundReactionPoint::ReturnWhenNotInContactWithGround ( UtVec3dX & aForce_lbs,
UtVec3dX & aMoment_ftlbs,
bool & aMaxCompressionExceeded )
protected

◆ ReturnWhenTinyDeltaT()

bool wsf::six_dof::RigidBodyGroundReactionPoint::ReturnWhenTinyDeltaT ( UtVec3dX & aForce_lbs,
UtVec3dX & aMoment_ftlbs,
bool & aMaxCompressionExceeded )
protected

◆ SetBraking()

void wsf::six_dof::RigidBodyGroundReactionPoint::SetBraking ( double aNormalizedValue)

References mNormalizedBrakingValue.

Referenced by operator=().

◆ SetDataWhenNotInContactWithGround()

bool wsf::six_dof::RigidBodyGroundReactionPoint::SetDataWhenNotInContactWithGround ( UtVec3dX & aForce_lbs,
UtVec3dX & aMoment_ftlbs,
bool & aMaxCompressionExceeded )
protected

◆ SetDataWhenTinyDeltaT()

bool wsf::six_dof::RigidBodyGroundReactionPoint::SetDataWhenTinyDeltaT ( UtVec3dX & aForce_lbs,
UtVec3dX & aMoment_ftlbs,
bool & aMaxCompressionExceeded )
protected

◆ SetSteeringAngle_deg()

void wsf::six_dof::RigidBodyGroundReactionPoint::SetSteeringAngle_deg ( double aSteeringAngle_deg)

References mSteeringAngle_deg.

Referenced by operator=().

◆ RigidBodyLandingGear

friend class RigidBodyLandingGear
friend

References RigidBodyLandingGear.

Referenced by RigidBodyLandingGear.

Member Data Documentation

◆ mBrakeControlHandle

size_t wsf::six_dof::RigidBodyGroundReactionPoint::mBrakeControlHandle = 0
protected

◆ mBrakeControlName

std::string wsf::six_dof::RigidBodyGroundReactionPoint::mBrakeControlName
protected

Referenced by Initialize(), and ProcessInput().

◆ mBrakingFrictionCoefficient

double wsf::six_dof::RigidBodyGroundReactionPoint::mBrakingFrictionCoefficient = 0.5
protected

◆ mControlSurfaceHandle

size_t wsf::six_dof::RigidBodyGroundReactionPoint::mControlSurfaceHandle = 0
protected

◆ mControlSurfaceName

std::string wsf::six_dof::RigidBodyGroundReactionPoint::mControlSurfaceName
protected

Referenced by Initialize(), and ProcessInput().

◆ mCurrentCompression_ft

double wsf::six_dof::RigidBodyGroundReactionPoint::mCurrentCompression_ft = 0.0
protected

◆ mCurrentCompressionRate_fps

double wsf::six_dof::RigidBodyGroundReactionPoint::mCurrentCompressionRate_fps = 0.0
protected

◆ mCurrentExternalForce_lbs

UtVec3dX wsf::six_dof::RigidBodyGroundReactionPoint::mCurrentExternalForce_lbs
protected

◆ mCurrentForce_lbs

UtVec3dX wsf::six_dof::RigidBodyGroundReactionPoint::mCurrentForce_lbs
protected

◆ mCurrentFrictionForceBody_lbs

UtVec3dX wsf::six_dof::RigidBodyGroundReactionPoint::mCurrentFrictionForceBody_lbs
protected

◆ mCurrentGearRollingVecNED

UtVec3dX wsf::six_dof::RigidBodyGroundReactionPoint::mCurrentGearRollingVecNED
protected

◆ mCurrentGearVel_NED_mps

UtVec3dX wsf::six_dof::RigidBodyGroundReactionPoint::mCurrentGearVel_NED_mps
protected

◆ mCurrentMoment_ftlbs

UtVec3dX wsf::six_dof::RigidBodyGroundReactionPoint::mCurrentMoment_ftlbs
protected

◆ mCurrentNormalForceBody_lbs

UtVec3dX wsf::six_dof::RigidBodyGroundReactionPoint::mCurrentNormalForceBody_lbs
protected

◆ mDamperConstant_lbs_per_fps

double wsf::six_dof::RigidBodyGroundReactionPoint::mDamperConstant_lbs_per_fps = 0.0
protected

◆ mExternalForceBeingApplied

bool wsf::six_dof::RigidBodyGroundReactionPoint::mExternalForceBeingApplied = false
protected

◆ mGearCompressionVec

UtVec3dX wsf::six_dof::RigidBodyGroundReactionPoint::mGearCompressionVec
protected

◆ mGearPos_m

◆ mGearRollingVec

UtVec3dX wsf::six_dof::RigidBodyGroundReactionPoint::mGearRollingVec
protected

◆ mHeightAboveTerrain_ft

double wsf::six_dof::RigidBodyGroundReactionPoint::mHeightAboveTerrain_ft = 1000000.0
protected

◆ mInContactWithGround

bool wsf::six_dof::RigidBodyGroundReactionPoint::mInContactWithGround = false
protected

◆ mIsLandingGear

bool wsf::six_dof::RigidBodyGroundReactionPoint::mIsLandingGear = false
protected

◆ mIsValid

bool wsf::six_dof::RigidBodyGroundReactionPoint::mIsValid = false
protected

◆ mLastCompression_ft

double wsf::six_dof::RigidBodyGroundReactionPoint::mLastCompression_ft = 0.0
protected

◆ mLastCompressionRate_fps

double wsf::six_dof::RigidBodyGroundReactionPoint::mLastCompressionRate_fps = 0.0
protected

◆ mLastNetGearVelInSurfaceNED_fps

UtVec3dX wsf::six_dof::RigidBodyGroundReactionPoint::mLastNetGearVelInSurfaceNED_fps
protected

◆ mLastNetGearVelInSurfaceNEDValid

bool wsf::six_dof::RigidBodyGroundReactionPoint::mLastNetGearVelInSurfaceNEDValid = false
protected

◆ mLastNormalForceMagnitude_lbs

double wsf::six_dof::RigidBodyGroundReactionPoint::mLastNormalForceMagnitude_lbs = 0.0
protected

◆ mMaxCompressionExceeded

◆ mMaximumCompression_ft

double wsf::six_dof::RigidBodyGroundReactionPoint::mMaximumCompression_ft = 0.0
protected

◆ mNormalizedBrakingValue

double wsf::six_dof::RigidBodyGroundReactionPoint::mNormalizedBrakingValue = 0.0
protected

◆ mNoseGear

bool wsf::six_dof::RigidBodyGroundReactionPoint::mNoseGear = false
protected

Referenced by ProcessInput().

◆ mNotMoving

bool wsf::six_dof::RigidBodyGroundReactionPoint::mNotMoving = false
protected

◆ mNWS_Engaged

bool wsf::six_dof::RigidBodyGroundReactionPoint::mNWS_Engaged = false
protected

◆ mNWSAngleControlSurfaceHandle

size_t wsf::six_dof::RigidBodyGroundReactionPoint::mNWSAngleControlSurfaceHandle = 0
protected

◆ mNWSAngleControlSurfaceName

std::string wsf::six_dof::RigidBodyGroundReactionPoint::mNWSAngleControlSurfaceName
protected

Referenced by Initialize(), and ProcessInput().

◆ mRollingFrictionCoefficient

double wsf::six_dof::RigidBodyGroundReactionPoint::mRollingFrictionCoefficient = 0.02
protected

◆ mScuffingFrictionCoefficient

double wsf::six_dof::RigidBodyGroundReactionPoint::mScuffingFrictionCoefficient = 0.4
protected

◆ mSpringConstant_lbs_per_ft

double wsf::six_dof::RigidBodyGroundReactionPoint::mSpringConstant_lbs_per_ft = 0.0
protected

◆ mSteeringAngle_deg

double wsf::six_dof::RigidBodyGroundReactionPoint::mSteeringAngle_deg = 0.0
protected

◆ mSteeringControlSurfaceHandle

size_t wsf::six_dof::RigidBodyGroundReactionPoint::mSteeringControlSurfaceHandle = 0
protected

◆ mSteeringControlSurfaceName

std::string wsf::six_dof::RigidBodyGroundReactionPoint::mSteeringControlSurfaceName
protected

Referenced by Initialize(), and ProcessInput().

◆ mUncompressedLength_ft

double wsf::six_dof::RigidBodyGroundReactionPoint::mUncompressedLength_ft = 0.0
protected

◆ mUseFriction

bool wsf::six_dof::RigidBodyGroundReactionPoint::mUseFriction = true
protected

Referenced by ProcessInput().


The documentation for this class was generated from the following files:
Copyrights Multiple, All Rights Reserved