Main Page | Modules | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

psEarthOrientation.h File Reference


Detailed Description

Function prototypes for earth orientation calculations transformation.

Author:
Dave Robbins, MHPCC

Robert Daniel DeSonia, MHPCC

Version:
Revision
1.11
Name
rel9_0
Date:
Date
2005/11/17 03:59:05
Copyright 2005 Maui High Performance Computing Center, University of Hawaii

Definition in file psEarthOrientation.h.

#include "psCoord.h"
#include "psTime.h"
#include "psSphereOps.h"

Include dependency graph for psEarthOrientation.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Enumerations

enum  psPrecessMethod { PS_PRECESS_ROUGH, PS_PRECESS_COMPLETE, PS_PRECESS_IAU2000A }
 Method for spherical precession used to specify the level of detail used in calculation. More...

Functions

bool p_psEOCInit (void)
 Initialize EOC.
bool p_psEOCFinalize (void)
 Finalize EOC after using functions that make calls to eocInit for time table data.
psEarthPolepsEarthPoleAlloc (void)
 Allocates a new psEarthPole structure.
psSpherepsAberration (psSphere *apparent, const psSphere *actual, const psSphere *direction, double speed)
 Calculates the actual position of a star, given its apparent position and the velocity vector of the observer.
psSpherepsGravityDeflection (psSphere *apparent, psSphere *actual, psSphere *sun)
 Calculates the actual position of a star, given its apparent position and the position of the sun.
psEarthPolepsEOC_PrecessionModel (const psTime *time)
 Calculates the components of the rotation between the CEO and GCRS frames, X, Y, and s, using the IAU2000A precession & nutation model.
psEarthPolepsEOC_PrecessionCorr (const psTime *time, psTimeBulletin bulletin)
 Provides interpolated corrections to the X and Y components of the polar coordinates from the tables provided by the IERS, just as it does for UT1 and polar motion.
psSphereRotpsSphereRot_CEOtoGCRS (const psEarthPole *pole)
 Constructs the spherical rotation for transforming from CEO to GCRS coordinates.
psSphereRotpsSphereRot_TEOtoCEO (const psTime *time)
 Calculates the rotation of the Earth about the CIP.
psEarthPolepsEOC_GetPolarMotion (const psTime *time, psTimeBulletin bulletin)
 Provides interpolated values of the polar motion components extracted from the IERS tables.
psEarthPolepsEOC_PolarTideCorr (const psTime *time)
 Provides tidal corrections to the polar motion components using the Ray model of Simon et al.
psEarthPolepsEOC_NutationCorr (psTime *time)
 Provides the additional corrections due to nutation terms with periods less than or equal to two days, as well as the correction to the s-prime component of polar motion.
psSphereRotpsSphereRot_ITRStoTEO (const psEarthPole *motion)
 Converts the polar motion corrections to a spherical rotation.


Enumeration Type Documentation

enum psPrecessMethod
 

Method for spherical precession used to specify the level of detail used in calculation.

See also:
psSpherePrecess
Enumeration values:
PS_PRECESS_ROUGH  roughest, lowest level of detail
PS_PRECESS_COMPLETE  complete level of detail
PS_PRECESS_IAU2000A  highest level of detail

Definition at line 40 of file psEarthOrientation.h.


Function Documentation

bool p_psEOCFinalize void   ) 
 

Finalize EOC after using functions that make calls to eocInit for time table data.

Returns:
bool: True if successful, otherwise false.

bool p_psEOCInit void   ) 
 

Initialize EOC.

Parses IERS table data and creates the polynomials used by certain EOC functions.

Returns:
bool: True if successful, otherwise false.

psSphere* psAberration psSphere apparent,
const psSphere actual,
const psSphere direction,
double  speed
 

Calculates the actual position of a star, given its apparent position and the velocity vector of the observer.

The actual and apparent positions are represented as psSphere entries, as is the direction of motion. The speed in that direction is given in units of the speed of light. If the value of actual is NULL, a new psSphere is allocated, otherwise the point to actual is used for the result.

Returns:
psSphere*: the actual position of a star.
Parameters:
apparent  apparent position of star
actual  actual position of star
direction  direction of motion of observer
speed  speed of motion of observer

psEarthPole* psEarthPoleAlloc void   ) 
 

Allocates a new psEarthPole structure.

psEarthPole* psEOC_GetPolarMotion const psTime time,
psTimeBulletin  bulletin
 

Provides interpolated values of the polar motion components extracted from the IERS tables.

Returns:
psEarthPole*: interpolated polar motion components.
Parameters:
time  specified time
bulletin  IERS tables for polar coordinate components.

psEarthPole* psEOC_NutationCorr psTime time  ) 
 

Provides the additional corrections due to nutation terms with periods less than or equal to two days, as well as the correction to the s-prime component of polar motion.

Returns:
psEarthPole*: corrected polar motion components.
Parameters:
time  specified time

psEarthPole* psEOC_PolarTideCorr const psTime time  ) 
 

Provides tidal corrections to the polar motion components using the Ray model of Simon et al.

Returns:
psEarthPole*: corrected polar motion components.
Parameters:
time  specified time

psEarthPole* psEOC_PrecessionCorr const psTime time,
psTimeBulletin  bulletin
 

Provides interpolated corrections to the X and Y components of the polar coordinates from the tables provided by the IERS, just as it does for UT1 and polar motion.

Returns:
psEarthPole*: interpolated corrections to the precession components.
Parameters:
time  specified time
bulletin  IERS tables for polar coordinate components.

psEarthPole* psEOC_PrecessionModel const psTime time  ) 
 

Calculates the components of the rotation between the CEO and GCRS frames, X, Y, and s, using the IAU2000A precession & nutation model.

The input time may be represented in any format other than UT1. This routine must give results identical to the IERS XYS2000A subroutine.

Returns:
psEarthPole*: the calculated components of the rotation.
Parameters:
time  specified time

psSphere* psGravityDeflection psSphere apparent,
psSphere actual,
psSphere sun
 

Calculates the actual position of a star, given its apparent position and the position of the sun.

The actual and apparent positions are represented as psSphere entries, as is position of the sun. If the value of actual is NULL, a new psSphere is allocated, otherwise the point to actual is used for the result.

Returns:
psSphere*: the apparent position of a star.
Parameters:
apparent  apparent position of star
actual  actual position of star
sun  position of the sun

psSphereRot* psSphereRot_CEOtoGCRS const psEarthPole pole  ) 
 

Constructs the spherical rotation for transforming from CEO to GCRS coordinates.

The resulting psSphereRot may be used to determine the rotation from CIP/CEO to GCRS. This function must give results identical to the IERS BPN2000.

Returns:
psSphereRot*: spherical rotation for CEO to GCRS transformation.
Parameters:
pole  input coordinates to transform

psSphereRot* psSphereRot_ITRStoTEO const psEarthPole motion  ) 
 

Converts the polar motion corrections to a spherical rotation.

This function should give identical results to the IERS POM2000 subroutine.

Returns:
psSphereRot*: ITRS to TEO sphere rotation.
Parameters:
motion  corrected polar motion components

psSphereRot* psSphereRot_TEOtoCEO const psTime time  ) 
 

Calculates the rotation of the Earth about the CIP.

Returns:
psSphereRot*: sphereical rotation
Parameters:
time  specified time


Generated on Tue Dec 6 17:18:42 2005 for Pan-STARRS Foundation Library by  doxygen 1.4.2