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

MappingMeanOsculatingOrbitElements.h

Go to the documentation of this file.
00001 //////////////////////////////////////////////////////////////////////////////////////////////////
00002 /*! \file MappingMeanOsculatingOrbitElements.h
00003 *  \brief First order mapping algorithm between mean orbit elments and osculating orbit elements. 
00004 *       Referenced from "Anayltic Mechanics of Space Systems" by Schaub and Junkins (p.693).
00005 *  \author $Author: jayhawk_hokie $
00006 *  \version $Revision: 1.2 $
00007 *  \date    $Date: 2007/08/31 16:52:10 $
00008 *//////////////////////////////////////////////////////////////////////////////////////////////////
00009 /*
00010 * 
00011 */
00012 //////////////////////////////////////////////////////////////////////////////////////////////////
00013 
00014 #ifndef __MEAN_OSCULATING_ORBIT_ELEMENTS_H__
00015 #define __MEAN_OSCULATING_ORBIT_ELEMENTS_H__
00016 
00017 #include <iostream>
00018 #include "rotation/Rotation.h"
00019 #include "Keplerian.h"
00020 
00021 using namespace std;
00022 
00023 namespace O_SESSAME 
00024 {
00025 
00026 /*! \brief Keplerian Osculating and Mean orbital element representation of the orbital position.
00027  * \ingroup OrbitStateRepresentation
00028  *
00029  * The OsculatingOrbitalElement class stores the Osculating or Mean orbital elements of an orbital position using the Keplerian Class.
00030  *
00031  *      \par Example:
00032  *
00033  */
00034 
00035         class OsculatingOrbitalElements : public Keplerian
00036         {
00037                 public:
00038                         virtual ~OsculatingOrbitalElements();
00039 
00040                         virtual OsculatingOrbitalElements* NewPointer();
00041 
00042                         virtual OsculatingOrbitalElements* Clone();
00043 
00044                                 OsculatingOrbitalElements();
00045 
00046                         void SetOsculatingOrbitalElements( Keplerian& _OsculatingOrbitalElements );
00047 
00048                         void SetOsculatingOrbitalElements( CAMdoubleVector _ECIVector );
00049 
00050                         void SetMeanOrbitalElements( Keplerian& _MeanOrbitalElements );
00051 
00052                         void SetMeanOrbitalElements( CAMdoubleVector _ECIVector );
00053 
00054                         Keplerian GetMeanOrbitalElements( );
00055 
00056                         Keplerian GetOsculatingOrbitalElements( );
00057                         
00058                         void OsculatingToMean( );
00059                         
00060                         void MeanToOsculating( );
00061 
00062                         Keplerian Mapping( Keplerian& _keplerian );
00063 
00064 
00065 
00066                 private:
00067                         Keplerian m_OsculatingOrbitalElements;
00068                 
00069                         Keplerian m_MeanOrbitalElements;
00070                 
00071                         double m_Gamma2;
00072 
00073         };      
00074 
00075 
00076 } // end O_SESSAME
00077 
00078 
00079 #endif
00080 

Generated on Wed Sep 5 12:54:22 2007 for DSACSS Operational Code by  doxygen 1.3.9.1