WSF
WsfRocketOrbitalManeuvering::Rocket Class Reference

#include <WsfRocketOrbitalManeuvering.hpp>

Public Member Functions

 Rocket ()
 Rocket (const Rocket &aSrc)
Rocketoperator= (const Rocket &)=delete
 ~Rocket ()=default
bool Initialize ()
bool ProcessInput (UtInput &aInput)
double Thrust (double aDuration, double &aDeltaV)
double GetDuration (double aDeltaV) const
double GetDeltaV (double aDuration) const
double GetAvailableDeltaV () const
 Return the total delta-v available for the entire multi-stage rocket.
double GetAvailableDuration () const
double GetTotalMass () const
 Return the total mass of the rocket, including all stages.
double GetFuelMass () const
 Return the fuel mass, considered to be the fuel for this stage only.
double GetEmptyMass () const
double GetPayloadMass () const
 Return the payload mass, which is the total mass of all subsequent stages, if any.
bool PerformStagingOperation ()
 Perform a staging event for the rocket. If no other stages are present, false is returned.

Constructor & Destructor Documentation

◆ Rocket() [1/2]

WsfRocketOrbitalManeuvering::Rocket::Rocket ( )

Referenced by operator=(), and Rocket().

◆ Rocket() [2/2]

WsfRocketOrbitalManeuvering::Rocket::Rocket ( const Rocket & aSrc)

References begin(), and Rocket().

◆ ~Rocket()

Member Function Documentation

◆ GetAvailableDeltaV()

double WsfRocketOrbitalManeuvering::Rocket::GetAvailableDeltaV ( ) const

Return the total delta-v available for the entire multi-stage rocket.

References WsfRocketOrbitalManeuvering::GetTotalMass().

Referenced by ~Rocket().

◆ GetAvailableDuration()

double WsfRocketOrbitalManeuvering::Rocket::GetAvailableDuration ( ) const

Referenced by ~Rocket().

◆ GetDeltaV()

double WsfRocketOrbitalManeuvering::Rocket::GetDeltaV ( double aDuration) const

Return the delta-v necessary to execute a maneuver with the specified duration, given the current mass properties of the rocket.

Parameters
aDurationThe duration for which the rocket will thrust.
Returns
The delta-v that would be expended to complete the maneuver. If the rocket does not have sufficient fuel to thrust for the given duration of the maneuver, WsfOrbitalManeuvering::cINFINITE_DELTA_V is returned.

References WsfOrbitalManeuvering::cINFINITE_DELTA_V, and WsfRocketOrbitalManeuvering::GetTotalMass().

Referenced by ~Rocket().

◆ GetDuration()

double WsfRocketOrbitalManeuvering::Rocket::GetDuration ( double aDeltaV) const

Return how long it will take to execute a maneuver with the specified delta-V, given the current mass properties of the rocket.

Parameters
aDeltaVThe delta-V to expend in the maneuver.
Returns
The time necessary to complete the maneuver. If the rocket does not have sufficient delta-v to complete the maneuver, WsfOrbitalManeuvering::cINFINITE_DURATION is returned.

References WsfOrbitalManeuvering::cINFINITE_DURATION, and WsfRocketOrbitalManeuvering::GetTotalMass().

Referenced by ~Rocket().

◆ GetEmptyMass()

double WsfRocketOrbitalManeuvering::Rocket::GetEmptyMass ( ) const

Return the empty mass, considered to be the total mass of this stage minus the fuel mass for this stage.

Note
This definition is consistent with the definition in WsfPlatform, such that the total mass must equal the empty mass + fuel mass + payload mass.

Referenced by ~Rocket().

◆ GetFuelMass()

double WsfRocketOrbitalManeuvering::Rocket::GetFuelMass ( ) const

Return the fuel mass, considered to be the fuel for this stage only.

Referenced by ~Rocket().

◆ GetPayloadMass()

double WsfRocketOrbitalManeuvering::Rocket::GetPayloadMass ( ) const

Return the payload mass, which is the total mass of all subsequent stages, if any.

References WsfRocketOrbitalManeuvering::GetTotalMass().

Referenced by ~Rocket().

◆ GetTotalMass()

double WsfRocketOrbitalManeuvering::Rocket::GetTotalMass ( ) const

Return the total mass of the rocket, including all stages.

Referenced by ~Rocket().

◆ Initialize()

bool WsfRocketOrbitalManeuvering::Rocket::Initialize ( )

References ok.

Referenced by ~Rocket().

◆ operator=()

Rocket & WsfRocketOrbitalManeuvering::Rocket::operator= ( const Rocket & )
delete

References Rocket().

◆ PerformStagingOperation()

bool WsfRocketOrbitalManeuvering::Rocket::PerformStagingOperation ( )

Perform a staging event for the rocket. If no other stages are present, false is returned.

Referenced by ~Rocket().

◆ ProcessInput()

bool WsfRocketOrbitalManeuvering::Rocket::ProcessInput ( UtInput & aInput)

◆ Thrust()

double WsfRocketOrbitalManeuvering::Rocket::Thrust ( double aDuration,
double & aDeltaV )

Expend fuel / Delta-V for the specified duration. If the current stage would expend its fuel, and automatic staging is enabled, the rocket will perform a staging event and start burning the next stage.

Parameters
aDurationThe Specified duration to thrust.
aDeltaVThe calculated Delta-V.
Returns
The actual duration achieved.

References WsfRocketOrbitalManeuvering::GetTotalMass().

Referenced by ~Rocket().


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