FACT++
1.0
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
era00.c
Go to the documentation of this file.
1
#include "
erfa.h
"
2
3
double
eraEra00
(
double
dj1,
double
dj2)
4
/*
5
** - - - - - - - - -
6
** e r a E r a 0 0
7
** - - - - - - - - -
8
**
9
** Earth rotation angle (IAU 2000 model).
10
**
11
** Given:
12
** dj1,dj2 double UT1 as a 2-part Julian Date (see note)
13
**
14
** Returned (function value):
15
** double Earth rotation angle (radians), range 0-2pi
16
**
17
** Notes:
18
**
19
** 1) The UT1 date dj1+dj2 is a Julian Date, apportioned in any
20
** convenient way between the arguments dj1 and dj2. For example,
21
** JD(UT1)=2450123.7 could be expressed in any of these ways,
22
** among others:
23
**
24
** dj1 dj2
25
**
26
** 2450123.7 0.0 (JD method)
27
** 2451545.0 -1421.3 (J2000 method)
28
** 2400000.5 50123.2 (MJD method)
29
** 2450123.5 0.2 (date & time method)
30
**
31
** The JD method is the most natural and convenient to use in
32
** cases where the loss of several decimal digits of resolution
33
** is acceptable. The J2000 and MJD methods are good compromises
34
** between resolution and convenience. The date & time method is
35
** best matched to the algorithm used: maximum precision is
36
** delivered when the dj1 argument is for 0hrs UT1 on the day in
37
** question and the dj2 argument lies in the range 0 to 1, or vice
38
** versa.
39
**
40
** 2) The algorithm is adapted from Expression 22 of Capitaine et al.
41
** 2000. The time argument has been expressed in days directly,
42
** and, to retain precision, integer contributions have been
43
** eliminated. The same formulation is given in IERS Conventions
44
** (2003), Chap. 5, Eq. 14.
45
**
46
** Called:
47
** eraAnp normalize angle into range 0 to 2pi
48
**
49
** References:
50
**
51
** Capitaine N., Guinot B. and McCarthy D.D, 2000, Astron.
52
** Astrophys., 355, 398-405.
53
**
54
** McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003),
55
** IERS Technical Note No. 32, BKG (2004)
56
**
57
** Copyright (C) 2013-2015, NumFOCUS Foundation.
58
** Derived, with permission, from the SOFA library. See notes at end of file.
59
*/
60
{
61
double
d1, d2,
t
, f, theta;
62
63
/* Days since fundamental epoch. */
64
if
(dj1 < dj2) {
65
d1 = dj1;
66
d2 = dj2;
67
}
else
{
68
d1 = dj2;
69
d2 = dj1;
70
}
71
t = d1 + (d2-
ERFA_DJ00
);
72
73
/* Fractional part of T (days). */
74
f = fmod(d1, 1.0) + fmod(d2, 1.0);
75
76
/* Earth rotation angle at this UT1. */
77
theta =
eraAnp
(
ERFA_D2PI
* (f + 0.7790572732640
78
+ 0.00273781191135448 * t));
79
80
return
theta;
81
82
}
83
/*----------------------------------------------------------------------
84
**
85
**
86
** Copyright (C) 2013-2015, NumFOCUS Foundation.
87
** All rights reserved.
88
**
89
** This library is derived, with permission, from the International
90
** Astronomical Union's "Standards of Fundamental Astronomy" library,
91
** available from http://www.iausofa.org.
92
**
93
** The ERFA version is intended to retain identical functionality to
94
** the SOFA library, but made distinct through different function and
95
** file names, as set out in the SOFA license conditions. The SOFA
96
** original has a role as a reference standard for the IAU and IERS,
97
** and consequently redistribution is permitted only in its unaltered
98
** state. The ERFA version is not subject to this restriction and
99
** therefore can be included in distributions which do not support the
100
** concept of "read only" software.
101
**
102
** Although the intent is to replicate the SOFA API (other than
103
** replacement of prefix names) and results (with the exception of
104
** bugs; any that are discovered will be fixed), SOFA is not
105
** responsible for any errors found in this version of the library.
106
**
107
** If you wish to acknowledge the SOFA heritage, please acknowledge
108
** that you are using a library derived from SOFA, rather than SOFA
109
** itself.
110
**
111
**
112
** TERMS AND CONDITIONS
113
**
114
** Redistribution and use in source and binary forms, with or without
115
** modification, are permitted provided that the following conditions
116
** are met:
117
**
118
** 1 Redistributions of source code must retain the above copyright
119
** notice, this list of conditions and the following disclaimer.
120
**
121
** 2 Redistributions in binary form must reproduce the above copyright
122
** notice, this list of conditions and the following disclaimer in
123
** the documentation and/or other materials provided with the
124
** distribution.
125
**
126
** 3 Neither the name of the Standards Of Fundamental Astronomy Board,
127
** the International Astronomical Union nor the names of its
128
** contributors may be used to endorse or promote products derived
129
** from this software without specific prior written permission.
130
**
131
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
132
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
133
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
134
** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
135
** COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
136
** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
137
** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
138
** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
139
** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
140
** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
141
** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
142
** POSSIBILITY OF SUCH DAMAGE.
143
**
144
*/
ERFA_DJ00
#define ERFA_DJ00
Definition:
erfam.h:87
eraEra00
double eraEra00(double dj1, double dj2)
Definition:
era00.c:3
ERFA_D2PI
#define ERFA_D2PI
Definition:
erfam.h:48
erfa.h
t
TT t
Definition:
test_client.c:26
eraAnp
double eraAnp(double a)
Definition:
anp.c:3
erfa
src
era00.c
Generated on Sun Sep 18 2016 20:50:18 for FACT++ by
1.8.11