FACT++  1.0
gst00b.c
Go to the documentation of this file.
1 #include "erfa.h"
2 
3 double eraGst00b(double uta, double utb)
4 /*
5 ** - - - - - - - - - -
6 ** e r a G s t 0 0 b
7 ** - - - - - - - - - -
8 **
9 ** Greenwich apparent sidereal time (consistent with IAU 2000
10 ** resolutions but using the truncated nutation model IAU 2000B).
11 **
12 ** Given:
13 ** uta,utb double UT1 as a 2-part Julian Date (Notes 1,2)
14 **
15 ** Returned (function value):
16 ** double Greenwich apparent sidereal time (radians)
17 **
18 ** Notes:
19 **
20 ** 1) The UT1 date uta+utb is a Julian Date, apportioned in any
21 ** convenient way between the argument pair. For example,
22 ** JD=2450123.7 could be expressed in any of these ways, among
23 ** others:
24 **
25 ** uta utb
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 cases
33 ** where the loss of several decimal digits of resolution is
34 ** acceptable. The J2000 and MJD methods are good compromises
35 ** between resolution and convenience. For UT, the date & time
36 ** method is best matched to the algorithm that is used by the Earth
37 ** Rotation Angle function, called internally: maximum precision is
38 ** delivered when the uta argument is for 0hrs UT1 on the day in
39 ** question and the utb argument lies in the range 0 to 1, or vice
40 ** versa.
41 **
42 ** 2) The result is compatible with the IAU 2000 resolutions, except
43 ** that accuracy has been compromised for the sake of speed and
44 ** convenience in two respects:
45 **
46 ** . UT is used instead of TDB (or TT) to compute the precession
47 ** component of GMST and the equation of the equinoxes. This
48 ** results in errors of order 0.1 mas at present.
49 **
50 ** . The IAU 2000B abridged nutation model (McCarthy & Luzum, 2001)
51 ** is used, introducing errors of up to 1 mas.
52 **
53 ** 3) This GAST is compatible with the IAU 2000 resolutions and must be
54 ** used only in conjunction with other IAU 2000 compatible
55 ** components such as precession-nutation.
56 **
57 ** 4) The result is returned in the range 0 to 2pi.
58 **
59 ** 5) The algorithm is from Capitaine et al. (2003) and IERS
60 ** Conventions 2003.
61 **
62 ** Called:
63 ** eraGmst00 Greenwich mean sidereal time, IAU 2000
64 ** eraEe00b equation of the equinoxes, IAU 2000B
65 ** eraAnp normalize angle into range 0 to 2pi
66 **
67 ** References:
68 **
69 ** Capitaine, N., Wallace, P.T. and McCarthy, D.D., "Expressions to
70 ** implement the IAU 2000 definition of UT1", Astronomy &
71 ** Astrophysics, 406, 1135-1149 (2003)
72 **
73 ** McCarthy, D.D. & Luzum, B.J., "An abridged model of the
74 ** precession-nutation of the celestial pole", Celestial Mechanics &
75 ** Dynamical Astronomy, 85, 37-49 (2003)
76 **
77 ** McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003),
78 ** IERS Technical Note No. 32, BKG (2004)
79 **
80 ** Copyright (C) 2013-2015, NumFOCUS Foundation.
81 ** Derived, with permission, from the SOFA library. See notes at end of file.
82 */
83 {
84  double gmst00, ee00b, gst;
85 
86  gmst00 = eraGmst00(uta, utb, uta, utb);
87  ee00b = eraEe00b(uta, utb);
88  gst = eraAnp(gmst00 + ee00b);
89 
90  return gst;
91 
92 }
93 /*----------------------------------------------------------------------
94 **
95 **
96 ** Copyright (C) 2013-2015, NumFOCUS Foundation.
97 ** All rights reserved.
98 **
99 ** This library is derived, with permission, from the International
100 ** Astronomical Union's "Standards of Fundamental Astronomy" library,
101 ** available from http://www.iausofa.org.
102 **
103 ** The ERFA version is intended to retain identical functionality to
104 ** the SOFA library, but made distinct through different function and
105 ** file names, as set out in the SOFA license conditions. The SOFA
106 ** original has a role as a reference standard for the IAU and IERS,
107 ** and consequently redistribution is permitted only in its unaltered
108 ** state. The ERFA version is not subject to this restriction and
109 ** therefore can be included in distributions which do not support the
110 ** concept of "read only" software.
111 **
112 ** Although the intent is to replicate the SOFA API (other than
113 ** replacement of prefix names) and results (with the exception of
114 ** bugs; any that are discovered will be fixed), SOFA is not
115 ** responsible for any errors found in this version of the library.
116 **
117 ** If you wish to acknowledge the SOFA heritage, please acknowledge
118 ** that you are using a library derived from SOFA, rather than SOFA
119 ** itself.
120 **
121 **
122 ** TERMS AND CONDITIONS
123 **
124 ** Redistribution and use in source and binary forms, with or without
125 ** modification, are permitted provided that the following conditions
126 ** are met:
127 **
128 ** 1 Redistributions of source code must retain the above copyright
129 ** notice, this list of conditions and the following disclaimer.
130 **
131 ** 2 Redistributions in binary form must reproduce the above copyright
132 ** notice, this list of conditions and the following disclaimer in
133 ** the documentation and/or other materials provided with the
134 ** distribution.
135 **
136 ** 3 Neither the name of the Standards Of Fundamental Astronomy Board,
137 ** the International Astronomical Union nor the names of its
138 ** contributors may be used to endorse or promote products derived
139 ** from this software without specific prior written permission.
140 **
141 ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
142 ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
143 ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
144 ** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
145 ** COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
146 ** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
147 ** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
148 ** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
149 ** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
150 ** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
151 ** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
152 ** POSSIBILITY OF SUCH DAMAGE.
153 **
154 */
double eraGmst00(double uta, double utb, double tta, double ttb)
Definition: gmst00.c:3
double eraEe00b(double date1, double date2)
Definition: ee00b.c:3
double eraGst00b(double uta, double utb)
Definition: gst00b.c:3
double eraAnp(double a)
Definition: anp.c:3