File Coverage

erfasrc/src/gst00b.c
Criterion Covered Total %
statement 0 5 0.0
branch n/a
condition n/a
subroutine n/a
pod n/a
total 0 5 0.0


line stmt bran cond sub pod time code
1             #include "erfa.h"
2              
3 0           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-2019, 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              
87 0           gmst00 = eraGmst00(uta, utb, uta, utb);
88 0           ee00b = eraEe00b(uta, utb);
89 0           gst = eraAnp(gmst00 + ee00b);
90              
91 0           return gst;
92              
93             }
94             /*----------------------------------------------------------------------
95             **
96             **
97             ** Copyright (C) 2013-2019, NumFOCUS Foundation.
98             ** All rights reserved.
99             **
100             ** This library is derived, with permission, from the International
101             ** Astronomical Union's "Standards of Fundamental Astronomy" library,
102             ** available from http://www.iausofa.org.
103             **
104             ** The ERFA version is intended to retain identical functionality to
105             ** the SOFA library, but made distinct through different function and
106             ** file names, as set out in the SOFA license conditions. The SOFA
107             ** original has a role as a reference standard for the IAU and IERS,
108             ** and consequently redistribution is permitted only in its unaltered
109             ** state. The ERFA version is not subject to this restriction and
110             ** therefore can be included in distributions which do not support the
111             ** concept of "read only" software.
112             **
113             ** Although the intent is to replicate the SOFA API (other than
114             ** replacement of prefix names) and results (with the exception of
115             ** bugs; any that are discovered will be fixed), SOFA is not
116             ** responsible for any errors found in this version of the library.
117             **
118             ** If you wish to acknowledge the SOFA heritage, please acknowledge
119             ** that you are using a library derived from SOFA, rather than SOFA
120             ** itself.
121             **
122             **
123             ** TERMS AND CONDITIONS
124             **
125             ** Redistribution and use in source and binary forms, with or without
126             ** modification, are permitted provided that the following conditions
127             ** are met:
128             **
129             ** 1 Redistributions of source code must retain the above copyright
130             ** notice, this list of conditions and the following disclaimer.
131             **
132             ** 2 Redistributions in binary form must reproduce the above copyright
133             ** notice, this list of conditions and the following disclaimer in
134             ** the documentation and/or other materials provided with the
135             ** distribution.
136             **
137             ** 3 Neither the name of the Standards Of Fundamental Astronomy Board,
138             ** the International Astronomical Union nor the names of its
139             ** contributors may be used to endorse or promote products derived
140             ** from this software without specific prior written permission.
141             **
142             ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
143             ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
144             ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
145             ** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
146             ** COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
147             ** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
148             ** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
149             ** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
150             ** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
151             ** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
152             ** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
153             ** POSSIBILITY OF SUCH DAMAGE.
154             **
155             */