source: trunk/FACT++/erfa/src/c2teqx.c@ 18403

Last change on this file since 18403 was 18348, checked in by tbretz, 9 years ago
File size: 5.1 KB
Line 
1#include "erfa.h"
2
3void eraC2teqx(double rbpn[3][3], double gst, double rpom[3][3],
4 double rc2t[3][3])
5/*
6** - - - - - - - - - -
7** e r a C 2 t e q x
8** - - - - - - - - - -
9**
10** Assemble the celestial to terrestrial matrix from equinox-based
11** components (the celestial-to-true matrix, the Greenwich Apparent
12** Sidereal Time and the polar motion matrix).
13**
14** Given:
15** rbpn double[3][3] celestial-to-true matrix
16** gst double Greenwich (apparent) Sidereal Time (radians)
17** rpom double[3][3] polar-motion matrix
18**
19** Returned:
20** rc2t double[3][3] celestial-to-terrestrial matrix (Note 2)
21**
22** Notes:
23**
24** 1) This function constructs the rotation matrix that transforms
25** vectors in the celestial system into vectors in the terrestrial
26** system. It does so starting from precomputed components, namely
27** the matrix which rotates from celestial coordinates to the
28** true equator and equinox of date, the Greenwich Apparent Sidereal
29** Time and the polar motion matrix. One use of the present function
30** is when generating a series of celestial-to-terrestrial matrices
31** where only the Sidereal Time changes, avoiding the considerable
32** overhead of recomputing the precession-nutation more often than
33** necessary to achieve given accuracy objectives.
34**
35** 2) The relationship between the arguments is as follows:
36**
37** [TRS] = rpom * R_3(gst) * rbpn * [CRS]
38**
39** = rc2t * [CRS]
40**
41** where [CRS] is a vector in the Geocentric Celestial Reference
42** System and [TRS] is a vector in the International Terrestrial
43** Reference System (see IERS Conventions 2003).
44**
45** Called:
46** eraCr copy r-matrix
47** eraRz rotate around Z-axis
48** eraRxr product of two r-matrices
49**
50** Reference:
51**
52** McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003),
53** IERS Technical Note No. 32, BKG (2004)
54**
55** Copyright (C) 2013-2015, NumFOCUS Foundation.
56** Derived, with permission, from the SOFA library. See notes at end of file.
57*/
58{
59 double r[3][3];
60
61/* Construct the matrix. */
62 eraCr(rbpn, r);
63 eraRz(gst, r);
64 eraRxr(rpom, r, rc2t);
65
66 return;
67
68}
69/*----------------------------------------------------------------------
70**
71**
72** Copyright (C) 2013-2015, NumFOCUS Foundation.
73** All rights reserved.
74**
75** This library is derived, with permission, from the International
76** Astronomical Union's "Standards of Fundamental Astronomy" library,
77** available from http://www.iausofa.org.
78**
79** The ERFA version is intended to retain identical functionality to
80** the SOFA library, but made distinct through different function and
81** file names, as set out in the SOFA license conditions. The SOFA
82** original has a role as a reference standard for the IAU and IERS,
83** and consequently redistribution is permitted only in its unaltered
84** state. The ERFA version is not subject to this restriction and
85** therefore can be included in distributions which do not support the
86** concept of "read only" software.
87**
88** Although the intent is to replicate the SOFA API (other than
89** replacement of prefix names) and results (with the exception of
90** bugs; any that are discovered will be fixed), SOFA is not
91** responsible for any errors found in this version of the library.
92**
93** If you wish to acknowledge the SOFA heritage, please acknowledge
94** that you are using a library derived from SOFA, rather than SOFA
95** itself.
96**
97**
98** TERMS AND CONDITIONS
99**
100** Redistribution and use in source and binary forms, with or without
101** modification, are permitted provided that the following conditions
102** are met:
103**
104** 1 Redistributions of source code must retain the above copyright
105** notice, this list of conditions and the following disclaimer.
106**
107** 2 Redistributions in binary form must reproduce the above copyright
108** notice, this list of conditions and the following disclaimer in
109** the documentation and/or other materials provided with the
110** distribution.
111**
112** 3 Neither the name of the Standards Of Fundamental Astronomy Board,
113** the International Astronomical Union nor the names of its
114** contributors may be used to endorse or promote products derived
115** from this software without specific prior written permission.
116**
117** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
118** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
119** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
120** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
121** COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
122** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
123** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
124** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
125** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
126** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
127** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
128** POSSIBILITY OF SUCH DAMAGE.
129**
130*/
Note: See TracBrowser for help on using the repository browser.