SOFA  20200721
Functions
canonical model

Functions

void iauBi00 (double *dpsibi, double *depsbi, double *dra)
 Frame bias components of IAU 2000 precession-nutation models. More...
 
void iauBp00 (double date1, double date2, double rb[3][3], double rp[3][3], double rbp[3][3])
 Frame bias and precession, IAU 2000. More...
 
double iauEe00 (double date1, double date2, double epsa, double dpsi)
 The equation of the equinoxes. More...
 
double iauEect00 (double date1, double date2)
 Equation of the equinoxes. More...
 
double iauEqeq94 (double date1, double date2)
 Equation of the equinoxes. More...
 
double iauEra00 (double dj1, double dj2)
 Earth rotation angle. More...
 
double iauFad03 (double t)
 mean elongation of the Moon from the Sun More...
 
double iauFae03 (double t)
 mean longitude of Earth. More...
 
double iauFaf03 (double t)
 mean longitude of the Moon minus... More...
 
double iauFaju03 (double t)
 mean longitude of Jupiter More...
 
double iauFal03 (double t)
 mean anomaly of the Moon More...
 
double iauFalp03 (double t)
 mean anomaly of the Sun More...
 
double iauFama03 (double t)
 mean longitude of Mars. More...
 
double iauFame03 (double t)
 mean longitude of Mercury. More...
 
double iauFane03 (double t)
 mean longitude of Neptune. More...
 
double iauFaom03 (double t)
 mean longitude Moon's ascending node More...
 
double iauFapa03 (double t)
 general accumulated precession in longitude More...
 
double iauFasa03 (double t)
 mean longitude of Saturn. More...
 
double iauFaur03 (double t)
 mean longitude of Uranus More...
 
double iauFave03 (double t)
 mean longitude of Venus More...
 
double iauGmst00 (double uta, double utb, double tta, double ttb)
 Greenwich mean sidereal time. More...
 
double iauGmst06 (double uta, double utb, double tta, double ttb)
 Greenwich mean sidereal time. More...
 
double iauGmst82 (double dj1, double dj2)
 Universal Time to Greenwich mean sidereal time. More...
 
double iauGst00a (double uta, double utb, double tta, double ttb)
 Greenwich apparent sidereal time. More...
 
double iauGst06a (double uta, double utb, double tta, double ttb)
 Greenwich apparent sidereal time. More...
 
void iauNut00a (double date1, double date2, double *dpsi, double *deps)
 Nutation, IAU 2000A model. More...
 
void iauNut00b (double date1, double date2, double *dpsi, double *deps)
 Nutation, IAU 2000B model. More...
 
void iauNut06a (double date1, double date2, double *dpsi, double *deps)
 IAU 2000A nutation with adjustments. More...
 
void iauNut80 (double date1, double date2, double *dpsi, double *deps)
 Nutation, IAU 1980 model. More...
 
double iauObl06 (double date1, double date2)
 Mean obliquity of the ecliptic. More...
 
double iauObl80 (double date1, double date2)
 Mean obliquity of the ecliptic. More...
 
void iauP06e (double date1, double date2, double *eps0, double *psia, double *oma, double *bpa, double *bqa, double *pia, double *bpia, double *epsa, double *chia, double *za, double *zetaa, double *thetaa, double *pa, double *gam, double *phi, double *psi)
 Precession angles. More...
 
void iauPfw06 (double date1, double date2, double *gamb, double *phib, double *psib, double *epsa)
 Precession angles, IAU 2006 (Fukushima-Williams 4-angle formulation). More...
 
void iauPr00 (double date1, double date2, double *dpsipr, double *depspr)
 Precession-rate part of the IAU 2000 models. More...
 
void iauPrec76 (double date01, double date02, double date11, double date12, double *zeta, double *z, double *theta)
 IAU 1976 precession model. More...
 
double iauS00 (double date1, double date2, double x, double y)
 The CIO locators given CIP coordinates. More...
 
double iauS06 (double date1, double date2, double x, double y)
 The CIO locator given CIP coordinates. More...
 
double iauSp00 (double date1, double date2)
 The TIO locator. More...
 
void iauXy06 (double date1, double date2, double *x, double *y)
 X,Y coordinates of celestial intermediate pole. More...
 

Detailed Description

Function Documentation

◆ iauBi00()

void iauBi00 ( double *  dpsibi,
double *  depsbi,
double *  dra 
)

Frame bias components of IAU 2000 precession-nutation models.

Frame bias components of IAU 2000 precession-nutation models (part of MHB2000 with additions).

Returned:

Parameters
[out]dpsibi,depsbilongitude and obliquity corrections
[out]drathe ICRS RA of the J2000.0 mean equinox

Notes:

1) The frame bias corrections in longitude and obliquity (radians) are required in order to correct for the offset between the GCRS pole and the mean J2000.0 pole. They define, with respect to the GCRS frame, a J2000.0 mean pole that is consistent with the rest of the IAU 2000A precession-nutation model.

2) In addition to the displacement of the pole, the complete description of the frame bias requires also an offset in right ascension. This is not part of the IAU 2000A model, and is from Chapront et al. (2002). It is returned in radians.

3) This is a supplemented implementation of one aspect of the IAU 2000A nutation model, formally adopted by the IAU General Assembly in 2000, namely MHB2000 (Mathews et al. 2002).

References:

Chapront, J., Chapront-Touze, M. & Francou, G., Astron. Astrophys., 387, 700, 2002.

Mathews, P.M., Herring, T.A., Buffet, B.A., "Modeling of nutation and precession New nutation series for nonrigid Earth and insights into the Earth's interior", J.Geophys.Res., 107, B4,

  1. The MHB2000 code itself was obtained on 9th September 2002 from ftp://maia.usno.navy.mil/conv2000/chapter5/IAU2000A.

◆ iauBp00()

void iauBp00 ( double  date1,
double  date2,
double  rb[3][3],
double  rp[3][3],
double  rbp[3][3] 
)

Frame bias and precession, IAU 2000.

Frame bias and precession, IAU 2000.

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
[out]rbframe bias matrix (Note 2)
[out]rpprecession matrix (Note 3)
[out]rbpbias-precession matrix (Note 4)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

    date1         date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The matrix rb transforms vectors from GCRS to mean J2000.0 by applying frame bias.

3) The matrix rp transforms vectors from J2000.0 mean equator and equinox to mean equator and equinox of date by applying precession.

4) The matrix rbp transforms vectors from GCRS to mean equator and equinox of date by applying frame bias then precession. It is the product rp x rb.

5) It is permissible to re-use the same array in the returned arguments. The arrays are filled in the order given.

