FACT++  1.0
gst94.c
Go to the documentation of this file.
1 #include "erfa.h"
2 
3 double eraGst94(double uta, double utb)
4 /*
5 ** - - - - - - - - -
6 ** e r a G s t 9 4
7 ** - - - - - - - - -
8 **
9 ** Greenwich apparent sidereal time (consistent with IAU 1982/94
10 ** resolutions).
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 1982 and 1994 resolutions,
43 ** except that accuracy has been compromised for the sake of
44 ** convenience in that UT is used instead of TDB (or TT) to compute
45 ** the equation of the equinoxes.
46 **
47 ** 3) This GAST must be used only in conjunction with contemporaneous
48 ** IAU standards such as 1976 precession, 1980 obliquity and 1982
49 ** nutation. It is not compatible with the IAU 2000 resolutions.
50 **
51 ** 4) The result is returned in the range 0 to 2pi.
52 **
53 ** Called:
54 ** eraGmst82 Greenwich mean sidereal time, IAU 1982
55 ** eraEqeq94 equation of the equinoxes, IAU 1994
56 ** eraAnp normalize angle into range 0 to 2pi
57 **
58 ** References:
59 **
60 ** Explanatory Supplement to the Astronomical Almanac,
61 ** P. Kenneth Seidelmann (ed), University Science Books (1992)
62 **
63 ** IAU Resolution C7, Recommendation 3 (1994)
64 **
65 ** Copyright (C) 2013-2015, NumFOCUS Foundation.
66 ** Derived, with permission, from the SOFA library. See notes at end of file.
67 */
68 {
69  double gmst82, eqeq94, gst;
70 
71  gmst82 = eraGmst82(uta, utb);
72  eqeq94 = eraEqeq94(uta, utb);
73  gst = eraAnp(gmst82 + eqeq94);
74 
75  return gst;
76 
77 }
78 /*----------------------------------------------------------------------
79 **
80 **
81 ** Copyright (C) 2013-2015, NumFOCUS Foundation.
82 ** All rights reserved.
83 **
84 ** This library is derived, with permission, from the International
85 ** Astronomical Union's "Standards of Fundamental Astronomy" library,
86 ** available from http://www.iausofa.org.
87 **
88 ** The ERFA version is intended to retain identical functionality to
89 ** the SOFA library, but made distinct through different function and
90 ** file names, as set out in the SOFA license conditions. The SOFA
91 ** original has a role as a reference standard for the IAU and IERS,
92 ** and consequently redistribution is permitted only in its unaltered
93 ** state. The ERFA version is not subject to this restriction and
94 ** therefore can be included in distributions which do not support the
95 ** concept of "read only" software.
96 **
97 ** Although the intent is to replicate the SOFA API (other than
98 ** replacement of prefix names) and results (with the exception of
99 ** bugs; any that are discovered will be fixed), SOFA is not
100 ** responsible for any errors found in this version of the library.
101 **
102 ** If you wish to acknowledge the SOFA heritage, please acknowledge
103 ** that you are using a library derived from SOFA, rather than SOFA
104 ** itself.
105 **
106 **
107 ** TERMS AND CONDITIONS
108 **
109 ** Redistribution and use in source and binary forms, with or without
110 ** modification, are permitted provided that the following conditions
111 ** are met:
112 **
113 ** 1 Redistributions of source code must retain the above copyright
114 ** notice, this list of conditions and the following disclaimer.
115 **
116 ** 2 Redistributions in binary form must reproduce the above copyright
117 ** notice, this list of conditions and the following disclaimer in
118 ** the documentation and/or other materials provided with the
119 ** distribution.
120 **
121 ** 3 Neither the name of the Standards Of Fundamental Astronomy Board,
122 ** the International Astronomical Union nor the names of its
123 ** contributors may be used to endorse or promote products derived
124 ** from this software without specific prior written permission.
125 **
126 ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
127 ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
128 ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
129 ** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
130 ** COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
131 ** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
132 ** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
133 ** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
134 ** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
135 ** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
136 ** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
137 ** POSSIBILITY OF SUCH DAMAGE.
138 **
139 */
double eraGst94(double uta, double utb)
Definition: gst94.c:3
double eraGmst82(double dj1, double dj2)
Definition: gmst82.c:3
double eraEqeq94(double date1, double date2)
Definition: eqeq94.c:3
double eraAnp(double a)
Definition: anp.c:3