Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages | Examples

O_SESSAME::Orbit Class Reference
[Orbit Toolkit]

#include <Orbit.h>

Collaboration diagram for O_SESSAME::Orbit:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Orbit ()
virtual ~Orbit ()
void SetStateObject (const OrbitState &_currentOrbitPosition)
 Set the current orbit state object that represents the spacecraft's position in space.
OrbitState GetStateObject () const
 Return the current orbital state of the spacecraft.
void SetDynamicsEq (odeFunctor _orbitDynamicsEq)
 Set the Dynamics Equation right-hand side file.
odeFunctor GetDynamicsEq ()
 Return the pointer to the Dynamics Equation right-hand side.
void SetStateConversion (IntegratedOrbitStateConversionFunction _ConversionFunction)
 Set the Orbit state conversion function.
IntegratedOrbitStateConversionFunction GetStateConversion () const
 Get the Orbit state conversion function.
void SetPropagator (Propagator *_pPropagator)
 Sets the propagator used for integrating the orbit.
PropagatorGetPropagator ()
 Returns the pointer to the propagator being used.
void Propagate (const Vector &_propTime)
 Propagate the orbit through the vector of times.
bool IsIntegrateable ()
 Returns whether the orbit is integrateable or not. Determined if there is a dynamics equation present.
void SetParameters (const Matrix &_Parameters)
 Set the physical parameters of the spacecraft orbit.
Matrix GetParameters () const
 Return a matrix of the current stored spacecraft orbital parameters.
void SetEnvironment (Environment *_pEnvironment)
 Sets the environment used for integrating the orbit.
EnvironmentGetEnvironment ()
 Returns the environment used for integrating the orbit.
void SetControlForces (const Vector &_controlForces)
Vector GetControlForces ()
ObjectFunctor< EnvironmentGetEnvironmentForcesFunctor ()
 Return a reference to the environmental forces function.
OrbitHistoryGetHistoryObject ()
 Return a reference to the spacecraft's orbit history.

Protected Attributes

OrbitState m_CurrentOrbitPosition
 Current stored orbital state of the spacecraft.

Private Attributes

Propagatorm_pPropagator
 Internal pointer to the current orbit propagator algorithm.
IntegratedOrbitStateConversionFunction m_OrbitStateConversionFunction
odeFunctor m_OrbitDynamicsEq
 Right-hand side of the orbit dynamics equation: $\dot{x} = RHS(t, x)$.
bool m_Integrateable
 Is the orbit integrateable? (true if it is, false if is not).
Matrix m_Parameters
Environmentm_pEnvironment
 Internal pointer to the orbit's environment object.
Vector m_ControlForces
 Internal Vector of the current control forces being applied to the spacecraft.
ObjectFunctor< Environmentm_EnvironmentForcesFunctor
OrbitHistory m_OrbitHistory

Constructor & Destructor Documentation

O_SESSAME::Orbit::Orbit  ) 
 

Default Constructor

Definition at line 17 of file Orbit.cpp.

O_SESSAME::Orbit::~Orbit  )  [virtual]
 

Default Deconstructor

Definition at line 21 of file Orbit.cpp.


Member Function Documentation

Vector O_SESSAME::Orbit::GetControlForces  ) 
 

Definition at line 101 of file Orbit.cpp.

References O_SESSAME::Vector.

odeFunctor O_SESSAME::Orbit::GetDynamicsEq  ) 
 

Return the pointer to the Dynamics Equation right-hand side.

Returns:
pointer to the right-hand side dynamics equation

Definition at line 56 of file Orbit.cpp.

References O_SESSAME::odeFunctor.

Referenced by O_SESSAME::CombinedNumericPropagator::PropagateOrbit().

Environment * O_SESSAME::Orbit::GetEnvironment  ) 
 

Returns the environment used for integrating the orbit.

Returns:
pointer to the instance of the environment being used.

Definition at line 92 of file Orbit.cpp.

ObjectFunctor< Environment > O_SESSAME::Orbit::GetEnvironmentForcesFunctor  ) 
 

Return a reference to the environmental forces function.

Returns:
the Functor that references the Environment force function of the orbit. Used as a callback function for evaluating the forces on the spacecraft orbit due to specified environmental disturbances.

Definition at line 106 of file Orbit.cpp.

OrbitHistory & O_SESSAME::Orbit::GetHistoryObject  ) 
 

Return a reference to the spacecraft's orbit history.

This function is used to make evaluations on the spacecraft's orbit history.

 // Get the orbit state at t=30 seconds.
 OrbitState OrbState30 = myOrbit.GetHistoryObject().GetState(ssfTime(30));
Returns:
reference (acts as a normal object, but actually "points" to the private data member) to the spacecraft's orbit history object.

Definition at line 111 of file Orbit.cpp.

Referenced by main(), and Plot().

Matrix O_SESSAME::Orbit::GetParameters  )  const
 

Return a matrix of the current stored spacecraft orbital parameters.

Definition at line 82 of file Orbit.cpp.

References O_SESSAME::Matrix.

Propagator * O_SESSAME::Orbit::GetPropagator  ) 
 

Returns the pointer to the propagator being used.

Returns:
pointer to the orbit's propagator.

Definition at line 46 of file Orbit.cpp.

IntegratedOrbitStateConversionFunction O_SESSAME::Orbit::GetStateConversion  )  const
 

Get the Orbit state conversion function.

Returns:
pointer to the conversion function (takes a meshpoint and returns an object of OrbitState).

Definition at line 66 of file Orbit.cpp.

References O_SESSAME::IntegratedOrbitStateConversionFunction.

OrbitState O_SESSAME::Orbit::GetStateObject  )  const
 

Return the current orbital state of the spacecraft.