Reference: "Expressions for the Celestial Intermediate Pole and Celestial Ephemeris Origin consistent with the IAU 2000A precession- nutation model", Astron.Astrophys. 400, 1145-1154 (2003)

n.b. The celestial ephemeris origin (CEO) was renamed "celestial intermediate origin" (CIO) by IAU 2006 Resolution 2.

Here is the call graph for this function:

◆ iauEe00()

double iauEe00 ( double  date1,
double  date2,
double  epsa,
double  dpsi 
)

The equation of the equinoxes.

The equation of the equinoxes, compatible with IAU 2000 resolutions, given the nutation in longitude and the mean obliquity.

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
[in]epsamean obliquity (Note 2)
[in]dpsinutation in longitude (Note 3)
Returns
equation of the equinoxes (Note 4)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The obliquity, in radians, is mean of date.

3) The result, which is in radians, operates in the following sense:

  Greenwich apparent ST = GMST + equation of the equinoxes

4) The result is compatible with the IAU 2000 resolutions. For further details, see IERS Conventions 2003 and Capitaine et al. (2002).

References:

Capitaine, N., Wallace, P.T. and McCarthy, D.D., "Expressions to implement the IAU 2000 definition of UT1", Astronomy & Astrophysics, 406, 1135-1149 (2003)

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Here is the call graph for this function:

◆ iauEect00()

double iauEect00 ( double  date1,
double  date2 
)

Equation of the equinoxes.

Equation of the equinoxes complementary terms, consistent with IAU 2000 resolutions.

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
Returns
complementary terms (Note 2)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The "complementary terms" are part of the equation of the equinoxes (EE), classically the difference between apparent and mean Sidereal Time:

GAST = GMST + EE

with:

EE = dpsi * cos(eps)

where dpsi is the nutation in longitude and eps is the obliquity of date. However, if the rotation of the Earth were constant in an inertial frame the classical formulation would lead to apparent irregularities in the UT1 timescale traceable to side- effects of precession-nutation. In order to eliminate these effects from UT1, "complementary terms" were introduced in 1994 (IAU, 1994) and took effect from 1997 (Capitaine and Gontier, 1993):

GAST = GMST + CT + EE

By convention, the complementary terms are included as part of the equation of the equinoxes rather than as part of the mean Sidereal Time. This slightly compromises the "geometrical" interpretation of mean sidereal time but is otherwise inconsequential.

The present function computes CT in the above expression, compatible with IAU 2000 resolutions (Capitaine et al., 2002, and IERS Conventions 2003).

References:

Capitaine, N. & Gontier, A.-M., Astron. Astrophys., 275, 645-650 (1993)

Capitaine, N., Wallace, P.T. and McCarthy, D.D., "Expressions to implement the IAU 2000 definition of UT1", Astronomy & Astrophysics, 406, 1135-1149 (2003)

IAU Resolution C7, Recommendation 3 (1994)

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Here is the call graph for this function:

◆ iauEqeq94()

double iauEqeq94 ( double  date1,
double  date2 
)

Equation of the equinoxes.

Equation of the equinoxes, IAU 1994 model.

Parameters
[in]date1,date2TDB date (Note 1)
Returns
equation of the equinoxes (Note 2)

Notes:

1) The date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The result, which is in radians, operates in the following sense:

  Greenwich apparent ST = GMST + equation of the equinoxes

References:

IAU Resolution C7, Recommendation 3 (1994).

Capitaine, N. & Gontier, A.-M., 1993, Astron. Astrophys., 275, 645-650.

Here is the call graph for this function:

◆ iauEra00()

double iauEra00 ( double  dj1,
double  dj2 
)

Earth rotation angle.

Earth rotation angle (IAU 2000 model).

Parameters
[in]dj1,dj2UT1 as a 2-part Julian Date (see note)
Returns
Earth rotation angle (radians), range 0-2pi

Notes:

1) The UT1 date dj1+dj2 is a Julian Date, apportioned in any convenient way between the arguments dj1 and dj2. For example, JD(UT1)=2450123.7 could be expressed in any of these ways, among others:

    dj1            dj2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 and MJD methods are good compromises between resolution and convenience. The date & time method is best matched to the algorithm used: maximum precision is delivered when the dj1 argument is for 0hrs UT1 on the day in question and the dj2 argument lies in the range 0 to 1, or vice versa.

2) The algorithm is adapted from Expression 22 of Capitaine et al.

  1. The time argument has been expressed in days directly, and, to retain precision, integer contributions have been eliminated. The same formulation is given in IERS Conventions (2003), Chap. 5, Eq. 14.

References:

Capitaine N., Guinot B. and McCarthy D.D, 2000, Astron. Astrophys., 355, 398-405.

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Here is the call graph for this function:

◆ iauFad03()

double iauFad03 ( double  t)

mean elongation of the Moon from the Sun

Fundamental argument, IERS Conventions (2003): mean elongation of the Moon from the Sun.

Parameters
[in]tTDB, Julian centuries since J2000.0 (Note 1)
Returns
D, radians (Note 2)

Notes:

1) Though t is strictly TDB, it is usually more convenient to use TT, which makes no significant difference.

2) The expression used is as adopted in IERS Conventions (2003) and is from Simon et al. (1994).

References:

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

◆ iauFae03()

double iauFae03 ( double  t)

mean longitude of Earth.

Fundamental argument, IERS Conventions (2003): mean longitude of Earth.

Parameters
[in]tTDB, Julian centuries since J2000.0 (Note 1)
Returns
mean longitude of Earth, radians (Note 2)

Notes:

1) Though t is strictly TDB, it is usually more convenient to use TT, which makes no significant difference.

2) The expression used is as adopted in IERS Conventions (2003) and comes from Souchay et al. (1999) after Simon et al. (1994).

References:

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

Souchay, J., Loysel, B., Kinoshita, H., Folgueira, M. 1999, Astron.Astrophys.Supp.Ser. 135, 111

◆ iauFaf03()

double iauFaf03 ( double  t)

mean longitude of the Moon minus...

Fundamental argument, IERS Conventions (2003): mean longitude of the Moon minus mean longitude of the ascending node.

Parameters
[in]tTDB, Julian centuries since J2000.0 (Note 1)
Returns
F, radians (Note 2)

Notes:

1) Though t is strictly TDB, it is usually more convenient to use TT, which makes no significant difference.

2) The expression used is as adopted in IERS Conventions (2003) and is from Simon et al. (1994).

References:

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

◆ iauFaju03()

double iauFaju03 ( double  t)

mean longitude of Jupiter

Fundamental argument, IERS Conventions (2003): mean longitude of Jupiter.

Parameters
[in]tTDB, Julian centuries since J2000.0 (Note 1)
Returns
mean longitude of Jupiter, radians (Note 2)

