FACT++  1.0
pnm06a.c
Go to the documentation of this file.
1 #include "erfa.h"
2 
3 void eraPnm06a(double date1, double date2, double rnpb[3][3])
4 /*
5 ** - - - - - - - - - -
6 ** e r a P n m 0 6 a
7 ** - - - - - - - - - -
8 **
9 ** Form the matrix of precession-nutation for a given date (including
10 ** frame bias), IAU 2006 precession and IAU 2000A nutation models.
11 **
12 ** Given:
13 ** date1,date2 double TT as a 2-part Julian Date (Note 1)
14 **
15 ** Returned:
16 ** rnpb double[3][3] bias-precession-nutation matrix (Note 2)
17 **
18 ** Notes:
19 **
20 ** 1) The TT date date1+date2 is a Julian Date, apportioned in any
21 ** convenient way between the two arguments. For example,
22 ** JD(TT)=2450123.7 could be expressed in any of these ways,
23 ** among others:
24 **
25 ** date1 date2
26 **
27 ** 2450123.7 0.0 (JD method)
28 ** 2451545.0 -1421.3 (J2000 method)
29 ** 2400000.5 50123.2 (MJD method)
30 ** 2450123.5 0.2 (date & time method)
31 **
32 ** The JD method is the most natural and convenient to use in
33 ** cases where the loss of several decimal digits of resolution
34 ** is acceptable. The J2000 method is best matched to the way
35 ** the argument is handled internally and will deliver the
36 ** optimum resolution. The MJD method and the date & time methods
37 ** are both good compromises between resolution and convenience.
38 **
39 ** 2) The matrix operates in the sense V(date) = rnpb * V(GCRS), where
40 ** the p-vector V(date) is with respect to the true equatorial triad
41 ** of date date1+date2 and the p-vector V(GCRS) is with respect to
42 ** the Geocentric Celestial Reference System (IAU, 2000).
43 **
44 ** Called:
45 ** eraPfw06 bias-precession F-W angles, IAU 2006
46 ** eraNut06a nutation, IAU 2006/2000A
47 ** eraFw2m F-W angles to r-matrix
48 **
49 ** Reference:
50 **
51 ** Capitaine, N. & Wallace, P.T., 2006, Astron.Astrophys. 450, 855.
52 **
53 ** Copyright (C) 2013-2015, NumFOCUS Foundation.
54 ** Derived, with permission, from the SOFA library. See notes at end of file.
55 */
56 {
57  double gamb, phib, psib, epsa, dp, de;
58 
59 /* Fukushima-Williams angles for frame bias and precession. */
60  eraPfw06(date1, date2, &gamb, &phib, &psib, &epsa);
61 
62 /* Nutation components. */
63  eraNut06a(date1, date2, &dp, &de);
64 
65 /* Equinox based nutation x precession x bias matrix. */
66  eraFw2m(gamb, phib, psib + dp, epsa + de, rnpb);
67 
68  return;
69 
70 }
71 /*----------------------------------------------------------------------
72 **
73 **
74 ** Copyright (C) 2013-2015, NumFOCUS Foundation.
75 ** All rights reserved.
76 **
77 ** This library is derived, with permission, from the International
78 ** Astronomical Union's "Standards of Fundamental Astronomy" library,
79 ** available from http://www.iausofa.org.
80 **
81 ** The ERFA version is intended to retain identical functionality to
82 ** the SOFA library, but made distinct through different function and
83 ** file names, as set out in the SOFA license conditions. The SOFA
84 ** original has a role as a reference standard for the IAU and IERS,
85 ** and consequently redistribution is permitted only in its unaltered
86 ** state. The ERFA version is not subject to this restriction and
87 ** therefore can be included in distributions which do not support the
88 ** concept of "read only" software.
89 **
90 ** Although the intent is to replicate the SOFA API (other than
91 ** replacement of prefix names) and results (with the exception of
92 ** bugs; any that are discovered will be fixed), SOFA is not
93 ** responsible for any errors found in this version of the library.
94 **
95 ** If you wish to acknowledge the SOFA heritage, please acknowledge
96 ** that you are using a library derived from SOFA, rather than SOFA
97 ** itself.
98 **
99 **
100 ** TERMS AND CONDITIONS
101 **
102 ** Redistribution and use in source and binary forms, with or without
103 ** modification, are permitted provided that the following conditions
104 ** are met:
105 **
106 ** 1 Redistributions of source code must retain the above copyright
107 ** notice, this list of conditions and the following disclaimer.
108 **
109 ** 2 Redistributions in binary form must reproduce the above copyright
110 ** notice, this list of conditions and the following disclaimer in
111 ** the documentation and/or other materials provided with the
112 ** distribution.
113 **
114 ** 3 Neither the name of the Standards Of Fundamental Astronomy Board,
115 ** the International Astronomical Union nor the names of its
116 ** contributors may be used to endorse or promote products derived
117 ** from this software without specific prior written permission.
118 **
119 ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
120 ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
121 ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
122 ** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
123 ** COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
124 ** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
125 ** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
126 ** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
127 ** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
128 ** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
129 ** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
130 ** POSSIBILITY OF SUCH DAMAGE.
131 **
132 */
void eraPfw06(double date1, double date2, double *gamb, double *phib, double *psib, double *epsa)
Definition: pfw06.c:3
void eraFw2m(double gamb, double phib, double psi, double eps, double r[3][3])
Definition: fw2m.c:3
void eraNut06a(double date1, double date2, double *dpsi, double *deps)
Definition: nut06a.c:3
void eraPnm06a(double date1, double date2, double rnpb[3][3])
Definition: pnm06a.c:3