Returns:
Current stored orbital state of the spacecraft.

Definition at line 35 of file Orbit.cpp.

Referenced by AttituteDynamics(), DisplayOrbit(), main(), Propagate(), O_SESSAME::CombinedNumericPropagator::PropagateAttitude(), and O_SESSAME::CombinedNumericPropagator::PropagateOrbit().

bool O_SESSAME::Orbit::IsIntegrateable  ) 
 

Returns whether the orbit is integrateable or not. Determined if there is a dynamics equation present.

Returns:
true if the orbit can be integrated, false if it can't.

Definition at line 72 of file Orbit.cpp.

Referenced by DisplayOrbit(), main(), Plot(), Propagate(), and O_SESSAME::CombinedNumericPropagator::Propagate().

void O_SESSAME::Orbit::Propagate const Vector _propTime  ) 
 

Propagate the orbit through the vector of times.

void O_SESSAME::Orbit::SetControlForces const Vector _controlForces  ) 
 

Definition at line 96 of file Orbit.cpp.

References CAMdoubleVector::initialize(), m_ControlForces, and O_SESSAME::Vector.

void O_SESSAME::Orbit::SetDynamicsEq odeFunctor  _orbitDynamicsEq  ) 
 

Set the Dynamics Equation right-hand side file.

Parameters:
_orbitDynamicsEq pointer to the right-hand side dynamics equation

Definition at line 51 of file Orbit.cpp.

References m_Integrateable, and m_OrbitDynamicsEq.

Referenced by ChangeOrbit(), and SetupOrbit().

void O_SESSAME::Orbit::SetEnvironment Environment _pEnvironment  ) 
 

Sets the environment used for integrating the orbit.

Parameters:
_pEnvironment Instance of the environment to be used.

Definition at line 86 of file Orbit.cpp.

References m_EnvironmentForcesFunctor, m_pEnvironment, and O_SESSAME::ObjectFunctor< TClass >::Set().

Referenced by main().

void O_SESSAME::Orbit::SetParameters const Matrix _Parameters  ) 
 

Set the physical parameters of the spacecraft orbit.

Todo:
determine what physical parameters are pertinent.

Definition at line 77 of file Orbit.cpp.

References CAMdoubleMatrix::initialize(), m_Parameters, and O_SESSAME::Matrix.

void O_SESSAME::Orbit::SetPropagator Propagator _pPropagator  ) 
 

Sets the propagator used for integrating the orbit.

Parameters:
_pPropagator Pointer to the propagator to be used.

Definition at line 40 of file Orbit.cpp.

References m_pPropagator, and O_SESSAME::Propagator::SetOrbitObject().

Referenced by main().

void O_SESSAME::Orbit::SetStateConversion IntegratedOrbitStateConversionFunction  _ConversionFunction  ) 
 

Set the Orbit state conversion function.

Parameters:
_ConversionFunction pointer to the conversion function (takes a meshpoint and returns an object of OrbitState).

Definition at line 61 of file Orbit.cpp.

References m_OrbitStateConversionFunction.

Referenced by ChangeOrbit(), and SetupOrbit().

void O_SESSAME::Orbit::SetStateObject const OrbitState _currentOrbitPosition  ) 
 

Set the current orbit state object that represents the spacecraft's position in space.

Parameters:
_currentOrbitPosition Current orbital state of the spacecraft.

Definition at line 30 of file Orbit.cpp.

References m_CurrentOrbitPosition.

Referenced by ChangeOrbit(), and SetupOrbit().


Member Data Documentation

Vector O_SESSAME::Orbit::m_ControlForces [private]
 

Internal Vector of the current control forces being applied to the spacecraft.

Definition at line 184 of file Orbit.h.

Referenced by SetControlForces().

OrbitState O_SESSAME::Orbit::m_CurrentOrbitPosition [protected]
 

Current stored orbital state of the spacecraft.

Definition at line 78 of file Orbit.h.

Referenced by SetStateObject().

ObjectFunctor<Environment> O_SESSAME::Orbit::m_EnvironmentForcesFunctor [private]
 

Pointer to the Environment forces function

Definition at line 187 of file Orbit.h.

Referenced by SetEnvironment().

bool O_SESSAME::Orbit::m_Integrateable [private]
 

Is the orbit integrateable? (true if it is, false if is not).

Definition at line 136 of file Orbit.h.

Referenced by SetDynamicsEq().

odeFunctor O_SESSAME::Orbit::m_OrbitDynamicsEq [private]
 

Right-hand side of the orbit dynamics equation: $\dot{x} = RHS(t, x)$.

Definition at line 133 of file Orbit.h.

Referenced by SetDynamicsEq().

OrbitHistory O_SESSAME::Orbit::m_OrbitHistory [private]
 

Definition at line 206 of file Orbit.h.

IntegratedOrbitStateConversionFunction O_SESSAME::Orbit::m_OrbitStateConversionFunction [private]
 

Conversion function for converting from the integrated states to an Orbit State.

Definition at line 130 of file Orbit.h.

Referenced by SetStateConversion().

Matrix O_SESSAME::Orbit::m_Parameters [private]
 

Definition at line 154 of file Orbit.h.

Referenced by SetParameters().

Environment* O_SESSAME::Orbit::m_pEnvironment [private]
 

Internal pointer to the orbit's environment object.

Definition at line 182 of file Orbit.h.

Referenced by SetEnvironment().

Propagator* O_SESSAME::Orbit::m_pPropagator [private]
 

Internal pointer to the current orbit propagator algorithm.

Definition at line 127 of file Orbit.h.

Referenced by SetPropagator().


The documentation for this class was generated from the following files:
Generated on Wed Sep 5 12:54:48 2007 for DSACSS Operational Code by  doxygen 1.3.9.1