celes 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (202) hide show
  1. data/.gitignore +17 -0
  2. data/Gemfile +4 -0
  3. data/LICENSE.txt +32 -0
  4. data/README.md +179 -0
  5. data/Rakefile +1 -0
  6. data/celes.gemspec +22 -0
  7. data/ext/celes/a2af.c +120 -0
  8. data/ext/celes/a2tf.c +116 -0
  9. data/ext/celes/af2a.c +107 -0
  10. data/ext/celes/anp.c +82 -0
  11. data/ext/celes/anpm.c +82 -0
  12. data/ext/celes/bi00.c +116 -0
  13. data/ext/celes/bp00.c +173 -0
  14. data/ext/celes/bp06.c +136 -0
  15. data/ext/celes/bpn2xy.c +100 -0
  16. data/ext/celes/c2i00a.c +139 -0
  17. data/ext/celes/c2i00b.c +139 -0
  18. data/ext/celes/c2i06a.c +136 -0
  19. data/ext/celes/c2ibpn.c +142 -0
  20. data/ext/celes/c2ixy.c +131 -0
  21. data/ext/celes/c2ixys.c +123 -0
  22. data/ext/celes/c2s.c +96 -0
  23. data/ext/celes/c2t00a.c +154 -0
  24. data/ext/celes/c2t00b.c +150 -0
  25. data/ext/celes/c2t06a.c +152 -0
  26. data/ext/celes/c2tcio.c +122 -0
  27. data/ext/celes/c2teqx.c +122 -0
  28. data/ext/celes/c2tpe.c +167 -0
  29. data/ext/celes/c2txy.c +159 -0
  30. data/ext/celes/cal2jd.c +139 -0
  31. data/ext/celes/celes_core.c +2522 -0
  32. data/ext/celes/cp.c +80 -0
  33. data/ext/celes/cpv.c +82 -0
  34. data/ext/celes/cr.c +83 -0
  35. data/ext/celes/d2dtf.c +206 -0
  36. data/ext/celes/d2tf.c +160 -0
  37. data/ext/celes/dat.c +289 -0
  38. data/ext/celes/depend +25 -0
  39. data/ext/celes/dtdb.c +1213 -0
  40. data/ext/celes/dtf2d.c +196 -0
  41. data/ext/celes/ee00.c +128 -0
  42. data/ext/celes/ee00a.c +135 -0
  43. data/ext/celes/ee00b.c +141 -0
  44. data/ext/celes/ee06a.c +122 -0
  45. data/ext/celes/eect00.c +282 -0
  46. data/ext/celes/eform.c +147 -0
  47. data/ext/celes/eo06a.c +131 -0
  48. data/ext/celes/eors.c +108 -0
  49. data/ext/celes/epb.c +96 -0
  50. data/ext/celes/epb2jd.c +91 -0
  51. data/ext/celes/epj.c +93 -0
  52. data/ext/celes/epj2jd.c +91 -0
  53. data/ext/celes/epv00.c +2589 -0
  54. data/ext/celes/eqeq94.c +131 -0
  55. data/ext/celes/era00.c +136 -0
  56. data/ext/celes/extconf.rb +4 -0
  57. data/ext/celes/fad03.c +103 -0
  58. data/ext/celes/fae03.c +102 -0
  59. data/ext/celes/faf03.c +106 -0
  60. data/ext/celes/faju03.c +102 -0
  61. data/ext/celes/fal03.c +103 -0
  62. data/ext/celes/falp03.c +103 -0
  63. data/ext/celes/fama03.c +102 -0
  64. data/ext/celes/fame03.c +102 -0
  65. data/ext/celes/fane03.c +99 -0
  66. data/ext/celes/faom03.c +104 -0
  67. data/ext/celes/fapa03.c +103 -0
  68. data/ext/celes/fasa03.c +102 -0
  69. data/ext/celes/faur03.c +99 -0
  70. data/ext/celes/fave03.c +102 -0
  71. data/ext/celes/fk52h.c +143 -0
  72. data/ext/celes/fk5hip.c +126 -0
  73. data/ext/celes/fk5hz.c +160 -0
  74. data/ext/celes/fw2m.c +134 -0
  75. data/ext/celes/fw2xy.c +120 -0
  76. data/ext/celes/gc2gd.c +134 -0
  77. data/ext/celes/gc2gde.c +200 -0
  78. data/ext/celes/gd2gc.c +134 -0
  79. data/ext/celes/gd2gce.c +138 -0
  80. data/ext/celes/gmst00.c +145 -0
  81. data/ext/celes/gmst06.c +136 -0
  82. data/ext/celes/gmst82.c +151 -0
  83. data/ext/celes/gst00a.c +138 -0
  84. data/ext/celes/gst00b.c +146 -0
  85. data/ext/celes/gst06.c +140 -0
  86. data/ext/celes/gst06a.c +131 -0
  87. data/ext/celes/gst94.c +131 -0
  88. data/ext/celes/h2fk5.c +148 -0
  89. data/ext/celes/hfk5z.c +175 -0
  90. data/ext/celes/ir.c +83 -0
  91. data/ext/celes/jd2cal.c +155 -0
  92. data/ext/celes/jdcalf.c +161 -0
  93. data/ext/celes/num00a.c +121 -0
  94. data/ext/celes/num00b.c +121 -0
  95. data/ext/celes/num06a.c +125 -0
  96. data/ext/celes/numat.c +109 -0
  97. data/ext/celes/nut00a.c +2047 -0
  98. data/ext/celes/nut00b.c +372 -0
  99. data/ext/celes/nut06a.c +153 -0
  100. data/ext/celes/nut80.c +325 -0
  101. data/ext/celes/nutm80.c +117 -0
  102. data/ext/celes/obl06.c +118 -0
  103. data/ext/celes/obl80.c +118 -0
  104. data/ext/celes/p06e.c +321 -0
  105. data/ext/celes/p2pv.c +83 -0
  106. data/ext/celes/p2s.c +91 -0
  107. data/ext/celes/pap.c +139 -0
  108. data/ext/celes/pas.c +96 -0
  109. data/ext/celes/pb06.c +144 -0
  110. data/ext/celes/pdp.c +84 -0
  111. data/ext/celes/pfw06.c +165 -0
  112. data/ext/celes/plan94.c +514 -0
  113. data/ext/celes/pm.c +83 -0
  114. data/ext/celes/pmat00.c +118 -0
  115. data/ext/celes/pmat06.c +122 -0
  116. data/ext/celes/pmat76.c +141 -0
  117. data/ext/celes/pmp.c +85 -0
  118. data/ext/celes/pn.c +109 -0
  119. data/ext/celes/pn00.c +177 -0
  120. data/ext/celes/pn00a.c +162 -0
  121. data/ext/celes/pn00b.c +162 -0
  122. data/ext/celes/pn06.c +187 -0
  123. data/ext/celes/pn06a.c +152 -0
  124. data/ext/celes/pnm00a.c +121 -0
  125. data/ext/celes/pnm00b.c +121 -0
  126. data/ext/celes/pnm06a.c +124 -0
  127. data/ext/celes/pnm80.c +126 -0
  128. data/ext/celes/pom00.c +115 -0
  129. data/ext/celes/ppp.c +85 -0
  130. data/ext/celes/ppsp.c +94 -0
  131. data/ext/celes/pr00.c +142 -0
  132. data/ext/celes/prec76.c +148 -0
  133. data/ext/celes/pv2p.c +81 -0
  134. data/ext/celes/pv2s.c +144 -0
  135. data/ext/celes/pvdpv.c +102 -0
  136. data/ext/celes/pvm.c +86 -0
  137. data/ext/celes/pvmpv.c +87 -0
  138. data/ext/celes/pvppv.c +87 -0
  139. data/ext/celes/pvstar.c +207 -0
  140. data/ext/celes/pvu.c +93 -0
  141. data/ext/celes/pvup.c +88 -0
  142. data/ext/celes/pvxpv.c +107 -0
  143. data/ext/celes/pxp.c +94 -0
  144. data/ext/celes/rm2v.c +111 -0
  145. data/ext/celes/rv2m.c +118 -0
  146. data/ext/celes/rx.c +110 -0
  147. data/ext/celes/rxp.c +99 -0
  148. data/ext/celes/rxpv.c +86 -0
  149. data/ext/celes/rxr.c +99 -0
  150. data/ext/celes/ry.c +110 -0
  151. data/ext/celes/rz.c +110 -0
  152. data/ext/celes/s00.c +371 -0
  153. data/ext/celes/s00a.c +143 -0
  154. data/ext/celes/s00b.c +143 -0
  155. data/ext/celes/s06.c +368 -0
  156. data/ext/celes/s06a.c +145 -0
  157. data/ext/celes/s2c.c +85 -0
  158. data/ext/celes/s2p.c +88 -0
  159. data/ext/celes/s2pv.c +103 -0
  160. data/ext/celes/s2xpv.c +87 -0
  161. data/ext/celes/sepp.c +105 -0
  162. data/ext/celes/seps.c +93 -0
  163. data/ext/celes/sofa.h +379 -0
  164. data/ext/celes/sofam.h +155 -0
  165. data/ext/celes/sp00.c +118 -0
  166. data/ext/celes/starpm.c +205 -0
  167. data/ext/celes/starpv.c +264 -0
  168. data/ext/celes/sxp.c +84 -0
  169. data/ext/celes/sxpv.c +85 -0
  170. data/ext/celes/taitt.c +110 -0
  171. data/ext/celes/taiut1.c +112 -0
  172. data/ext/celes/taiutc.c +182 -0
  173. data/ext/celes/tcbtdb.c +132 -0
  174. data/ext/celes/tcgtt.c +109 -0
  175. data/ext/celes/tdbtcb.c +137 -0
  176. data/ext/celes/tdbtt.c +122 -0
  177. data/ext/celes/tf2a.c +107 -0
  178. data/ext/celes/tf2d.c +107 -0
  179. data/ext/celes/tr.c +93 -0
  180. data/ext/celes/trxp.c +93 -0
  181. data/ext/celes/trxpv.c +93 -0
  182. data/ext/celes/tttai.c +110 -0
  183. data/ext/celes/tttcg.c +112 -0
  184. data/ext/celes/tttdb.c +121 -0
  185. data/ext/celes/ttut1.c +110 -0
  186. data/ext/celes/ut1tai.c +111 -0
  187. data/ext/celes/ut1tt.c +110 -0
  188. data/ext/celes/ut1utc.c +193 -0
  189. data/ext/celes/utctai.c +163 -0
  190. data/ext/celes/utcut1.c +151 -0
  191. data/ext/celes/xy06.c +2758 -0
  192. data/ext/celes/xys00a.c +133 -0
  193. data/ext/celes/xys00b.c +133 -0
  194. data/ext/celes/xys06a.c +133 -0
  195. data/ext/celes/zp.c +77 -0
  196. data/ext/celes/zpv.c +79 -0
  197. data/ext/celes/zr.c +83 -0
  198. data/lib/celes.rb +6 -0
  199. data/lib/celes/version.rb +3 -0
  200. data/sofa_20120301.diff +31384 -0
  201. data/test/t_sofa.rb +8228 -0
  202. metadata +251 -0