Notes:

1) Though t is strictly TDB, it is usually more convenient to use TT, which makes no significant difference.

2) The expression used is as adopted in IERS Conventions (2003) and comes from Souchay et al. (1999) after Simon et al. (1994).

References:

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

Souchay, J., Loysel, B., Kinoshita, H., Folgueira, M. 1999, Astron.Astrophys.Supp.Ser. 135, 111

◆ iauFal03()

double iauFal03 ( double  t)

mean anomaly of the Moon

Fundamental argument, IERS Conventions (2003): mean anomaly of the Moon.

Parameters
[in]tTDB, Julian centuries since J2000.0 (Note 1)
Returns
l, radians (Note 2)

Notes:

1) Though t is strictly TDB, it is usually more convenient to use TT, which makes no significant difference.

2) The expression used is as adopted in IERS Conventions (2003) and is from Simon et al. (1994).

References:

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

◆ iauFalp03()

double iauFalp03 ( double  t)

mean anomaly of the Sun

Fundamental argument, IERS Conventions (2003): mean anomaly of the Sun.

Parameters
[in]tTDB, Julian centuries since J2000.0 (Note 1)
Returns
l', radians (Note 2)

Notes:

1) Though t is strictly TDB, it is usually more convenient to use TT, which makes no significant difference.

2) The expression used is as adopted in IERS Conventions (2003) and is from Simon et al. (1994).

References:

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

◆ iauFama03()

double iauFama03 ( double  t)

mean longitude of Mars.

Fundamental argument, IERS Conventions (2003): mean longitude of Mars.

Parameters
[in]tTDB, Julian centuries since J2000.0 (Note 1)
Returns
mean longitude of Mars, radians (Note 2)

Notes:

1) Though t is strictly TDB, it is usually more convenient to use TT, which makes no significant difference.

2) The expression used is as adopted in IERS Conventions (2003) and comes from Souchay et al. (1999) after Simon et al. (1994).

References:

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

Souchay, J., Loysel, B., Kinoshita, H., Folgueira, M. 1999, Astron.Astrophys.Supp.Ser. 135, 111

◆ iauFame03()

double iauFame03 ( double  t)

mean longitude of Mercury.

Fundamental argument, IERS Conventions (2003): mean longitude of Mercury.

Parameters
[in]tTDB, Julian centuries since J2000.0 (Note 1)
Returns
mean longitude of Mercury, radians (Note 2)

Notes:

1) Though t is strictly TDB, it is usually more convenient to use TT, which makes no significant difference.

2) The expression used is as adopted in IERS Conventions (2003) and comes from Souchay et al. (1999) after Simon et al. (1994).

References:

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

Souchay, J., Loysel, B., Kinoshita, H., Folgueira, M. 1999, Astron.Astrophys.Supp.Ser. 135, 111

◆ iauFane03()

double iauFane03 ( double  t)

mean longitude of Neptune.

Fundamental argument, IERS Conventions (2003): mean longitude of Neptune.

Parameters
[in]tTDB, Julian centuries since J2000.0 (Note 1)
Returns
mean longitude of Neptune, radians (Note 2)

Notes:

1) Though t is strictly TDB, it is usually more convenient to use TT, which makes no significant difference.

2) The expression used is as adopted in IERS Conventions (2003) and is adapted from Simon et al. (1994).

References:

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

◆ iauFaom03()

double iauFaom03 ( double  t)

mean longitude Moon's ascending node

Fundamental argument, IERS Conventions (2003): mean longitude of the Moon's ascending node.

Parameters
[in]tTDB, Julian centuries since J2000.0 (Note 1)
Returns
Omega, radians (Note 2)

Notes:

1) Though t is strictly TDB, it is usually more convenient to use TT, which makes no significant difference.

2) The expression used is as adopted in IERS Conventions (2003) and is from Simon et al. (1994).

References:

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

◆ iauFapa03()

double iauFapa03 ( double  t)

general accumulated precession in longitude

Fundamental argument, IERS Conventions (2003): general accumulated precession in longitude.

Parameters
[in]tTDB, Julian centuries since J2000.0 (Note 1)
Returns
general precession in longitude, radians (Note 2)

Notes:

1) Though t is strictly TDB, it is usually more convenient to use TT, which makes no significant difference.

2) The expression used is as adopted in IERS Conventions (2003). It is taken from Kinoshita & Souchay (1990) and comes originally from Lieske et al. (1977).

References:

Kinoshita, H. and Souchay J. 1990, Celest.Mech. and Dyn.Astron. 48, 187

Lieske, J.H., Lederle, T., Fricke, W. & Morando, B. 1977, Astron.Astrophys. 58, 1-16

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

◆ iauFasa03()

double iauFasa03 ( double  t)

mean longitude of Saturn.

Fundamental argument, IERS Conventions (2003): mean longitude of Saturn.

Parameters
[in]tTDB, Julian centuries since J2000.0 (Note 1)
Returns
mean longitude of Saturn, radians (Note 2)

Notes:

1) Though t is strictly TDB, it is usually more convenient to use TT, which makes no significant difference.

2) The expression used is as adopted in IERS Conventions (2003) and comes from Souchay et al. (1999) after Simon et al. (1994).

References:

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

Souchay, J., Loysel, B., Kinoshita, H., Folgueira, M. 1999, Astron.Astrophys.Supp.Ser. 135, 111

◆ iauFaur03()

double iauFaur03 ( double  t)

mean longitude of Uranus

Fundamental argument, IERS Conventions (2003): mean longitude of Uranus.

Parameters
[in]tTDB, Julian centuries since J2000.0 (Note 1)

Returned (function value): double mean longitude of Uranus, radians (Note 2)

Notes:

1) Though t is strictly TDB, it is usually more convenient to use TT, which makes no significant difference.

2) The expression used is as adopted in IERS Conventions (2003) and is adapted from Simon et al. (1994).

References:

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

◆ iauFave03()

double iauFave03 ( double  t)

mean longitude of Venus

Fundamental argument, IERS Conventions (2003): mean longitude of Venus.

Parameters
[in]tTDB, Julian centuries since J2000.0 (Note 1)
Returns
mean longitude of Venus, radians (Note 2)

Notes:

1) Though t is strictly TDB, it is usually more convenient to use TT, which makes no significant difference.

2) The expression used is as adopted in IERS Conventions (2003) and comes from Souchay et al. (1999) after Simon et al. (1994).

References:

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

Souchay, J., Loysel, B., Kinoshita, H., Folgueira, M. 1999, Astron.Astrophys.Supp.Ser. 135, 111

◆ iauGmst00()

double iauGmst00 ( double  uta,
double  utb,
double  tta,
double  ttb 
)

