Astro-PAL
view release on metacpan or search on metacpan
erfasrc/src/p06e.c view on Meta::CPAN
** used in other ERFA functions:
**
** . eraXy06 contains the polynomial parts of the X and Y series.
**
** . eraS06 contains the polynomial part of the s+XY/2 series.
**
** . eraPfw06 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 ERFA is the version of the Fukushima-
** Williams angles that refers directly to the GCRS pole. These
** angles may be calculated by calling the function eraPfw06. ERFA
** also supports the direct computation of the CIP GCRS X,Y by
** series, available by calling eraXy06.
**
** 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.
**
** References:
**
** Capitaine, N., Wallace, P.T. & Chapront, J., 2003,
** Astron.Astrophys., 412, 567
**
** Hilton, J. et al., 2006, Celest.Mech.Dyn.Astron. 94, 351
**
** Called:
** eraObl06 mean obliquity, IAU 2006
**
** Copyright (C) 2013-2020, NumFOCUS Foundation.
** Derived, with permission, from the SOFA library. See notes at end of file.
*/
{
double t;
/* Interval between fundamental date J2000.0 and given date (JC). */
t = ((date1 - ERFA_DJ00) + date2) / ERFA_DJC;
/* Obliquity at J2000.0. */
*eps0 = 84381.406 * ERFA_DAS2R;
/* Luni-solar precession. */
*psia = ( 5038.481507 +
( -1.0790069 +
( -0.00114045 +
( 0.000132851 +
( -0.0000000951 )
* t) * t) * t) * t) * t * ERFA_DAS2R;
/* Inclination of mean equator with respect to the J2000.0 ecliptic. */
*oma = *eps0 + ( -0.025754 +
( 0.0512623 +
( -0.00772503 +
( -0.000000467 +
( 0.0000003337 )
* t) * t) * t) * t) * t * ERFA_DAS2R;
/* Ecliptic pole x, J2000.0 ecliptic triad. */
*bpa = ( 4.199094 +
( 0.1939873 +
( -0.00022466 +
( -0.000000912 +
( 0.0000000120 )
* t) * t) * t) * t) * t * ERFA_DAS2R;
/* Ecliptic pole -y, J2000.0 ecliptic triad. */
*bqa = ( -46.811015 +
( 0.0510283 +
( 0.00052413 +
( -0.000000646 +
( -0.0000000172 )
* t) * t) * t) * t) * t * ERFA_DAS2R;
/* Angle between moving and J2000.0 ecliptics. */
*pia = ( 46.998973 +
( -0.0334926 +
( -0.00012559 +
( 0.000000113 +
( -0.0000000022 )
* t) * t) * t) * t) * t * ERFA_DAS2R;
/* Longitude of ascending node of the moving ecliptic. */
*bpia = ( 629546.7936 +
( -867.95758 +
( 0.157992 +
( -0.0005371 +
( -0.00004797 +
( 0.000000072 )
* t) * t) * t) * t) * t) * ERFA_DAS2R;
/* Mean obliquity of the ecliptic. */
*epsa = eraObl06(date1, date2);
/* Planetary precession. */
*chia = ( 10.556403 +
( -2.3814292 +
( -0.00121197 +
( 0.000170663 +
( run in 0.908 second using v1.01-cache-2.11-cpan-39bf76dae61 )