1 #include "erfa.h"
2
eraTdbtt(double tdb1,double tdb2,double dtr,double * tt1,double * tt2)3 int eraTdbtt(double tdb1, double tdb2, double dtr,
4 double *tt1, double *tt2 )
5 /*
6 ** - - - - - - - - -
7 ** e r a T d b t t
8 ** - - - - - - - - -
9 **
10 ** Time scale transformation: Barycentric Dynamical Time, TDB, to
11 ** Terrestrial Time, TT.
12 **
13 ** Given:
14 ** tdb1,tdb2 double TDB as a 2-part Julian Date
15 ** dtr double TDB-TT in seconds
16 **
17 ** Returned:
18 ** tt1,tt2 double TT as a 2-part Julian Date
19 **
20 ** Returned (function value):
21 ** int status: 0 = OK
22 **
23 ** Notes:
24 **
25 ** 1) tdb1+tdb2 is Julian Date, apportioned in any convenient way
26 ** between the two arguments, for example where tdb1 is the Julian
27 ** Day Number and tdb2 is the fraction of a day. The returned
28 ** tt1,tt2 follow suit.
29 **
30 ** 2) The argument dtr represents the quasi-periodic component of the
31 ** GR transformation between TT and TCB. It is dependent upon the
32 ** adopted solar-system ephemeris, and can be obtained by numerical
33 ** integration, by interrogating a precomputed time ephemeris or by
34 ** evaluating a model such as that implemented in the ERFA function
35 ** eraDtdb. The quantity is dominated by an annual term of 1.7 ms
36 ** amplitude.
37 **
38 ** 3) TDB is essentially the same as Teph, the time argument for the
39 ** JPL solar system ephemerides.
40 **
41 ** References:
42 **
43 ** McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003),
44 ** IERS Technical Note No. 32, BKG (2004)
45 **
46 ** IAU 2006 Resolution 3
47 **
48 ** Copyright (C) 2013-2020, NumFOCUS Foundation.
49 ** Derived, with permission, from the SOFA library. See notes at end of file.
50 */
51 {
52 double dtrd;
53
54
55 /* Result, safeguarding precision. */
56 dtrd = dtr / ERFA_DAYSEC;
57 if ( fabs(tdb1) > fabs(tdb2) ) {
58 *tt1 = tdb1;
59 *tt2 = tdb2 - dtrd;
60 } else {
61 *tt1 = tdb1 - dtrd;
62 *tt2 = tdb2;
63 }
64
65 /* Status (always OK). */
66 return 0;
67
68 }
69 /*----------------------------------------------------------------------
70 **
71 **
72 ** Copyright (C) 2013-2020, 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 */
131