Greenwich mean sidereal time.

Greenwich mean sidereal time (model consistent with IAU 2000 resolutions).

Parameters
[in]uta,utbUT1 as a 2-part Julian Date (Notes 1,2)
[in]tta,ttbTT as a 2-part Julian Date (Notes 1,2)
Returns
Greenwich mean sidereal time (radians)

Notes:

1) The UT1 and TT dates uta+utb and tta+ttb respectively, are both Julian Dates, apportioned in any convenient way between the argument pairs. For example, JD=2450123.7 could be expressed in any of these ways, among others:

   Part A         Part B

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable (in the case of UT; the TT is not at all critical in this respect). The J2000 and MJD methods are good compromises between resolution and convenience. For UT, the date & time method is best matched to the algorithm that is used by the Earth Rotation Angle function, called internally: maximum precision is delivered when the uta argument is for 0hrs UT1 on the day in question and the utb argument lies in the range 0 to 1, or vice versa.

2) Both UT1 and TT are required, UT1 to predict the Earth rotation and TT to predict the effects of precession. If UT1 is used for both purposes, errors of order 100 microarcseconds result.

3) This GMST is compatible with the IAU 2000 resolutions and must be used only in conjunction with other IAU 2000 compatible components such as precession-nutation and equation of the equinoxes.

4) The result is returned in the range 0 to 2pi.

5) The algorithm is from Capitaine et al. (2003) and IERS Conventions 2003.

References:

Capitaine, N., Wallace, P.T. and McCarthy, D.D., "Expressions to implement the IAU 2000 definition of UT1", Astronomy & Astrophysics, 406, 1135-1149 (2003)

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Here is the call graph for this function:

◆ iauGmst06()

double iauGmst06 ( double  uta,
double  utb,
double  tta,
double  ttb 
)

Greenwich mean sidereal time.

Greenwich mean sidereal time (consistent with IAU 2006 precession).

Parameters
[in]uta,utbUT1 as a 2-part Julian Date (Notes 1,2)
[in]tta,ttbTT as a 2-part Julian Date (Notes 1,2)
Returns
Greenwich mean sidereal time (radians)

Notes:

1) The UT1 and TT dates uta+utb and tta+ttb respectively, are both Julian Dates, apportioned in any convenient way between the argument pairs. For example, JD=2450123.7 could be expressed in any of these ways, among others:

   Part A        Part B

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable (in the case of UT; the TT is not at all critical in this respect). The J2000 and MJD methods are good compromises between resolution and convenience. For UT, the date & time method is best matched to the algorithm that is used by the Earth rotation angle function, called internally: maximum precision is delivered when the uta argument is for 0hrs UT1 on the day in question and the utb argument lies in the range 0 to 1, or vice versa.

2) Both UT1 and TT are required, UT1 to predict the Earth rotation and TT to predict the effects of precession. If UT1 is used for both purposes, errors of order 100 microarcseconds result.

3) This GMST is compatible with the IAU 2006 precession and must not be used with other precession models.

4) The result is returned in the range 0 to 2pi.

Reference:

Capitaine, N., Wallace, P.T. & Chapront, J., 2005, Astron.Astrophys. 432, 355

Here is the call graph for this function:

◆ iauGmst82()

double iauGmst82 ( double  dj1,
double  dj2 
)

Universal Time to Greenwich mean sidereal time.

Universal Time to Greenwich mean sidereal time (IAU 1982 model).

Parameters
[in]dj1UT1 Julian Date (see note)
[in]dj2UT1 Julian Date (see note)
Returns
Greenwich mean sidereal time (radians)

Notes:

1) The UT1 date dj1+dj2 is a Julian Date, apportioned in any convenient way between the arguments dj1 and dj2. For example, JD(UT1)=2450123.7 could be expressed in any of these ways, among others:

    dj1            dj2

2450123.7          0          (JD method)
 2451545        -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5         0.2         (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 and MJD methods are good compromises between resolution and convenience. The date & time method is best matched to the algorithm used: maximum accuracy (or, at least, minimum noise) is delivered when the dj1 argument is for 0hrs UT1 on the day in question and the dj2 argument lies in the range 0 to 1, or vice versa.

2) The algorithm is based on the IAU 1982 expression. This is always described as giving the GMST at 0 hours UT1. In fact, it gives the difference between the GMST and the UT, the steady 4-minutes-per-day drawing-ahead of ST with respect to UT. When whole days are ignored, the expression happens to equal the GMST at 0 hours UT1 each day.

3) In this function, the entire UT1 (the sum of the two arguments dj1 and dj2) is used directly as the argument for the standard formula, the constant term of which is adjusted by 12 hours to take account of the noon phasing of Julian Date. The UT1 is then added, but omitting whole days to conserve accuracy.

References:

Transactions of the International Astronomical Union, XVIII B, 67 (1983).

Aoki et al., Astron.Astrophys., 105, 359-361 (1982).

Here is the call graph for this function:

◆ iauGst00a()

double iauGst00a ( double  uta,
double  utb,
double  tta,
double  ttb 
)

Greenwich apparent sidereal time.

Greenwich apparent sidereal time (consistent with IAU 2000 resolutions).

Parameters
[in]uta,utbUT1 as a 2-part Julian Date (Notes 1,2)
[in]tta,ttbTT as a 2-part Julian Date (Notes 1,2)
Returns
Greenwich apparent sidereal time (radians)

Notes:

1) The UT1 and TT dates uta+utb and tta+ttb respectively, are both Julian Dates, apportioned in any convenient way between the argument pairs. For example, JD=2450123.7 could be expressed in any of these ways, among others:

   Part A        Part B

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable (in the case of UT; the TT is not at all critical in this respect). The J2000 and MJD methods are good compromises between resolution and convenience. For UT, the date & time method is best matched to the algorithm that is used by the Earth Rotation Angle function, called internally: maximum precision is delivered when the uta argument is for 0hrs UT1 on the day in question and the utb argument lies in the range 0 to 1, or vice versa.

2) Both UT1 and TT are required, UT1 to predict the Earth rotation and TT to predict the effects of precession-nutation. If UT1 is used for both purposes, errors of order 100 microarcseconds result.

3) This GAST is compatible with the IAU 2000 resolutions and must be used only in conjunction with other IAU 2000 compatible components such as precession-nutation.

4) The result is returned in the range 0 to 2pi.

5) The algorithm is from Capitaine et al. (2003) and IERS Conventions 2003.

References:

Capitaine, N., Wallace, P.T. and McCarthy, D.D., "Expressions to implement the IAU 2000 definition of UT1", Astronomy & Astrophysics, 406, 1135-1149 (2003)

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Here is the call graph for this function:

◆ iauGst06a()

