|
WSF
|
#include <WsfPointMassSixDOF_PropulsionSystem.hpp>


Public Member Functions | |
| PointMassPropulsionSystem ()=default | |
| PointMassPropulsionSystem & | operator= (const PointMassPropulsionSystem &other)=delete |
| PointMassPropulsionSystem * | Clone () const |
| void | SetParentVehicle (Mover *aParentVehicle) override |
| bool | ProcessInput (UtInput &aInput, const TypeManager *aTypeManager) |
| bool | Initialize (int64_t aSimTime_nanosec) override |
| void | LinkControls (PointMassFlightControlSystem *aFlightControls) |
| const std::vector< std::unique_ptr< PointMassThrustProducerObject > > & | GetThrustProducerList () const |
| void | CalculatePropulsionFM (double aDeltaT_sec, double aAlt_ft, double aDynPress_lbsqft, double aStatPress_lbssqft, double aSpeed_fps, double aMach, double aAlpha_rad, double aBeta_rad, ForceAndRotationObject &aForceAndMoment, double &aFuelBurnRate_pps, double &aFuelBurned_lbs) |
| void | UpdatePropulsionFM (double aDeltaT_sec, double aAlt_ft, double aDynPress_lbsqft, double aStatPress_lbssqft, double aSpeed_fps, double aMach, double aAlpha_rad, double aBeta_rad, ForceAndRotationObject &aForceAndMoment, double &aFuelBurnRate_pps, double &aFuelBurned_lbs) |
| ThrustProducerObject * | GetThrustProducerObjectByName (const std::string &aName) const override |
| ThrustProducerObject * | GetThrustProducerByIndex (size_t aIndex) const override |
| void | SetThrottleLeverPosition (double aThrottleLeverPosition) override |
| void | EnableThrustVectoring (bool aEnableThrustVectoring) override |
| bool | AfterburnerIsPresent () const override |
| size_t | GetNumThrustProducers () const override |
| void | Ignite (int64_t aIgniteTimeInFrame_nanosec) override |
| void | Shutdown (int64_t aTerminateTime_nanosec=0) override |
| bool | IsProducingThrust () const override |
| bool | SetFuelFeed (std::string &aEngineName, std::string aFuelTankName) override |
| bool | SetFuelFeed (std::string aFuelTankName) override |
| bool | AnEngineIsOperating (bool aTestSubobjects=false) const override |
| bool | AnEngineIsSmoking (bool aTestSubobjects=false) const override |
| bool | AnEngineHasAfterburnerOn (bool aTestSubobjects=false) const override |
| bool | AnEngineIsContrailing (bool aTestSubobjects=false) const override |
| bool | AnEngineIsEmittingSmokeTrail (bool aTestSubobjects=false) const override |
| void | MakeAnEngineSmoke (int aEngineIndex) override |
| Public Member Functions inherited from wsf::six_dof::PropulsionSystem | |
| PropulsionSystem ()=default | |
| PropulsionSystem & | operator= (const PropulsionSystem &other)=delete |
| void | SetParentVehicle (Mover *aParentVehicle) override |
| virtual void | Update (int64_t aSimTime_nanosec) |
| void | SetLastSimTime (int64_t aLastSimTime_nanosec) |
| const std::unordered_map< std::string, UtCloneablePtr< FuelTank > > & | GetFuelTanks () const |
| FuelTank * | GetFuelTank (const std::string &aName) const |
| bool | ThrustVectoringEnabled () const |
| size_t | GetNumFuelTanks () const |
| bool | RemoveFuelTankByName (std::string aName) |
| bool | AddFuelTank (std::unique_ptr< FuelTank > aFuelTank) |
| bool | AddFuelTransfer (const std::string &aTransferName, const std::string &aSourceTankName, const std::string &aTargetTankName) |
| bool | AddFuelTransferAndConnect (const std::string &aTransferName, const std::string &aSourceTankName, const std::string &aTargetTankName) |
| bool | RemoveFuelTransfer (const std::string &aTransferName) |
| bool | ModifyFuelQuantity (const std::string &aTankName, double aQty_lbs) |
| bool | FuelTransferNameUnique (const std::string &aName) const |
| double | GetInternalFuelTankCapacity_lbs () const |
| double | GetCurrentInternalFuelTankQuantity_lbs () const |
| double | AddFuelQuantity_lbs (double aFuelToAdd_lbs) |
| double | FillAllTanks (double aPercentFull) |
| void | EmptyAllTanks () |
| const MassProperties | GetMassProperties () 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 Mover * | GetParentVehicle () const |
Protected Member Functions | |
| PointMassPropulsionSystem (const PointMassPropulsionSystem &aSrc) | |
| void | PropulsionCalculationsFM (double aDeltaT_sec, double aAlt_ft, double aDynPress_lbsqft, double aStatPress_lbssqft, double aSpeed_fps, double aMach, double aAlpha_rad, double aBeta_rad, ForceAndRotationObject &aForceAndMoment, double &aFuelBurnRate_pps, double &aFuelBurned_lbs, bool aUpdateData) |
| Protected Member Functions inherited from wsf::six_dof::PropulsionSystem | |
| PropulsionSystem (const PropulsionSystem &aSrc) | |
| void | RemoveInvalidFuelTransfers () |
| Protected Member Functions inherited from wsf::six_dof::Object | |
| Object (const Object &)=default | |
Protected Attributes | |
| std::vector< std::unique_ptr< PointMassThrustProducerObject > > | mEngineList |
| const double * | mThrottleSettingMilPtr = nullptr |
| const double * | mThrottleSettingAbPtr = nullptr |
| Protected Attributes inherited from wsf::six_dof::PropulsionSystem | |
| std::vector< std::unique_ptr< FuelTransfer > > | mFuelTransferList |
| std::unordered_map< std::string, UtCloneablePtr< FuelTank > > | mFuelTankMap |
| int64_t | mLastSimTime_nanosec = 0 |
| double | mPropulsionSystemThrottleLeverPosition = 0.0 |
| bool | mThrottleLeverPositionSet = false |
| bool | mEnableThrustVectoring = false |
| Protected Attributes inherited from wsf::six_dof::Object | |
| std::string | mObjName = "" |
| Mover * | mParentVehicle = nullptr |
|
default |
Referenced by Clone(), operator=(), and PointMassPropulsionSystem().
|
protected |
|
overridevirtual |
Implements wsf::six_dof::PropulsionSystem.
References mEngineList.
Referenced by PropulsionCalculationsFM(), and SetThrottleLeverPosition().
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
| void wsf::six_dof::PointMassPropulsionSystem::CalculatePropulsionFM | ( | double | aDeltaT_sec, |
| double | aAlt_ft, | ||
| double | aDynPress_lbsqft, | ||
| double | aStatPress_lbssqft, | ||
| double | aSpeed_fps, | ||
| double | aMach, | ||
| double | aAlpha_rad, | ||
| double | aBeta_rad, | ||
| ForceAndRotationObject & | aForceAndMoment, | ||
| double & | aFuelBurnRate_pps, | ||
| double & | aFuelBurned_lbs ) |
References PropulsionCalculationsFM().
| wsf::six_dof::PointMassPropulsionSystem * wsf::six_dof::PointMassPropulsionSystem::Clone | ( | ) | const |
References PointMassPropulsionSystem().
Referenced by operator=().
|
overridevirtual |
Implements wsf::six_dof::PropulsionSystem.
References wsf::six_dof::PropulsionSystem::mEnableThrustVectoring, and mEngineList.
|
overridevirtual |
Implements wsf::six_dof::PropulsionSystem.
References mEngineList.
Referenced by wsf::six_dof::PointMassMoverTestObject::TurnRateAt().
|
overridevirtual |
Implements wsf::six_dof::PropulsionSystem.
References mEngineList.
Referenced by MakeAnEngineSmoke(), and wsf::six_dof::PointMassMoverTestObject::TurnRateAt().
|
inline |
References mEngineList.
|
overridevirtual |
Implements wsf::six_dof::PropulsionSystem.
References mEngineList.
|
overridevirtual |
Implements wsf::six_dof::PropulsionSystem.
References mEngineList, and wsf::six_dof::PropulsionSystem::mPropulsionSystemThrottleLeverPosition.
|
overridevirtual |
|
overridevirtual |
Implements wsf::six_dof::PropulsionSystem.
References mEngineList.
| void wsf::six_dof::PointMassPropulsionSystem::LinkControls | ( | PointMassFlightControlSystem * | aFlightControls | ) |
|
overridevirtual |
Implements wsf::six_dof::PropulsionSystem.
References GetThrustProducerByIndex(), wsf::six_dof::ThrustProducerObject::MakeEngineSmoke(), and mEngineList.
|
delete |
References Clone(), Initialize(), LinkControls(), PointMassPropulsionSystem(), ProcessInput(), and SetParentVehicle().
| bool wsf::six_dof::PointMassPropulsionSystem::ProcessInput | ( | UtInput & | aInput, |
| const TypeManager * | aTypeManager ) |
References wsf::six_dof::PropulsionSystem::AddFuelTank(), wsf::six_dof::ThrustProducerObject::Clone(), wsf::six_dof::PropulsionSystem::ThrustProducerInfo::fuelFeedName, wsf::six_dof::PropulsionSystem::FuelTransferNameUnique(), wsf::six_dof::TypeManager::GetThrustProducerObjectType(), mEngineList, wsf::six_dof::PropulsionSystem::mFuelTransferList, wsf::six_dof::Object::mParentVehicle, wsf::six_dof::PropulsionSystem::ThrustProducerInfo::relativePosition, wsf::six_dof::PropulsionSystem::ThrustProducerInfo::relativeYawPitchRoll, and wsf::six_dof::Object::SetName().
Referenced by operator=().
|
protected |
|
overridevirtual |
Implements wsf::six_dof::PropulsionSystem.
References mEngineList.
|
overridevirtual |
Implements wsf::six_dof::PropulsionSystem.
References mEngineList.
|
overridevirtual |
Reimplemented from wsf::six_dof::Object.
References mEngineList, and wsf::six_dof::PropulsionSystem::SetParentVehicle().
Referenced by operator=().
|
overridevirtual |
Implements wsf::six_dof::PropulsionSystem.
References AfterburnerIsPresent(), wsf::six_dof::utils::LimitThrottleAfterburner(), wsf::six_dof::utils::LimitThrottleNormalized(), mEngineList, wsf::six_dof::PropulsionSystem::mPropulsionSystemThrottleLeverPosition, and wsf::six_dof::PropulsionSystem::mThrottleLeverPositionSet.
|
overridevirtual |
Implements wsf::six_dof::PropulsionSystem.
References mEngineList, and wsf::six_dof::PropulsionSystem::mPropulsionSystemThrottleLeverPosition.
| void wsf::six_dof::PointMassPropulsionSystem::UpdatePropulsionFM | ( | double | aDeltaT_sec, |
| double | aAlt_ft, | ||
| double | aDynPress_lbsqft, | ||
| double | aStatPress_lbssqft, | ||
| double | aSpeed_fps, | ||
| double | aMach, | ||
| double | aAlpha_rad, | ||
| double | aBeta_rad, | ||
| ForceAndRotationObject & | aForceAndMoment, | ||
| double & | aFuelBurnRate_pps, | ||
| double & | aFuelBurned_lbs ) |
References PropulsionCalculationsFM().
|
protected |
Referenced by AfterburnerIsPresent(), AnEngineHasAfterburnerOn(), AnEngineIsContrailing(), AnEngineIsEmittingSmokeTrail(), AnEngineIsOperating(), AnEngineIsSmoking(), EnableThrustVectoring(), GetNumThrustProducers(), GetThrustProducerByIndex(), GetThrustProducerList(), GetThrustProducerObjectByName(), Ignite(), Initialize(), IsProducingThrust(), MakeAnEngineSmoke(), PointMassPropulsionSystem(), ProcessInput(), PropulsionCalculationsFM(), SetFuelFeed(), SetFuelFeed(), SetParentVehicle(), SetThrottleLeverPosition(), and Shutdown().
|
protected |
Referenced by LinkControls(), and PropulsionCalculationsFM().
|
protected |
Referenced by LinkControls(), and PropulsionCalculationsFM().