@@ -0,0 +1,121 @@
1
+ #include "sofam.h"
2
+
3
+ int iauTttdb(double tt1, double tt2, double dtr,
4
+ double *tdb1, double *tdb2)
5
+ /*
6
+ ** - - - - - - - - -
7
+ ** i a u T t t d b
8
+ ** - - - - - - - - -
9
+ **
10
+ ** Time scale transformation: Terrestrial Time, TT, to Barycentric
11
+ ** Dynamical Time, TDB.
12
+ **
13
+ ** Status: canonical.
14
+ **
15
+ ** Given:
16
+ ** tt1,tt2 double TT as a 2-part Julian Date
17
+ ** dtr double TDB-TT in seconds
18
+ **
19
+ ** Returned:
20
+ ** tdb1,tdb2 double TDB as a 2-part Julian Date
21
+ **
22
+ ** Returned (function value):
23
+ ** int status: 0 = OK
24
+ **
25
+ ** Notes:
26
+ **
27
+ ** 1) tt1+tt2 is Julian Date, apportioned in any convenient way between
28
+ ** the two arguments, for example where tt1 is the Julian Day Number
29
+ ** and tt2 is the fraction of a day. The returned tdb1,tdb2 follow
30
+ ** suit.
31
+ **
32
+ ** 2) The argument dtr represents the quasi-periodic component of the
33
+ ** GR transformation between TT and TCB. It is dependent upon the
34
+ ** adopted solar-system ephemeris, and can be obtained by numerical
35
+ ** integration, by interrogating a precomputed time ephemeris or by
36
+ ** evaluating a model such as that implemented in the SOFA function
37
+ ** iauDtdb. The quantity is dominated by an annual term of 1.7 ms
38
+ ** amplitude.
39
+ **
40
+ ** 3) TDB is essentially the same as Teph, the time argument for the JPL
41
+ ** solar system ephemerides.
42
+ **
43
+ ** References:
44
+ **
45
+ ** McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003),
46
+ ** IERS Technical Note No. 32, BKG (2004)
47
+ **
48
+ ** IAU 2006 Resolution 3
49
+ **
50
+ ** This revision: 2011 May 14
51
+ **
52
+ ** Original version 2012-03-01
53
+ **
54
+ ** Copyright (C) 2013 Naoki Arita. See notes at end.
55
+ */
56
+ {
57
+ double dtrd;
58
+
59
+
60
+ /* Result, safeguarding precision. */
61
+ dtrd = dtr / DAYSEC;
62
+ if ( tt1 > tt2 ) {
63
+ *tdb1 = tt1;
64
+ *tdb2 = tt2 + dtrd;
65
+ } else {
66
+ *tdb1 = tt1 + dtrd;
67
+ *tdb2 = tt2;
68
+ }
69
+
70
+ /* Status (always OK). */
71
+ return 0;
72
+
73
+ /*----------------------------------------------------------------------
74
+ **
75
+ ** Celes is a wrapper of the SOFA Library for Ruby.
76
+ **
77
+ ** This file is redistributed and relicensed in accordance with
78
+ ** the SOFA Software License (http://www.iausofa.org/tandc.html).
79
+ **
80
+ ** The original library is available from IAU Standards of
81
+ ** Fundamental Astronomy (http://www.iausofa.org/).
82
+ **
83
+ **
84
+ **
85
+ **
86
+ **
87
+ ** Copyright (C) 2013, Naoki Arita
88
+ ** All rights reserved.
89
+ **
90
+ ** Redistribution and use in source and binary forms, with or without
91
+ ** modification, are permitted provided that the following conditions
92
+ ** are met:
93
+ **
94
+ ** 1 Redistributions of source code must retain the above copyright
95
+ ** notice, this list of conditions and the following disclaimer.
96
+ **
97
+ ** 2 Redistributions in binary form must reproduce the above copyright
98
+ ** notice, this list of conditions and the following disclaimer in
99
+ ** the documentation and/or other materials provided with the
100
+ ** distribution.
101
+ **
102
+ ** 3 Neither the name of the Standards Of Fundamental Astronomy Board,
103
+ ** the International Astronomical Union nor the names of its
104
+ ** contributors may be used to endorse or promote products derived
105
+ ** from this software without specific prior written permission.
106
+ **
107
+ ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
108
+ ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
109
+ ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
110
+ ** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
111
+ ** COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
112
+ ** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
113
+ ** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
114
+ ** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
115
+ ** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
116
+ ** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
117
+ ** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
118
+ ** POSSIBILITY OF SUCH DAMAGE.
119
+ **
120
+ **--------------------------------------------------------------------*/
121
+ }
@@ -0,0 +1,110 @@
1
+ #include "sofam.h"
2
+
3
+ int iauTtut1(double tt1, double tt2, double dt,
4
+ double *ut11, double *ut12)
5
+ /*
6
+ ** - - - - - - - - -
7
+ ** i a u T t u t 1
8
+ ** - - - - - - - - -
9
+ **
10
+ ** Time scale transformation: Terrestrial Time, TT, to Universal Time,
11
+ ** UT1.
12
+ **
13
+ ** Status: canonical.
14
+ **
15
+ ** Given:
16
+ ** tt1,tt2 double TT as a 2-part Julian Date
17
+ ** dt double TT-UT1 in seconds
18
+ **
19
+ ** Returned:
20
+ ** ut11,ut12 double UT1 as a 2-part Julian Date
21
+ **
22
+ ** Returned (function value):
23
+ ** int status: 0 = OK
24
+ **
25
+ ** Notes:
26
+ **
27
+ ** 1) tt1+tt2 is Julian Date, apportioned in any convenient way between
28
+ ** the two arguments, for example where tt1 is the Julian Day Number
29
+ ** and tt2 is the fraction of a day. The returned ut11,ut12 follow
30
+ ** suit.
31
+ **
32
+ ** 2) The argument dt is classical Delta T.
33
+ **
34
+ ** Reference:
35
+ **
36
+ ** Explanatory Supplement to the Astronomical Almanac,
37
+ ** P. Kenneth Seidelmann (ed), University Science Books (1992)
38
+ **
39
+ ** This revision: 2011 May 14
40
+ **
41
+ ** Original version 2012-03-01
42
+ **
43
+ ** Copyright (C) 2013 Naoki Arita. See notes at end.
44
+ */
45
+ {
46
+ double dtd;
47
+
48
+
49
+ /* Result, safeguarding precision. */
50
+ dtd = dt / DAYSEC;
51
+ if ( tt1 > tt2 ) {
52
+ *ut11 = tt1;
53
+ *ut12 = tt2 - dtd;
54
+ } else {
55
+ *ut11 = tt1 - dtd;
56
+ *ut12 = tt2;
57
+ }
58
+
59
+ /* Status (always OK). */
60
+ return 0;
61
+
62
+ /*----------------------------------------------------------------------
63
+ **
64
+ ** Celes is a wrapper of the SOFA Library for Ruby.
65
+ **
66
+ ** This file is redistributed and relicensed in accordance with
67
+ ** the SOFA Software License (http://www.iausofa.org/tandc.html).
68
+ **
69
+ ** The original library is available from IAU Standards of
70
+ ** Fundamental Astronomy (http://www.iausofa.org/).
71
+ **
72
+ **
73
+ **
74
+ **
75
+ **
76
+ ** Copyright (C) 2013, Naoki Arita
77
+ ** All rights reserved.
78
+ **
79
+ ** Redistribution and use in source and binary forms, with or without
80
+ ** modification, are permitted provided that the following conditions
81
+ ** are met:
82
+ **
83
+ ** 1 Redistributions of source code must retain the above copyright
84
+ ** notice, this list of conditions and the following disclaimer.
85
+ **
86
+ ** 2 Redistributions in binary form must reproduce the above copyright
87
+ ** notice, this list of conditions and the following disclaimer in
88
+ ** the documentation and/or other materials provided with the
89
+ ** distribution.
90
+ **
91
+ ** 3 Neither the name of the Standards Of Fundamental Astronomy Board,
92
+ ** the International Astronomical Union nor the names of its
93
+ ** contributors may be used to endorse or promote products derived
94
+ ** from this software without specific prior written permission.
95
+ **
96
+ ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
97
+ ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
98
+ ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
99
+ ** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
100
+ ** COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
101
+ ** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
102
+ ** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
103
+ ** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
104
+ ** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
105
+ ** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
106
+ ** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
107
+ ** POSSIBILITY OF SUCH DAMAGE.
108
+ **
109
+ **--------------------------------------------------------------------*/
110
+ }
@@ -0,0 +1,111 @@
1
+ #include "sofam.h"
2
+
3
+ int iauUt1tai(double ut11, double ut12, double dta,
4
+ double *tai1, double *tai2)
5
+ /*
6
+ ** - - - - - - - - - -
7
+ ** i a u U t 1 t a i
8
+ ** - - - - - - - - - -
9
+ **
10
+ ** Time scale transformation: Universal Time, UT1, to International
11
+ ** Atomic Time, TAI.
12
+ **
13
+ ** Status: canonical.
14
+ **
15
+ ** Given:
16
+ ** ut11,ut12 double UT1 as a 2-part Julian Date
17
+ ** dta double UT1-TAI in seconds
18
+ **
19
+ ** Returned:
20
+ ** tai1,tai2 double TAI as a 2-part Julian Date
21
+ **
22
+ ** Returned (function value):
23
+ ** int status: 0 = OK
24
+ **
25
+ ** Notes:
26
+ **
27
+ ** 1) ut11+ut12 is Julian Date, apportioned in any convenient way
28
+ ** between the two arguments, for example where ut11 is the Julian
29
+ ** Day Number and ut12 is the fraction of a day. The returned
30
+ ** tai1,tai2 follow suit.
31
+ **
32
+ ** 2) The argument dta, i.e. UT1-TAI, is an observed quantity, and is
33
+ ** available from IERS tabulations.
34
+ **
35
+ ** Reference:
36
+ **
37
+ ** Explanatory Supplement to the Astronomical Almanac,
38
+ ** P. Kenneth Seidelmann (ed), University Science Books (1992)
39
+ **
40
+ ** This revision: 2011 May 14
41
+ **
42
+ ** Original version 2012-03-01
43
+ **
44
+ ** Copyright (C) 2013 Naoki Arita. See notes at end.
45
+ */
46
+ {
47
+ double dtad;
48
+
49
+
50
+ /* Result, safeguarding precision. */
51
+ dtad = dta / DAYSEC;
52
+ if ( ut11 > ut12 ) {
53
+ *tai1 = ut11;
54
+ *tai2 = ut12 - dtad;
55
+ } else {
56
+ *tai1 = ut11 - dtad;
57
+ *tai2 = ut12;
58
+ }
59
+
60
+ /* Status (always OK). */
61
+ return 0;
62
+
63
+ /*----------------------------------------------------------------------
64
+ **
65
+ ** Celes is a wrapper of the SOFA Library for Ruby.
66
+ **
67
+ ** This file is redistributed and relicensed in accordance with
68
+ ** the SOFA Software License (http://www.iausofa.org/tandc.html).
69
+ **
70
+ ** The original library is available from IAU Standards of
71
+ ** Fundamental Astronomy (http://www.iausofa.org/).
72
+ **
73
+ **
74
+ **
75
+ **
76
+ **
77
+ ** Copyright (C) 2013, Naoki Arita
78
+ ** All rights reserved.
79
+ **
80
+ ** Redistribution and use in source and binary forms, with or without
81
+ ** modification, are permitted provided that the following conditions
82
+ ** are met:
83
+ **
84
+ ** 1 Redistributions of source code must retain the above copyright
85
+ ** notice, this list of conditions and the following disclaimer.
86
+ **
87
+ ** 2 Redistributions in binary form must reproduce the above copyright
88
+ ** notice, this list of conditions and the following disclaimer in
89
+ ** the documentation and/or other materials provided with the
90
+ ** distribution.
91
+ **
92
+ ** 3 Neither the name of the Standards Of Fundamental Astronomy Board,
93
+ ** the International Astronomical Union nor the names of its
94
+ ** contributors may be used to endorse or promote products derived
95
+ ** from this software without specific prior written permission.
96
+ **
97
+ ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
98
+ ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
99
+ ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
100
+ ** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
101
+ ** COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
102
+ ** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
103
+ ** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
104
+ ** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
105
+ ** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
106
+ ** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
107
+ ** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
108
+ ** POSSIBILITY OF SUCH DAMAGE.
109
+ **
110
+ **--------------------------------------------------------------------*/
111
+ }
@@ -0,0 +1,110 @@
1
+ #include "sofam.h"
2
+
3
+ int iauUt1tt(double ut11, double ut12, double dt,
4
+ double *tt1, double *tt2)
5
+ /*
6
+ ** - - - - - - - - -
7
+ ** i a u U t 1 t t
8
+ ** - - - - - - - - -
9
+ **
10
+ ** Time scale transformation: Universal Time, UT1, to Terrestrial
11
+ ** Time, TT.
12
+ **
13
+ ** Status: canonical.
14
+ **
15
+ ** Given:
16
+ ** ut11,ut12 double UT1 as a 2-part Julian Date
17
+ ** dt double TT-UT1 in seconds
18
+ **
19
+ ** Returned:
20
+ ** tt1,tt2 double TT as a 2-part Julian Date
21
+ **
22
+ ** Returned (function value):
23
+ ** int status: 0 = OK
24
+ **
25
+ ** Notes:
26
+ **
27
+ ** 1) ut11+ut12 is Julian Date, apportioned in any convenient way
28
+ ** between the two arguments, for example where ut11 is the Julian
29
+ ** Day Number and ut12 is the fraction of a day. The returned
30
+ ** tt1,tt2 follow suit.
31
+ **
32
+ ** 2) The argument dt is classical Delta T.
33
+ **
34
+ ** Reference:
35
+ **
36
+ ** Explanatory Supplement to the Astronomical Almanac,
37
+ ** P. Kenneth Seidelmann (ed), University Science Books (1992)
38
+ **
39
+ ** This revision: 2011 May 14
40
+ **
41
+ ** Original version 2012-03-01
42
+ **
43
+ ** Copyright (C) 2013 Naoki Arita. See notes at end.
44
+ */
45
+ {
46
+ double dtd;
47
+
48
+
49
+ /* Result, safeguarding precision. */
50
+ dtd = dt / DAYSEC;
51
+ if ( ut11 > ut12 ) {
52
+ *tt1 = ut11;
53
+ *tt2 = ut12 + dtd;
54
+ } else {
55
+ *tt1 = ut11 + dtd;
56
+ *tt2 = ut12;
57
+ }
58
+
59
+ /* Status (always OK). */
60
+ return 0;
61
+
62
+ /*----------------------------------------------------------------------
63
+ **
64
+ ** Celes is a wrapper of the SOFA Library for Ruby.
65
+ **
66
+ ** This file is redistributed and relicensed in accordance with
67
+ ** the SOFA Software License (http://www.iausofa.org/tandc.html).
68
+ **
69
+ ** The original library is available from IAU Standards of
70
+ ** Fundamental Astronomy (http://www.iausofa.org/).
71
+ **
72
+ **
73
+ **
74
+ **
75
+ **
76
+ ** Copyright (C) 2013, Naoki Arita
77
+ ** All rights reserved.
78
+ **
79
+ ** Redistribution and use in source and binary forms, with or without
80
+ ** modification, are permitted provided that the following conditions
81
+ ** are met:
82
+ **
83
+ ** 1 Redistributions of source code must retain the above copyright
84
+ ** notice, this list of conditions and the following disclaimer.
85
+ **
86
+ ** 2 Redistributions in binary form must reproduce the above copyright
87
+ ** notice, this list of conditions and the following disclaimer in
88
+ ** the documentation and/or other materials provided with the
89
+ ** distribution.
90
+ **
91
+ ** 3 Neither the name of the Standards Of Fundamental Astronomy Board,
92
+ ** the International Astronomical Union nor the names of its
93
+ ** contributors may be used to endorse or promote products derived
94
+ ** from this software without specific prior written permission.
95
+ **
96
+ ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
97
+ ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
98
+ ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
99
+ ** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
100
+ ** COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
101
+ ** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
102
+ ** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
103
+ ** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
104
+ ** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
105
+ ** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
106
+ ** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
107
+ ** POSSIBILITY OF SUCH DAMAGE.
108
+ **
109
+ **--------------------------------------------------------------------*/
110
+ }