double iauGst06a ( double  uta,
double  utb,
double  tta,
double  ttb 
)

Greenwich apparent sidereal time.

Greenwich apparent sidereal time (consistent with IAU 2000 and 2006 resolutions).

Parameters
[in]uta,utbUT1 as a 2-part Julian Date (Notes 1,2)
[in]tta,ttbTT as a 2-part Julian Date (Notes 1,2)
Returns
Greenwich apparent sidereal time (radians)

Notes:

1) The UT1 and TT dates uta+utb and tta+ttb respectively, are both Julian Dates, apportioned in any convenient way between the argument pairs. For example, JD=2450123.7 could be expressed in any of these ways, among others:

   Part A        Part B

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable (in the case of UT; the TT is not at all critical in this respect). The J2000 and MJD methods are good compromises between resolution and convenience. For UT, the date & time method is best matched to the algorithm that is used by the Earth rotation angle function, called internally: maximum precision is delivered when the uta argument is for 0hrs UT1 on the day in question and the utb argument lies in the range 0 to 1, or vice versa.

2) Both UT1 and TT are required, UT1 to predict the Earth rotation and TT to predict the effects of precession-nutation. If UT1 is used for both purposes, errors of order 100 microarcseconds result.

3) This GAST is compatible with the IAU 2000/2006 resolutions and must be used only in conjunction with IAU 2006 precession and IAU 2000A nutation.

4) The result is returned in the range 0 to 2pi.

Reference:

Wallace, P.T. & Capitaine, N., 2006, Astron.Astrophys. 459, 981

Here is the call graph for this function:

◆ iauNut00a()

void iauNut00a ( double  date1,
double  date2,
double *  dpsi,
double *  deps 
)

Nutation, IAU 2000A model.

Nutation, IAU 2000A model (MHB2000 luni-solar and planetary nutation with free core nutation omitted).

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
[out]dpsi,depsnutation, luni-solar + planetary (Note 2)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The nutation components in longitude and obliquity are in radians and with respect to the equinox and ecliptic of date. The obliquity at J2000.0 is assumed to be the Lieske et al. (1977) value of 84381.448 arcsec.

Both the luni-solar and planetary nutations are included. The latter are due to direct planetary nutations and the perturbations of the lunar and terrestrial orbits.

3) The function computes the MHB2000 nutation series with the associated corrections for planetary nutations. It is an implementation of the nutation part of the IAU 2000A precession- nutation model, formally adopted by the IAU General Assembly in 2000, namely MHB2000 (Mathews et al. 2002), but with the free core nutation (FCN - see Note 4) omitted.

4) The full MHB2000 model also contains contributions to the nutations in longitude and obliquity due to the free-excitation of the free-core-nutation during the period 1979-2000. These FCN terms, which are time-dependent and unpredictable, are NOT included in the present function and, if required, must be independently computed. With the FCN corrections included, the present function delivers a pole which is at current epochs accurate to a few hundred microarcseconds. The omission of FCN introduces further errors of about that size.

5) The present function provides classical nutation. The MHB2000 algorithm, from which it is adapted, deals also with (i) the offsets between the GCRS and mean poles and (ii) the adjustments in longitude and obliquity due to the changed precession rates. These additional functions, namely frame bias and precession adjustments, are supported by the SOFA functions iauBi00 and iauPr00.

6) The MHB2000 algorithm also provides "total" nutations, comprising the arithmetic sum of the frame bias, precession adjustments, luni-solar nutation and planetary nutation. These total nutations can be used in combination with an existing IAU 1976 precession implementation, such as iauPmat76, to deliver GCRS- to-true predictions of sub-mas accuracy at current dates. However, there are three shortcomings in the MHB2000 model that must be taken into account if more accurate or definitive results are required (see Wallace 2002):

(i) The MHB2000 total nutations are simply arithmetic sums, yet in reality the various components are successive Euler rotations. This slight lack of rigor leads to cross terms that exceed 1 mas after a century. The rigorous procedure is to form the GCRS-to-true rotation matrix by applying the bias, precession and nutation in that order.

(ii) Although the precession adjustments are stated to be with respect to Lieske et al. (1977), the MHB2000 model does not specify which set of Euler angles are to be used and how the adjustments are to be applied. The most literal and straightforward procedure is to adopt the 4-rotation epsilon_0, psi_A, omega_A, xi_A option, and to add DPSIPR to psi_A and DEPSPR to both omega_A and eps_A.

(iii) The MHB2000 model predates the determination by Chapront et al. (2002) of a 14.6 mas displacement between the J2000.0 mean equinox and the origin of the ICRS frame. It should, however, be noted that neglecting this displacement when calculating star coordinates does not lead to a 14.6 mas change in right ascension, only a small second- order distortion in the pattern of the precession-nutation effect.

For these reasons, the SOFA functions do not generate the "total nutations" directly, though they can of course easily be generated by calling iauBi00, iauPr00 and the present function and adding the results.

7) The MHB2000 model contains 41 instances where the same frequency appears multiple times, of which 38 are duplicates and three are triplicates. To keep the present code close to the original MHB algorithm, this small inefficiency has not been corrected.

References:

Chapront, J., Chapront-Touze, M. & Francou, G. 2002, Astron.Astrophys. 387, 700

Lieske, J.H., Lederle, T., Fricke, W. & Morando, B. 1977, Astron.Astrophys. 58, 1-16

Mathews, P.M., Herring, T.A., Buffet, B.A. 2002, J.Geophys.Res. 107, B4. The MHB_2000 code itself was obtained on 9th September 2002 from ftp//maia.usno.navy.mil/conv2000/chapter5/IAU2000A.

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

Souchay, J., Loysel, B., Kinoshita, H., Folgueira, M. 1999, Astron.Astrophys.Supp.Ser. 135, 111

Wallace, P.T., "Software for Implementing the IAU 2000 Resolutions", in IERS Workshop 5.1 (2002)

Here is the call graph for this function:

◆ iauNut00b()

void iauNut00b ( double  date1,
double  date2,
double *  dpsi,
double *  deps 
)

Nutation, IAU 2000B model.

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
[out]dpsi,depsnutation, luni-solar + planetary (Note 2)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The nutation components in longitude and obliquity are in radians and with respect to the equinox and ecliptic of date. The obliquity at J2000.0 is assumed to be the Lieske et al. (1977) value of 84381.448 arcsec. (The errors that result from using this function with the IAU 2006 value of 84381.406 arcsec can be neglected.)

The nutation model consists only of luni-solar terms, but includes also a fixed offset which compensates for certain long- period planetary terms (Note 7).

