IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 3772


Ignore:
Timestamp:
Apr 27, 2005, 9:59:04 AM (21 years ago)
Author:
eugene
Message:

nearly final for cycle 6, NO changes for psRegion

Location:
trunk/doc/pslib
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/doc/pslib/ChangeLogADD.tex

    r3721 r3772  
    5252\item moved some sections to reflect order in SDRS (matrix, fftw)
    5353\end{itemize}
     54
     55\subsection{Changes from version 10 (19 April 2005) to version 11 (27 April 2005)}
     56
     57\begin{itemize}
     58\item fixed some typos in the definition of the rotation from CEO to GCRS (Eqn~\ref{CEOtoGCRS}).
     59\item added references to the SDRS APIs for the Earth Orientation section
     60
     61\end{itemize}
  • trunk/doc/pslib/ChangeLogSDRS.tex

    r3767 r3772  
    1 %%% $Id: ChangeLogSDRS.tex,v 1.90 2005-04-25 21:20:41 price Exp $
     1%%% $Id: ChangeLogSDRS.tex,v 1.91 2005-04-27 19:59:03 eugene Exp $
    22
    33\subsection{Changes from version 00 to version 01}
     
    520520  \item Moved Fixed Pattern out of Astronomical Images
    521521  \end{itemize}
    522  
     522  \end{itemize}
     523
     524\subsection{Changes from Revision 13 (30 March 2005) to Revision 14 (27 April 2005)}
     525
     526\begin{itemize}
    523527\item Restrictions on the use of \code{malloc}, \code{calloc}, \code{realloc}, and \code{free} should not be unintentionaly imposed on 3rd party code.
    524528\item Add database support for ``auto-incrementing''
     
    547551  \item Removed pre-defined LM minimization functions; these will be defined in the Modules SDRS.
    548552  \end{itemize}
    549 \end{itemize}
     553
     554\item defined \code{psEarthPole}, re-cast Earth Orientation
     555  Calculations to use it for inputs and outputs.
     556\item minor name changes in Earth Orientation to match ADD changes.
     557\item dropped TBD for \code{psFitsUpdateImage}
     558\item \code{psAberration} return value defined.
     559\item added \code{psArrayRemove} function (already exists in psArray.c)
     560\item added \code{psVectorExtend} function
     561\item changed inputs to \code{psImageSlice} to use \code{psRegion}
     562\end{itemize}
  • trunk/doc/pslib/psLibADD.tex

    r3721 r3772  
    1 %%% $Id: psLibADD.tex,v 1.72 2005-04-19 23:44:43 eugene Exp $
     1%%% $Id: psLibADD.tex,v 1.73 2005-04-27 19:59:04 eugene Exp $
    22\documentclass[panstarrs]{panstarrs}
    33
     
    1414\project{Pan-STARRS Image Processing Pipeline}
    1515\organization{Institute for Astronomy}
    16 \version{10}
     16\version{11}
    1717\docnumber{PSDC-430-006}
    1818
     
    414109 & 2005 Feb 14 & Frozen for Cycle 5 \\ \hline
    424210 & 2005 Apr 19 & Frozen for Cycle 6 \\ \hline
     4311 & 2005 Apr 27 & Update for Cycle 6 \\ \hline
    4344\RevisionsEnd
    4445
     
    15531554the quarternion for this transformation.
    15541555
    1555 \tbd{can we drop this, since we do this with the quaternion?}
    1556 
    15571556The relevant trigonometric relationships are:
    15581557%
     
    16111610\phi_p & = & 90^\circ + 0^\circ.6406161\, T + 0^\circ.0003041\, T^2 + 0^\circ.0000051\, T^3
    16121611\end{eqnarray}
    1613 where $T$ is $($MJD$_{\rm out} -$ MJD$_{\rm in})/36525$ is the difference
    1614 between the two epochs, in Julian centuries.
    1615 
     1612where $T$ is $($MJD$_{\rm out} -$ MJD$_{\rm in})/36525$ is the
     1613difference between the two epochs, in Julian centuries.  This
     1614precession form shall be used to implement \code{PS_PRECESS_ROUGH}.
    16161615
    16171616\subsubsection{Suggested test cases}
     
    16481647There are two reference implementatins for the code to account for the
    16491648motion of the Earth in space. The first are the sample routines
    1650 provided by the IERS to accompany chaper 5 of IERS Bulletin 32.  This
    1651 document and the code can be downloaded from
    1652 http://maia.usno.navy.mil/conv2003.html .  The second reference
    1653 implementation is the SOFA software package managed by the IAU and
    1654 available at http://www.iau-sofa.rl.ac.uk Only the 2003-04-29 version
    1655 of SOFA should be used.  The IERS code requires a few of the rotation
    1656 matrix utility routines from SOFA.
     1649provided by the IERS to accompany chaper 5 of IERS Bulletin
     165032.\footnote{http://maia.usno.navy.mil/conv2003.html} The second
     1651reference implementation is the SOFA software package managed by the
     1652IAU.\footnote{http://www.iau-sofa.rl.ac.uk} Only the 2003-04-29
     1653version of SOFA should be considered.  The IERS code requires a few of
     1654the rotation matrix utility routines from SOFA.
    16571655
    16581656Both implementations are in FORTRAN 77. The SOFA code has a more
     
    16631661reference for psLib should be the IERS code.  Note that the IERS code
    16641662calculates the transform from terrestrial to celestial coordinates,
    1665 while the SOFA code calculates its inverse.
     1663while the SOFA code calculates its inverse.  This code may be using as
     1664a comparison for testing purposes.
    16661665
    16671666\subsubsection{Coordinate Systems}
     
    17111710
    17121711The X axes of the intermediate coordinate systems are known as the
    1713 Celestial and Terrestrial Ephemeris Origins. (CEO and TEO). Both are defined
    1714 to be non-rotating origins. A non-rotating origin is a point on the equator
    1715 whose instantaneous motion is always orthogonal to the equator
    1716 (Kaplan 2003 IAU XXV Joint Discussion 16
    1717 \footnote{http://aa.usno.navy.mil/kaplan/NROs\%5BJD16proc\%5D.pdf}).
    1718 Thus the CEO is defined by its position in the GCRS at some epoch and by the
    1719 motion of the CIP in the GCRS since that date. Similarly the TEO is
    1720 defined by its position in the ITRS at some epoch and the motion of the
    1721 CIP in the ITRS since that date.
     1712Celestial and Terrestrial Ephemeris Origins. (CEO and TEO). Both are
     1713defined to be non-rotating origins. A non-rotating origin is a point
     1714on the equator whose instantaneous motion is always orthogonal to the
     1715equator (Kaplan 2003 IAU XXV Joint Discussion
     171616\footnote{http://aa.usno.navy.mil/kaplan/NROs\%5BJD16proc\%5D.pdf}).
     1717Thus the CEO is defined by its position in the GCRS at some epoch and
     1718by the motion of the CIP in the GCRS since that date. Similarly the
     1719TEO is defined by its position in the ITRS at some epoch and the
     1720motion of the CIP in the ITRS since that date.
    17221721
    17231722\subsubsection{ICRS - GCRS}
     
    17931792
    17941793This section is largely a summary of Chapter 5 of IERS Technical Note
    1795 32 \footnote{http://maia.usno.navy.mil/conv2003.html} (hereafter
     179432\footnote{http://maia.usno.navy.mil/conv2003.html} (hereafter
    17961795IERS32), which is a description of the implementation of the
    17971796Resoltions of the XXIVth General Assembly of the IAU, available from
     
    18071806accurate to the 0.2 mas level.  For higher accuracy the user must
    18081807apply corrections to the model, which are tabulated by the IERS.
     1808
     1809\subparagraph{IAU 200A Precession/Nutation Model : {\tt psEOC\_PrecessionModel}}
    18091810
    18101811The IAU 2000A precession-nutation model may be calculated in the
     
    18551856The constants $p_j$, $w_{i,j,k}$, $(a_{{\rm s},j})_i$, and $(a_{{\rm c},j})_i$
    18561857are given in the ASCII files:
    1857 tab5.2a.txt \footnote{http://maia.usno.navy.mil/conv2000/chapter5/tab5.2a.txt} (for $X$),
    1858 tab5.2b.txt \footnote{http://maia.usno.navy.mil/conv2000/chapter5/tab5.2b.txt} (for $Y$), and
    1859 tab5.2c.txt \footnote{http://maia.usno.navy.mil/conv2000/chapter5/tab5.2c.txt} (for $s+XY/2$).
     1858tab5.2a.txt\footnote{http://maia.usno.navy.mil/conv2000/chapter5/tab5.2a.txt} (for $X$),
     1859tab5.2b.txt\footnote{http://maia.usno.navy.mil/conv2000/chapter5/tab5.2b.txt} (for $Y$), and
     1860tab5.2c.txt\footnote{http://maia.usno.navy.mil/conv2000/chapter5/tab5.2c.txt} (for $s+XY/2$).
    18601861Note that the expansion is given for $s+XY/2$, since this series converges
    18611862more rapidly than the one for $s$ alone.
     
    18761877
    18771878A FORTRAN reference implementation for the precession/nutation model
    1878 is available from the IERS
    1879 \footnote{http://maia.usno.navy.mil/conv2000/chapter5/XYS2000A.f}.
    1880 The psLib results should agree with the reference implementation to within
    1881 the limits of numerical precision.
    1882 
    1883 Next, corrections to $X$, and $Y$ may be obtained from the IERS as
     1879is available from the
     1880IERS.\footnote{http://maia.usno.navy.mil/conv2000/chapter5/XYS2000A.f}
     1881The psLib results should agree with the reference implementation to
     1882within the limits of numerical precision.
     1883
     1884\subparagraph{Corrections to the Model : {\tt psEOC\_PrecessionCorr}}
     1885
     1886Corrections to $X$, and $Y$ may be obtained from the IERS as
    18841887part of Bulletin A, or B. It is recommended to use the values
    18851888published daily by USNO in the table
     
    18951898the result as instantaneous values.
    18961899
    1897 The final step is to use $X$, $Y$, and $s$ to calculate the rotation
    1898 matrix from the CIP/CEO system to the GCRS using IERS32 equation (10),
    1899 reproduced below:
    1900 
    1901 \begin{equation}
     1900\subparagraph{Spherical Rotation from Polar Coordinates : {\tt psSphereRot\_CEOtoGCRS}}
     1901
     1902In order to relate the values $X$, $Y$, and $s$ to the rotation
     1903components, the rotation matrix below must be used.  The definitions
     1904of $X$, $Y$, and $s$ transform from the CIP/CEO system to the GCRS
     1905using IERS32 equation (10), reproduced below:
     1906
     1907\begin{equation}
     1908\label{CEOtoGCRS}
    19021909\begin{pmatrix}1-aX^2& -aXY& X\cr -aXY& 1-aY^2& Y\cr -X& -Y&
    190319101-a(X^2+Y^2)\cr
    19041911\end{pmatrix} \cdot R_3(s),
    19051912\end{equation}
    1906 where $R_3$ denotes a rotation about the Z axis,
    1907 $a = 1/(1+\sqrt{1 - X^2 + Y^2})$,
    1908 and $X$ and $Y$ are expressed in radians.
    1909 A FORTRAN reference implementation for this calculation is given
    1910 by the IERS \footnote{http://maia.usno.navy.mil/conv2000/chapter5/BPN2000.f}.
    1911 
    1912 Note that above we gave the expression for the transform toward celestial
    1913 coordinates (upward in figure X), in order to match the IERS reference code.
    1914 The inverse transform may be found by inverting the resulting rotation.
    1915 
    1916 \paragraph{Rotation of the Earth}
     1913where $R_3$ denotes a rotation about the Z axis, $a = 1/(1+\sqrt{1 -
     1914(X^2 + Y^2})$, and $X$ and $Y$ are expressed in radians.  A FORTRAN
     1915reference implementation for this calculation is given by the
     1916IERS.\footnote{http://maia.usno.navy.mil/conv2000/chapter5/BPN2000.f} 
     1917
     1918Note that above we gave the expression for the transform toward
     1919celestial coordinates (upward in Figure~\ref{earthrot}), in order to
     1920match the IERS reference code.  The inverse transform may be found by
     1921inverting the resulting rotation.
     1922
     1923\paragraph{Earth Rotation}
    19171924
    19181925The transform from the CIP/CEO to CIP/TEO coordinate systems is a
     
    19311938motion''. Similarly to precession/nutation, the instantaneous position
    19321939of the CIP in the ITRS is specified by the quantites $x_p$, and $y_p$,
    1933 and a third quantity, $s'$, gives the position of the TEO with respect
    1934 to the ITRS.  The values of $x_p$ and $y_p$ are published daily by the
    1935 IERS\footnote{http://maia.usno.navy.mil/ser7/finals2000A.daily}, with
     1940and a third quantity, $s'$, which give the position of the TEO with
     1941respect to the ITRS.  The values of $x_p$ and $y_p$ are published
     1942daily by the
     1943IERS,\footnote{http://maia.usno.navy.mil/ser7/finals2000A.daily} with
    19361944a format described by their
    19371945\code{readme.finals2000A}\footnote{http://maia.usno.navy.mil/ser7/readme.finals2000A}.
    19381946The UT1$-$UTC, and the precession/nutation corrections (discussed
    19391947elsewhere in this document) come from this same source.
     1948
     1949\subparagraph{Polar Motion from Bulletin : {\tt psEOC\_GetPolarMotion}}
    19401950
    19411951The polar motion coordinates should be interpolated using a third
     
    19531963The tidal effects should be included by using the Ray tidal model
    19541964given in IERS Gazette \#13. The definition of this correction is
    1955 provided below.
     1965provided below (Section~\ref{Raymodel}).
     1966
     1967\subparagraph{Polar Motion Nutation Correction : {\tt psEOC\_NutationCorr}}
    19561968
    19571969By definition of the CIP, nutation terms with periods less than 2 days
     
    19661978over this century by $s' = -4.7 \times 10^{-5} t$ in arcseconds. There
    19671979is no need to apply short timescale corrections to $s'$.
     1980
     1981\subparagraph{Spherical Rotation from Polar Motion : {\tt psSphereRot\_ITRStoTEO}}
    19681982
    19691983The transform from the ITRS to the CIP/TEO frame can be constructed by
     
    20092023correction from the Ray Tidal Model applied.
    20102024
    2011 \subsubsection{Ray Tidal Model}
     2025\subsubsection{Ray Tidal Model : {\tt psEOC\_PolarTideCorr}}
    20122026
    20132027The Ray Model tidal corrections to X, Y, and dT are given by the the
  • trunk/doc/pslib/psLibSDRS.tex

    r3767 r3772  
    1 %%% $Id: psLibSDRS.tex,v 1.207 2005-04-25 21:20:41 price Exp $
     1%%% $Id: psLibSDRS.tex,v 1.208 2005-04-27 19:59:04 eugene Exp $
    22\documentclass[panstarrs,spec]{panstarrs}
    33
     
    1111\project{Pan-STARRS Image Processing Pipeline}
    1212\organization{Institute for Astronomy}
    13 \version{13}
     13\version{14}
    1414\docnumber{PSDC-430-007}
    1515
     
    444411 & 2005 Jan 21 & draft for cycle 5 \\ \hline
    454512 & 2005 Feb 09 & final for cycle 5 \\
     4613 & 2005 Mar 30 & draft for cycle 6 \\
     4714 & 2005 Apr 27 & final for cycle 6 \\
    4648\RevisionsEnd
    4749
     
    13741376If the value of \code{vector} is \code{NULL}, then
    13751377\code{psVectorRealloc} must return an error.
     1378
     1379\begin{verbatim}
     1380psVector *psVectorExtend(psVector *vector, int delta, int nExtend);
     1381\end{verbatim}
     1382
     1383This function increments \code{psVector.n}, the number of elements in
     1384the vector by \code{nExtend}.  If the current length of the vector
     1385plus {\em twice} the number of new elements is greater than the
     1386allocated space, an additional \code{delta} elements are allocated.
     1387If the value of \code{delta} is less than 1, 10 shall be used. 
     1388
     1389Here is an example of how \code{psVectorExtend} is used to
     1390automatically increment the vector length.
     1391\begin{verbatim}
     1392  // create data vector
     1393  psVector *y = psVectorAlloc (100);
     1394  y->n = 0;
     1395  for (int i = 0; i < 1000; i++) {
     1396    y->data.F32[y->n + 0] = 2*i;
     1397    y->data.F32[y->n + 1] = 2*i;
     1398    y->data.F32[y->n + 2] = 2*i;
     1399    psVectorExtend (y, 100, 3);
     1400    // increments n by 1, extends length if needed by 100
     1401  }
     1402\end{verbatim}
     1403Note that the specification that the allocation always be greater than
     1404the number of elements by twice the number of new elements implies
     1405that there will be room on the next loop for \code{nExtend} new
     1406elements, as in this example.
    13761407
    13771408\subsection{Simple Images}
     
    14921523\code{delta} defines how many elements to add on each pass (if this
    14931524value is less than 1, 10 shall be used).
     1525
     1526\begin{verbatim}
     1527psBool psArrayRemove(psArray *array, psPtr value);
     1528\end{verbatim}
     1529
     1530This function removes all entries of \code{value} in the \code{array},
     1531reducing the total number of elements of \code{array} as needed.
     1532Returns \code{TRUE} if any elements were removed, otherwise
     1533\code{FALSE}.
    14941534
    14951535\begin{verbatim}
     
    26792719} psImageCutDirection;
    26802720
    2681 psVector *psImageSlice(psVector *out, psVector *coords, const psImage *input,
    2682                        const psImage *mask, unsigned int maskVal, int x0, int y0,
    2683                        int x1, int y1, psImageCutDirection direction, const psStats *stats);
     2721psVector *psImageSlice(psVector *out,
     2722                       psVector *coords,
     2723                       const psImage *input,
     2724                       const psImage *mask,
     2725                       unsigned int maskVal,
     2726                       int x0, int y0, int x1, int y1,
     2727                       psImageCutDirection direction,
     2728                       const psStats *stats);
    26842729\end{verbatim}
    26852730Extract pixels from rectlinear region to a vector (array of floats).
     
    39163961the conventions of the \code{psList} iterators.
    39173962\begin{verbatim}
    3918 psListIterator *psMetadataIteratorAlloc(psMetadata *md, int location, bool mutable);
     3963psListIterator *psMetadataIteratorAlloc(psMetadata *md, int location, const char *regex);
    39193964bool psMetadataIteratorSet(psListIterator *iterator, int location);
    3920 psMetadataItem *psMetadataGetAndIncrement(psListIterator *iterator, const char *regex);
    3921 psMetadataItem *psMetadataGetAndDecrement(psListIterator *iterator, const char *regex);
     3965psMetadataItem *psMetadataGetAndIncrement(psListIterator *iterator);
     3966psMetadataItem *psMetadataGetAndDecrement(psListIterator *iterator);
    39223967\end{verbatim}
    39233968
     
    45094554bool psFitsUpdateImage(psFits *fits, const psImage *input, psRegion region, int z);
    45104555\end{verbatim}
    4511 \tbd{we have discussed this as the alternate name}
    45124556Write an image section to the open \code{psFits} file pointer.  This
    45134557operation may write a portion of an image over the existing bytes of
     
    46094653
    46104654\begin{verbatim}
    4611 bool psFitsUpdateTable(psFits* fits, psMetadata *header, psMetadata* data, int row);
     4655bool psFitsUpdateTable(psFits* fits, psMetadata* data, int row);
    46124656\end{verbatim}
    46134657Writes the \code{psMetadata} data to a FITS table at the specified row
     
    53645408\tbd{supply the velocity as an un-normalized 3 vector?}
    53655409
     5410\tbd{MHPCC: please code this section as currently specified.  We will
     5411  define a function, and algorithm, to return the current velocity
     5412  vector given a time and position, which can be fed to this
     5413  function}.
     5414
    53665415\paragraph{Aberration}
    53675416The following function calculates the \code{apparent} position of a
     
    53695418observer, represented as a speed and a direction:
    53705419\begin{verbatim}
    5371 psAberration(psSphere *apparent, psSphere *actual, psSphere direction, double speed);
     5420psSphere *psAberration(psSphere *apparent, psSphere *actual, psSphere direction, double speed);
    53725421\end{verbatim}
    53735422The \code{actual} and \code{apparent} positions are represented as
    53745423\code{psSphere} entries, as is the \code{direction} of motion.  The
    5375 speed in that direction is given in units of the speed of light.
     5424speed in that direction is given in units of the speed of light.  If
     5425the value of \code{apparent} is NULL, a new \code{psSphere} is
     5426allocated, otherwise the point to \code{apparent} is used for the
     5427result.
    53765428
    53775429\paragraph{Gravitational Deflection}
    53785430
     5431The following function calculates the \code{apparent} position of a
     5432star, given its \code{actual} position and the position of the sun:
     5433\begin{verbatim}
     5434psSphere *psGravityDeflection(psSphere *apparent, psSphere *actual, psSphere *sun);
     5435\end{verbatim}
     5436The \code{actual} and \code{apparent} positions are represented as
     5437\code{psSphere} entries, as is position of the sun.  If the value of
     5438\code{apparent} is NULL, a new \code{psSphere} is allocated, otherwise
     5439the point to \code{apparent} is used for the result.
     5440
    53795441\paragraph{Parallax}
    53805442
     
    53855447
    53865448\subsubsection{Transformation from GCRS to ITRS}
     5449
     5450The following functions calculate the components, $X$, $Y$, and $s$,
     5451representing the location of the earth's pole at any moment, or they
     5452determine the velocity of the pole $X'$, $Y'$, $s'$.  We use the
     5453following structure to carry the polar coordinate information.  This
     5454representation may be converted to a rotation between the frames.
     5455
     5456\begin{verbatim}
     5457typedef struct {
     5458  double x;
     5459  double y;
     5460  double s;
     5461} psEarthPole;
     5462\end{verbatim}
    53875463
    53885464\paragraph{Precession/Nutation}
     
    53935469%
    53945470\begin{verbatim}
    5395 psSphere *psEOC_PrecessionModel(double *s, const psTime *time)
     5471psEarthPole *psEOC_PrecessionModel(const psTime *time)
    53965472\end{verbatim}
    53975473%
     
    54015477machine accuracy.
    54025478
    5403 The following function provides interpolated corrections to $X$ and
    5404 $Y$ from the tables provided by the IERS, just as it does for UT1 and
    5405 polar motion. 
    5406 
    5407 \begin{verbatim}
    5408 psSphere *psEOC_GetPolarCorr(const psTime *time, psTimeBulletin bulletin);
     5479The following function provides interpolated corrections to the $X$
     5480and $Y$ components of the polar coordinates from the tables provided
     5481by the IERS, just as it does for UT1 and polar motion.
     5482
     5483\begin{verbatim}
     5484psEarthPole *psEOC_PrecessionCorr(const psTime *time, psTimeBulletin bulletin);
    54095485\end{verbatim}
    54105486
    54115487The polar correction is applied to the $X$ and $Y$ elements of the
    54125488rotation to provide higher accuracy.  The spherical rotation term is
    5413 generated by providing the three elements of the rotation to the
    5414 following function:
    5415 \begin{verbatim}
    5416 psSphereRot *psSphereRot_CEOtoGCRS(double s, const psSphere *pole)
    5417 \end{verbatim}
    5418 The retulting \code{psSphereRot} may be used to determine the rotation
     5489generated by providing the polar coordinate to the following function:
     5490\begin{verbatim}
     5491psSphereRot *psSphereRot_CEOtoGCRS(const psEarthPole *pole)
     5492\end{verbatim}
     5493This function constructs the rotation element as described in the ADD (
     5494The resulting \code{psSphereRot} may be used to determine the rotation
    54195495from CIP/CEO to GCRS.  This function must give results identical to
    54205496the IERS BPN2000, within the limits of machine accuracy.
     
    54345510motion components, $x_p$ and $y_p$, extracted from the IERS tables. 
    54355511\begin{verbatim}
    5436 psSphere *psEOC_GetPoleCoords(const psTime *time, psTimeBulletin bulletin);
     5512psEarthPole *psEOC_GetPolarMotion(const psTime *time, psTimeBulletin bulletin);
    54375513\end{verbatim}
    54385514
     
    54415517ADD).
    54425518\begin{verbatim}
    5443 psSphere *psEOC_TidePolarCorr(const psTime *time);
     5519psEarthPole *psEOC_PolarTideCorr(const psTime *time);
    54445520\end{verbatim}
    54455521
    54465522The following function provides the additional corrections due to nutation
    5447 terms with periods less than or equal to two days:
    5448 \begin{verbatim}
    5449 psSphere *psEOC_NutationCorr(psTime *time);
    5450 \end{verbatim}
    5451 
    5452 The following function should generate the \code{psSphereRot} transform from
    5453 ITRS to CIP/TEO:
    5454 \begin{verbatim}
    5455 psSphereRot *psSphereRot_ITRStoTEO(psSphere pole, psTime *time);
    5456 \end{verbatim}
    5457 The time argument should be used to internally calculate $s'$.
    5458 This function should give identical results to the IERS POM2000 subroutine.
     5523terms with periods less than or equal to two days, as well as the
     5524correction to the $s'$ component of the polar motion:
     5525\begin{verbatim}
     5526psEarthPole *psEOC_NutationCorr(psTime *time);
     5527\end{verbatim}
     5528
     5529The following function converts the polar motion corrections to a
     5530spherical rotation using the prescription in the ADD:
     5531\begin{verbatim}
     5532psSphereRot *psSphereRot_ITRStoTEO(const psEarthPole *motion);
     5533\end{verbatim}
     5534This function should give identical results to the IERS POM2000
     5535subroutine.
    54595536
    54605537\subsubsection{Earth Orientation Wrappers}
Note: See TracChangeset for help on using the changeset viewer.