MoonPosition Class Reference
[Ephemeris calculations]

#include <MoonPosition.hpp>

Collaboration diagram for MoonPosition:

Collaboration graph
[legend]
List of all members.

Detailed Description

This class computes the approximate position of the Moon at the given epoch in the ECEF system.

It is limited between March 1st, 1900 and February 28th, 2100.

The class is based in the Meeus algorithms published in Meeus, l'Astronomie, June 1984, p348. This is a C++ implementation version of the FORTRAN version originally written by P.T. Wallace, Starlink Project. The FORTRAN version of Starlink project was available under the GPL license.

Errors in position (RMS) are:

More information may be found in http://starlink.jach.hawaii.edu/

Definition at line 70 of file MoonPosition.hpp.

Public Member Functions

 MoonPosition () throw ()
 Default constructor.
virtual ~MoonPosition ()
 Destructor.
Triple getPosition (const CommonTime &t) const throw (InvalidRequest)
 Returns the position of Moon ECEF coordinates (meters) at the indicated time.
Triple getPositionCIS (const CommonTime &t) const throw (InvalidRequest)
 Function to compute Moon position in CIS system (coordinates in meters).
CommonTime getInitialTime () const throw (InvalidRequest)
 Determine the earliest time for which this object can successfully determine the position for the Moon.
CommonTime getFinalTime () const throw (InvalidRequest)
 Determine the latest time for which this object can successfully determine the position for the Moon.


Constructor & Destructor Documentation

MoonPosition  )  throw () [inline]
 

Default constructor.

Definition at line 75 of file MoonPosition.hpp.

virtual ~MoonPosition  )  [inline, virtual]
 

Destructor.

Definition at line 78 of file MoonPosition.hpp.


Member Function Documentation

CommonTime getFinalTime  )  const throw (InvalidRequest) [inline]
 

Determine the latest time for which this object can successfully determine the position for the Moon.

Returns:
The final time
Exceptions:
InvalidRequest This is thrown if the object has no data.

Definition at line 127 of file MoonPosition.hpp.

CommonTime getInitialTime  )  const throw (InvalidRequest) [inline]
 

Determine the earliest time for which this object can successfully determine the position for the Moon.

Returns:
The initial time
Exceptions:
InvalidRequest This is thrown if the object has no data.

Definition at line 116 of file MoonPosition.hpp.

Triple getPosition const CommonTime t  )  const throw (InvalidRequest)
 

Returns the position of Moon ECEF coordinates (meters) at the indicated time.

Parameters:
[in] t the time to look up
Returns:
the position of the Moon at time (as a Triple)
Exceptions:
InvalidRequest If the request can not be completed for any reason, this is thrown. The text may have additional information as to why the request failed.
Warning:
This method yields and approximate result, given that pole movement is not taken into account, neither precession nor nutation.

Definition at line 140 of file MoonPosition.cpp.

References gpstk::CIS2CTS(), and GPSTK_THROW.

Referenced by SolidTides::getSolidTide().

Triple getPositionCIS const CommonTime t  )  const throw (InvalidRequest)
 

Function to compute Moon position in CIS system (coordinates in meters).

Parameters:
t Epoch

Definition at line 169 of file MoonPosition.cpp.

References gpstk::B1950(), gpstk::cos(), gpstk::D2R(), gpstk::DAS2R, gpstk::DS2R, gpstk::ERADAU(), F1, F2, GPSTK_THROW, gpstk::sin(), and Triple::theArray.


The documentation for this class was generated from the following files:
Generated on Sun May 19 03:31:50 2013 for GPS ToolKit Software Library by  doxygen 1.3.9.1