3) This function is an implementation of the IAU 2000B abridged nutation model formally adopted by the IAU General Assembly in

  1. The function computes the MHB_2000_SHORT luni-solar nutation series (Luzum 2001), but without the associated corrections for the precession rate adjustments and the offset between the GCRS and J2000.0 mean poles.

4) The full IAU 2000A (MHB2000) nutation model contains nearly 1400 terms. The IAU 2000B model (McCarthy & Luzum 2003) contains only 77 terms, plus additional simplifications, yet still delivers results of 1 mas accuracy at present epochs. This combination of accuracy and size makes the IAU 2000B abridged nutation model suitable for most practical applications.

The function delivers a pole accurate to 1 mas from 1900 to 2100 (usually better than 1 mas, very occasionally just outside 1 mas). The full IAU 2000A model, which is implemented in the function iauNut00a (q.v.), delivers considerably greater accuracy at current dates; however, to realize this improved accuracy, corrections for the essentially unpredictable free-core-nutation (FCN) must also be included.

5) The present function provides classical nutation. The MHB_2000_SHORT algorithm, from which it is adapted, deals also with (i) the offsets between the GCRS and mean poles and (ii) the adjustments in longitude and obliquity due to the changed precession rates. These additional functions, namely frame bias and precession adjustments, are supported by the SOFA functions iauBi00 and iauPr00.

6) The MHB_2000_SHORT algorithm also provides "total" nutations, comprising the arithmetic sum of the frame bias, precession adjustments, and nutation (luni-solar + planetary). These total nutations can be used in combination with an existing IAU 1976 precession implementation, such as iauPmat76, to deliver GCRS- to-true predictions of mas accuracy at current epochs. However, for symmetry with the iauNut00a function (q.v. for the reasons), the SOFA functions do not generate the "total nutations" directly. Should they be required, they could of course easily be generated by calling iauBi00, iauPr00 and the present function and adding the results.

7) The IAU 2000B model includes "planetary bias" terms that are fixed in size but compensate for long-period nutations. The amplitudes quoted in McCarthy & Luzum (2003), namely Dpsi = -1.5835 mas and Depsilon = +1.6339 mas, are optimized for the "total nutations" method described in Note 6. The Luzum (2001) values used in this SOFA implementation, namely -0.135 mas and +0.388 mas, are optimized for the "rigorous" method, where frame bias, precession and nutation are applied separately and in that order. During the interval 1995-2050, the SOFA implementation delivers a maximum error of 1.001 mas (not including FCN).

References:

Lieske, J.H., Lederle, T., Fricke, W., Morando, B., "Expressions for the precession quantities based upon the IAU /1976/ system of astronomical constants", Astron.Astrophys. 58, 1-2, 1-16. (1977)

Luzum, B., private communication, 2001 (Fortran code MHB_2000_SHORT)

McCarthy, D.D. & Luzum, B.J., "An abridged model of the precession-nutation of the celestial pole", Cel.Mech.Dyn.Astron. 85, 37-49 (2003)

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J., Astron.Astrophys. 282, 663-683 (1994)

◆ iauNut06a()

void iauNut06a ( double  date1,
double  date2,
double *  dpsi,
double *  deps 
)

IAU 2000A nutation with adjustments.

IAU 2000A nutation with adjustments to match the IAU 2006 precession.

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
[out]dpsi,depsnutation, luni-solar + planetary (Note 2)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The nutation components in longitude and obliquity are in radians and with respect to the mean equinox and ecliptic of date, IAU 2006 precession model (Hilton et al. 2006, Capitaine et al. 2005).

3) The function first computes the IAU 2000A nutation, then applies adjustments for (i) the consequences of the change in obliquity from the IAU 1980 ecliptic to the IAU 2006 ecliptic and (ii) the secular variation in the Earth's dynamical form factor J2.

4) The present function provides classical nutation, complementing the IAU 2000 frame bias and IAU 2006 precession. It delivers a pole which is at current epochs accurate to a few tens of microarcseconds, apart from the free core nutation.

References:

Chapront, J., Chapront-Touze, M. & Francou, G. 2002, Astron.Astrophys. 387, 700

Lieske, J.H., Lederle, T., Fricke, W. & Morando, B. 1977, Astron.Astrophys. 58, 1-16

Mathews, P.M., Herring, T.A., Buffet, B.A. 2002, J.Geophys.Res. 107, B4. The MHB_2000 code itself was obtained on 9th September 2002 from ftp//maia.usno.navy.mil/conv2000/chapter5/IAU2000A.

Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683

Souchay, J., Loysel, B., Kinoshita, H., Folgueira, M. 1999, Astron.Astrophys.Supp.Ser. 135, 111

Wallace, P.T., "Software for Implementing the IAU 2000 Resolutions", in IERS Workshop 5.1 (2002)

Here is the call graph for this function:

◆ iauNut80()

void iauNut80 ( double  date1,
double  date2,
double *  dpsi,
double *  deps 
)

Nutation, IAU 1980 model.

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
[out]dpsinutation in longitude (radians)
[out]depsnutation in obliquity (radians)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The nutation components are with respect to the ecliptic of date.

Reference:

Explanatory Supplement to the Astronomical Almanac, P. Kenneth Seidelmann (ed), University Science Books (1992), Section 3.222 (p111).

Here is the call graph for this function:

◆ iauObl06()

double iauObl06 ( double  date1,
double  date2 
)

Mean obliquity of the ecliptic.

Mean obliquity of the ecliptic, IAU 2006 precession model.

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
Returns
obliquity of the ecliptic (radians, Note 2)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The result is the angle between the ecliptic and mean equator of date date1+date2.

Reference:

Hilton, J. et al., 2006, Celest.Mech.Dyn.Astron. 94, 351

◆ iauObl80()

double iauObl80 ( double  date1,
double  date2 
)

Mean obliquity of the ecliptic.

Mean obliquity of the ecliptic, IAU 1980 model.

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
Returns
obliquity of the ecliptic (radians, Note 2)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The result is the angle between the ecliptic and mean equator of date date1+date2.

Reference:

Explanatory Supplement to the Astronomical Almanac, P. Kenneth Seidelmann (ed), University Science Books (1992), Expression 3.222-1 (p114).

◆ iauP06e()

void iauP06e ( double  date1,
double  date2,
double *  eps0,
double *  psia,
double *  oma,
double *  bpa,
double *  bqa,
double *  pia,
double *  bpia,
double *  epsa,
double *  chia,
double *  za,
double *  zetaa,
double *  thetaa,
double *  pa,
double *  gam,
double *  phi,
double *  psi 
)

Precession angles.

Precession angles, IAU 2006, equinox based.

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
[out]eps0epsilon_0
[out]psiapsi_A
[out]omaomega_A
[out]bpaP_A
[out]bqaQ_A
[out]piapi_A
[out]bpiaPi_A
[out]epsaobliquity epsilon_A
[out]chiachi_A
[out]zaz_A
[out]zetaazeta_A
[out]thetaatheta_A
[out]pap_A
[out]gamF-W angle gamma_J2000
[out]phiF-W angle phi_J2000
[out]psiF-W angle psi_J2000

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) This function returns the set of equinox based angles for the Capitaine et al. "P03" precession theory, adopted by the IAU in

  1. The angles are set out in Table 1 of Hilton et al. (2006):

eps0 epsilon_0 obliquity at J2000.0 psia psi_A luni-solar precession oma omega_A inclination of equator wrt J2000.0 ecliptic bpa P_A ecliptic pole x, J2000.0 ecliptic triad bqa Q_A ecliptic pole -y, J2000.0 ecliptic triad pia pi_A angle between moving and J2000.0 ecliptics bpia Pi_A longitude of ascending node of the ecliptic epsa epsilon_A obliquity of the ecliptic chia chi_A planetary precession za z_A equatorial precession: -3rd 323 Euler angle zetaa zeta_A equatorial precession: -1st 323 Euler angle thetaa theta_A equatorial precession: 2nd 323 Euler angle pa p_A general precession gam gamma_J2000 J2000.0 RA difference of ecliptic poles phi phi_J2000 J2000.0 codeclination of ecliptic pole psi psi_J2000 longitude difference of equator poles, J2000.0

The returned values are all radians.

3) Hilton et al. (2006) Table 1 also contains angles that depend on models distinct from the P03 precession theory itself, namely the IAU 2000A frame bias and nutation. The quoted polynomials are used in other SOFA functions:

. iauXy06 contains the polynomial parts of the X and Y series.

. iauS06 contains the polynomial part of the s+XY/2 series.

. iauPfw06 implements the series for the Fukushima-Williams angles that are with respect to the GCRS pole (i.e. the variants that include frame bias).

4) The IAU resolution stipulated that the choice of parameterization was left to the user, and so an IAU compliant precession implementation can be constructed using various combinations of the angles returned by the present function.

5) The parameterization used by SOFA is the version of the Fukushima- Williams angles that refers directly to the GCRS pole. These angles may be calculated by calling the function iauPfw06. SOFA also supports the direct computation of the CIP GCRS X,Y by series, available by calling iauXy06.

6) The agreement between the different parameterizations is at the 1 microarcsecond level in the present era.

7) When constructing a precession formulation that refers to the GCRS pole rather than the dynamical pole, it may (depending on the choice of angles) be necessary to introduce the frame bias explicitly.

8) It is permissible to re-use the same variable in the returned arguments. The quantities are stored in the stated order.

Reference:

Hilton, J. et al., 2006, Celest.Mech.Dyn.Astron. 94, 351

Here is the call graph for this function:

◆ iauPfw06()

void iauPfw06 ( double  date1,
double  date2,
double *  gamb,
double *  phib,
double *  psib,
double *  epsa 
)

Precession angles, IAU 2006 (Fukushima-Williams 4-angle formulation).

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
[out]gambF-W angle gamma_bar (radians)
[out]phibF-W angle phi_bar (radians)
[out]psibF-W angle psi_bar (radians)
[out]epsaF-W angle epsilon_A (radians)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) Naming the following points:

     e = J2000.0 ecliptic pole,
     p = GCRS pole,
     E = mean ecliptic pole of date,

and P = mean pole of date,

the four Fukushima-Williams angles are as follows:

gamb = gamma_bar = epE phib = phi_bar = pE psib = psi_bar = pEP epsa = epsilon_A = EP

3) The matrix representing the combined effects of frame bias and precession is:

PxB = R_1(-epsa).R_3(-psib).R_1(phib).R_3(gamb)

4) The matrix representing the combined effects of frame bias, precession and nutation is simply:

NxPxB = R_1(-epsa-dE).R_3(-psib-dP).R_1(phib).R_3(gamb)

where dP and dE are the nutation components with respect to the ecliptic of date.

Reference:

Hilton, J. et al., 2006, Celest.Mech.Dyn.Astron. 94, 351

Here is the call graph for this function:

◆ iauPr00()

void iauPr00 ( double  date1,
double  date2,
double *  dpsipr,
double *  depspr 
)

Precession-rate part of the IAU 2000 models.

Precession-rate part of the IAU 2000 precession-nutation models (part of MHB2000).

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
[out]dpsipr,depsprprecession corrections (Notes 2,3)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The precession adjustments are expressed as "nutation components", corrections in longitude and obliquity with respect to the J2000.0 equinox and ecliptic.

3) Although the precession adjustments are stated to be with respect to Lieske et al. (1977), the MHB2000 model does not specify which set of Euler angles are to be used and how the adjustments are to be applied. The most literal and straightforward procedure is to adopt the 4-rotation epsilon_0, psi_A, omega_A, xi_A option, and to add dpsipr to psi_A and depspr to both omega_A and eps_A.

4) This is an implementation of one aspect of the IAU 2000A nutation model, formally adopted by the IAU General Assembly in 2000, namely MHB2000 (Mathews et al. 2002).

References:

Lieske, J.H., Lederle, T., Fricke, W. & Morando, B., "Expressions for the precession quantities based upon the IAU (1976) System of Astronomical Constants", Astron.Astrophys., 58, 1-16 (1977)

Mathews, P.M., Herring, T.A., Buffet, B.A., "Modeling of nutation and precession New nutation series for nonrigid Earth and insights into the Earth's interior", J.Geophys.Res., 107, B4,

  1. The MHB2000 code itself was obtained on 9th September 2002 from ftp://maia.usno.navy.mil/conv2000/chapter5/IAU2000A.

Wallace, P.T., "Software for Implementing the IAU 2000 Resolutions", in IERS Workshop 5.1 (2002).

◆ iauPrec76()

void iauPrec76 ( double  date01,
double  date02,
double  date11,
double  date12,
double *  zeta,
double *  z,
double *  theta 
)

IAU 1976 precession model.

This function forms the three Euler angles which implement general precession between two dates, using the IAU 1976 model (as for the FK5 catalog).

Parameters
[in]date01,date02TDB starting date (Note 1)
[in]date11,date12TDB ending date (Note 1)
[out]zeta1st rotation: radians cw around z
[out]z3rd rotation: radians cw around z
[out]theta2nd rotation: radians ccw around y

Notes:

1) The dates date01+date02 and date11+date12 are Julian Dates, apportioned in any convenient way between the arguments daten1 and daten2. For example, JD(TDB)=2450123.7 could be expressed in any of these ways, among others:

  daten1        daten2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience. The two dates may be expressed using different methods, but at the risk of losing some resolution.

2) The accumulated precession angles zeta, z, theta are expressed through canonical polynomials which are valid only for a limited time span. In addition, the IAU 1976 precession rate is known to be imperfect. The absolute accuracy of the present formulation is better than 0.1 arcsec from 1960AD to 2040AD, better than 1 arcsec from 1640AD to 2360AD, and remains below 3 arcsec for the whole of the period 500BC to 3000AD. The errors exceed 10 arcsec outside the range 1200BC to 3900AD, exceed 100 arcsec outside 4200BC to 5600AD and exceed 1000 arcsec outside 6800BC to 8200AD.

3) The three angles are returned in the conventional order, which is not the same as the order of the corresponding Euler rotations. The precession matrix is R_3(-z) x R_2(+theta) x R_3(-zeta).

Reference:

Lieske, J.H., 1979, Astron.Astrophys. 73, 282, equations (6) & (7), p283.

◆ iauS00()

double iauS00 ( double  date1,
double  date2,
double  x,
double  y 
)

The CIO locators given CIP coordinates.

The CIO locator s, positioning the Celestial Intermediate Origin on the equator of the Celestial Intermediate Pole, given the CIP's X,Y coordinates. Compatible with IAU 2000A precession-nutation.

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
[in]x,yCIP coordinates (Note 3)
Returns
the CIO locator s in radians (Note 2)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The CIO locator s is the difference between the right ascensions of the same point in two systems: the two systems are the GCRS and the CIP,CIO, and the point is the ascending node of the CIP equator. The quantity s remains below 0.1 arcsecond throughout 1900-2100.

3) The series used to compute s is in fact for s+XY/2, where X and Y are the x and y components of the CIP unit vector; this series is more compact than a direct series for s would be. This function requires X,Y to be supplied by the caller, who is responsible for providing values that are consistent with the supplied date.

4) The model is consistent with the IAU 2000A precession-nutation.

References:

Capitaine, N., Chapront, J., Lambert, S. and Wallace, P., "Expressions for the Celestial Intermediate Pole and Celestial Ephemeris Origin consistent with the IAU 2000A precession- nutation model", Astron.Astrophys. 400, 1145-1154 (2003)

n.b. The celestial ephemeris origin (CEO) was renamed "celestial intermediate origin" (CIO) by IAU 2006 Resolution 2.

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

Here is the call graph for this function:

◆ iauS06()

double iauS06 ( double  date1,
double  date2,
double  x,
double  y 
)

The CIO locator given CIP coordinates.

The CIO locator s, positioning the Celestial Intermediate Origin on the equator of the Celestial Intermediate Pole, given the CIP's X,Y coordinates. Compatible with IAU 2006/2000A precession-nutation.

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
[in]x,yCIP coordinates (Note 3)
Returns
the CIO locator s in radians (Note 2)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The CIO locator s is the difference between the right ascensions of the same point in two systems: the two systems are the GCRS and the CIP,CIO, and the point is the ascending node of the CIP equator. The quantity s remains below 0.1 arcsecond throughout 1900-2100.

3) The series used to compute s is in fact for s+XY/2, where X and Y are the x and y components of the CIP unit vector; this series is more compact than a direct series for s would be. This function requires X,Y to be supplied by the caller, who is responsible for providing values that are consistent with the supplied date.

4) The model is consistent with the "P03" precession (Capitaine et al. 2003), adopted by IAU 2006 Resolution 1, 2006, and the IAU 2000A nutation (with P03 adjustments).

References:

Capitaine, N., Wallace, P.T. & Chapront, J., 2003, Astron. Astrophys. 432, 355

McCarthy, D.D., Petit, G. (eds.) 2004, IERS Conventions (2003), IERS Technical Note No. 32, BKG

Here is the call graph for this function:

◆ iauSp00()

double iauSp00 ( double  date1,
double  date2 
)

The TIO locator.

The TIO locator s', positioning the Terrestrial Intermediate Origin on the equator of the Celestial Intermediate Pole.

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
Returns
the TIO locator s' in radians (Note 2)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The TIO locator s' is obtained from polar motion observations by numerical integration, and so is in essence unpredictable. However, it is dominated by a secular drift of about 47 microarcseconds per century, which is the approximation evaluated by the present function.

Reference:

McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003), IERS Technical Note No. 32, BKG (2004)

◆ iauXy06()

void iauXy06 ( double  date1,
double  date2,
double *  x,
double *  y 
)

X,Y coordinates of celestial intermediate pole.

X,Y coordinates of celestial intermediate pole from series based on IAU 2006 precession and IAU 2000A nutation.

Parameters
[in]date1,date2TT as a 2-part Julian Date (Note 1)
[out]x,yCIP X,Y coordinates (Note 2)

Notes:

1) The TT date date1+date2 is a Julian Date, apportioned in any convenient way between the two arguments. For example, JD(TT)=2450123.7 could be expressed in any of these ways, among others:

   date1          date2

2450123.7           0.0       (JD method)
2451545.0       -1421.3       (J2000 method)
2400000.5       50123.2       (MJD method)
2450123.5           0.2       (date & time method)

The JD method is the most natural and convenient to use in cases where the loss of several decimal digits of resolution is acceptable. The J2000 method is best matched to the way the argument is handled internally and will deliver the optimum resolution. The MJD method and the date & time methods are both good compromises between resolution and convenience.

2) The X,Y coordinates are those of the unit vector towards the celestial intermediate pole. They represent the combined effects of frame bias, precession and nutation.

3) The fundamental arguments used are as adopted in IERS Conventions (2003) and are from Simon et al. (1994) and Souchay et al. (1999).

4) This is an alternative to the angles-based method, via the SOFA function iauFw2xy and as used in iauXys06a for example. The two methods agree at the 1 microarcsecond level (at present), a negligible amount compared with the intrinsic accuracy of the models. However, it would be unwise to mix the two methods (angles-based and series-based) in a single application.

References:

Capitaine, N., Wallace, P.T. & Chapront, J., 2003, Astron.Astrophys., 412, 567

Capitaine, N. & Wallace, P.T., 2006, Astron.Astrophys. 450, 855

McCarthy, D. D., Petit, G. (eds.), 2004, IERS Conventions (2003), IERS Technical Note No. 32, BKG

Simon, J.L., Bretagnon, P., Chapront, J., Chapront-Touze, M., Francou, G. & Laskar, J., Astron.Astrophys., 1994, 282, 663

Souchay, J., Loysel, B., Kinoshita, H., Folgueira, M., 1999, Astron.Astrophys.Supp.Ser. 135, 111

Wallace, P.T. & Capitaine, N., 2006, Astron.Astrophys. 459, 981

Here is the call graph for this function: