equationoftime 4.0.0 → 4.1.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 (265) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +8 -3
  3. data/Gemfile.lock +48 -0
  4. data/README.md +22 -19
  5. data/Rakefile +14 -7
  6. data/equationoftime.gemspec +9 -6
  7. data/ext/ceot/ceot.c +52 -0
  8. data/ext/ceot/eot.c +79 -0
  9. data/ext/ceot/eot.h +8 -0
  10. data/ext/ceot/extconf.rb +5 -0
  11. data/lib/eot.rb +2 -1
  12. data/lib/eot/angles.rb +44 -43
  13. data/lib/eot/init.rb +13 -6
  14. data/lib/eot/version.rb +1 -1
  15. data/wiki.md +6 -7
  16. metadata +26 -255
  17. data/.settings/org.eclipse.ltk.core.refactoring.prefs +0 -2
  18. data/Makefile +0 -238
  19. data/analemma_data.yml +0 -2925
  20. data/examples/Equation_of_Time.jpg +0 -0
  21. data/examples/analemma_data_generator.rb +0 -53
  22. data/examples/celes_parts/.RUBYARCHDIR.time +0 -0
  23. data/examples/celes_parts/.cproject +0 -56
  24. data/examples/celes_parts/.project +0 -78
  25. data/examples/celes_parts/a2af.c +0 -120
  26. data/examples/celes_parts/a2tf.c +0 -116
  27. data/examples/celes_parts/af2a.c +0 -107
  28. data/examples/celes_parts/anp.c +0 -82
  29. data/examples/celes_parts/anpm.c +0 -82
  30. data/examples/celes_parts/bi00.c +0 -116
  31. data/examples/celes_parts/bp00.c +0 -173
  32. data/examples/celes_parts/bp06.c +0 -136
  33. data/examples/celes_parts/bpn2xy.c +0 -100
  34. data/examples/celes_parts/c2i00a.c +0 -139
  35. data/examples/celes_parts/c2i00b.c +0 -139
  36. data/examples/celes_parts/c2i06a.c +0 -136
  37. data/examples/celes_parts/c2ibpn.c +0 -142
  38. data/examples/celes_parts/c2ixy.c +0 -131
  39. data/examples/celes_parts/c2ixys.c +0 -123
  40. data/examples/celes_parts/c2s.c +0 -96
  41. data/examples/celes_parts/c2t00a.c +0 -154
  42. data/examples/celes_parts/c2t00b.c +0 -150
  43. data/examples/celes_parts/c2t06a.c +0 -152
  44. data/examples/celes_parts/c2tcio.c +0 -122
  45. data/examples/celes_parts/c2teqx.c +0 -122
  46. data/examples/celes_parts/c2tpe.c +0 -167
  47. data/examples/celes_parts/c2txy.c +0 -159
  48. data/examples/celes_parts/cal2jd.c +0 -139
  49. data/examples/celes_parts/celes_core.c +0 -2522
  50. data/examples/celes_parts/cp.c +0 -80
  51. data/examples/celes_parts/cpv.c +0 -82
  52. data/examples/celes_parts/cr.c +0 -83
  53. data/examples/celes_parts/d2dtf.c +0 -206
  54. data/examples/celes_parts/d2tf.c +0 -160
  55. data/examples/celes_parts/dat.c +0 -289
  56. data/examples/celes_parts/depend +0 -25
  57. data/examples/celes_parts/dtdb.c +0 -1213
  58. data/examples/celes_parts/dtf2d.c +0 -196
  59. data/examples/celes_parts/ee00.c +0 -128
  60. data/examples/celes_parts/ee00a.c +0 -135
  61. data/examples/celes_parts/ee00b.c +0 -141
  62. data/examples/celes_parts/ee06a.c +0 -122
  63. data/examples/celes_parts/eect00.c +0 -282
  64. data/examples/celes_parts/eform.c +0 -147
  65. data/examples/celes_parts/eo06a.c +0 -131
  66. data/examples/celes_parts/eors.c +0 -108
  67. data/examples/celes_parts/epb.c +0 -96
  68. data/examples/celes_parts/epb2jd.c +0 -91
  69. data/examples/celes_parts/epj.c +0 -93
  70. data/examples/celes_parts/epj2jd.c +0 -91
  71. data/examples/celes_parts/epv00.c +0 -2589
  72. data/examples/celes_parts/eqeq94.c +0 -131
  73. data/examples/celes_parts/era00.c +0 -136
  74. data/examples/celes_parts/extconf.rb +0 -4
  75. data/examples/celes_parts/fad03.c +0 -103
  76. data/examples/celes_parts/fae03.c +0 -102
  77. data/examples/celes_parts/faf03.c +0 -106
  78. data/examples/celes_parts/faju03.c +0 -102
  79. data/examples/celes_parts/fal03.c +0 -103
  80. data/examples/celes_parts/falp03.c +0 -103
  81. data/examples/celes_parts/fama03.c +0 -102
  82. data/examples/celes_parts/fame03.c +0 -102
  83. data/examples/celes_parts/fane03.c +0 -99
  84. data/examples/celes_parts/faom03.c +0 -104
  85. data/examples/celes_parts/fapa03.c +0 -103
  86. data/examples/celes_parts/fasa03.c +0 -102
  87. data/examples/celes_parts/faur03.c +0 -99
  88. data/examples/celes_parts/fave03.c +0 -102
  89. data/examples/celes_parts/fk52h.c +0 -143
  90. data/examples/celes_parts/fk5hip.c +0 -126
  91. data/examples/celes_parts/fk5hz.c +0 -160
  92. data/examples/celes_parts/fw2m.c +0 -134
  93. data/examples/celes_parts/fw2xy.c +0 -120
  94. data/examples/celes_parts/gc2gd.c +0 -134
  95. data/examples/celes_parts/gc2gde.c +0 -200
  96. data/examples/celes_parts/gd2gc.c +0 -134
  97. data/examples/celes_parts/gd2gce.c +0 -138
  98. data/examples/celes_parts/gmst00.c +0 -145
  99. data/examples/celes_parts/gmst06.c +0 -136
  100. data/examples/celes_parts/gmst82.c +0 -151
  101. data/examples/celes_parts/gst00a.c +0 -138
  102. data/examples/celes_parts/gst00b.c +0 -146
  103. data/examples/celes_parts/gst06.c +0 -140
  104. data/examples/celes_parts/gst06a.c +0 -131
  105. data/examples/celes_parts/gst94.c +0 -131
  106. data/examples/celes_parts/h2fk5.c +0 -148
  107. data/examples/celes_parts/hfk5z.c +0 -175
  108. data/examples/celes_parts/ir.c +0 -83
  109. data/examples/celes_parts/jd2cal.c +0 -155
  110. data/examples/celes_parts/jdcalf.c +0 -161
  111. data/examples/celes_parts/num00a.c +0 -121
  112. data/examples/celes_parts/num00b.c +0 -121
  113. data/examples/celes_parts/num06a.c +0 -125
  114. data/examples/celes_parts/numat.c +0 -109
  115. data/examples/celes_parts/nut00a.c +0 -2047
  116. data/examples/celes_parts/nut00b.c +0 -372
  117. data/examples/celes_parts/nut06a.c +0 -153
  118. data/examples/celes_parts/nut80.c +0 -325
  119. data/examples/celes_parts/nutm80.c +0 -117
  120. data/examples/celes_parts/obl06.c +0 -118
  121. data/examples/celes_parts/obl80.c +0 -118
  122. data/examples/celes_parts/p06e.c +0 -321
  123. data/examples/celes_parts/p2pv.c +0 -83
  124. data/examples/celes_parts/p2s.c +0 -91
  125. data/examples/celes_parts/pap.c +0 -139
  126. data/examples/celes_parts/pas.c +0 -96
  127. data/examples/celes_parts/pb06.c +0 -144
  128. data/examples/celes_parts/pdp.c +0 -84
  129. data/examples/celes_parts/pfw06.c +0 -165
  130. data/examples/celes_parts/plan94.c +0 -514
  131. data/examples/celes_parts/pm.c +0 -83
  132. data/examples/celes_parts/pmat00.c +0 -118
  133. data/examples/celes_parts/pmat06.c +0 -122
  134. data/examples/celes_parts/pmat76.c +0 -141
  135. data/examples/celes_parts/pmp.c +0 -85
  136. data/examples/celes_parts/pn.c +0 -109
  137. data/examples/celes_parts/pn00.c +0 -177
  138. data/examples/celes_parts/pn00a.c +0 -162
  139. data/examples/celes_parts/pn00b.c +0 -162
  140. data/examples/celes_parts/pn06.c +0 -187
  141. data/examples/celes_parts/pn06a.c +0 -152
  142. data/examples/celes_parts/pnm00a.c +0 -121
  143. data/examples/celes_parts/pnm00b.c +0 -121
  144. data/examples/celes_parts/pnm06a.c +0 -124
  145. data/examples/celes_parts/pnm80.c +0 -126
  146. data/examples/celes_parts/pom00.c +0 -115
  147. data/examples/celes_parts/ppp.c +0 -85
  148. data/examples/celes_parts/ppsp.c +0 -94
  149. data/examples/celes_parts/pr00.c +0 -142
  150. data/examples/celes_parts/prec76.c +0 -148
  151. data/examples/celes_parts/pv2p.c +0 -81
  152. data/examples/celes_parts/pv2s.c +0 -144
  153. data/examples/celes_parts/pvdpv.c +0 -102
  154. data/examples/celes_parts/pvm.c +0 -86
  155. data/examples/celes_parts/pvmpv.c +0 -87
  156. data/examples/celes_parts/pvppv.c +0 -87
  157. data/examples/celes_parts/pvstar.c +0 -207
  158. data/examples/celes_parts/pvu.c +0 -93
  159. data/examples/celes_parts/pvup.c +0 -88
  160. data/examples/celes_parts/pvxpv.c +0 -107
  161. data/examples/celes_parts/pxp.c +0 -94
  162. data/examples/celes_parts/rm2v.c +0 -111
  163. data/examples/celes_parts/rv2m.c +0 -118
  164. data/examples/celes_parts/rx.c +0 -110
  165. data/examples/celes_parts/rxp.c +0 -99
  166. data/examples/celes_parts/rxpv.c +0 -86
  167. data/examples/celes_parts/rxr.c +0 -99
  168. data/examples/celes_parts/ry.c +0 -110
  169. data/examples/celes_parts/rz.c +0 -110
  170. data/examples/celes_parts/s00.c +0 -371
  171. data/examples/celes_parts/s00a.c +0 -143
  172. data/examples/celes_parts/s00b.c +0 -143
  173. data/examples/celes_parts/s06.c +0 -368
  174. data/examples/celes_parts/s06a.c +0 -145
  175. data/examples/celes_parts/s2c.c +0 -85
  176. data/examples/celes_parts/s2p.c +0 -88
  177. data/examples/celes_parts/s2pv.c +0 -103
  178. data/examples/celes_parts/s2xpv.c +0 -87
  179. data/examples/celes_parts/sepp.c +0 -105
  180. data/examples/celes_parts/seps.c +0 -93
  181. data/examples/celes_parts/sofa.h +0 -379
  182. data/examples/celes_parts/sofam.h +0 -155
  183. data/examples/celes_parts/sp00.c +0 -118
  184. data/examples/celes_parts/starpm.c +0 -205
  185. data/examples/celes_parts/starpv.c +0 -264
  186. data/examples/celes_parts/sxp.c +0 -84
  187. data/examples/celes_parts/sxpv.c +0 -85
  188. data/examples/celes_parts/taitt.c +0 -110
  189. data/examples/celes_parts/taiut1.c +0 -112
  190. data/examples/celes_parts/taiutc.c +0 -182
  191. data/examples/celes_parts/tcbtdb.c +0 -132
  192. data/examples/celes_parts/tcgtt.c +0 -109
  193. data/examples/celes_parts/tdbtcb.c +0 -137
  194. data/examples/celes_parts/tdbtt.c +0 -122
  195. data/examples/celes_parts/test_celes.rb +0 -48
  196. data/examples/celes_parts/tf2a.c +0 -107
  197. data/examples/celes_parts/tf2d.c +0 -107
  198. data/examples/celes_parts/tr.c +0 -93
  199. data/examples/celes_parts/trxp.c +0 -93
  200. data/examples/celes_parts/trxpv.c +0 -93
  201. data/examples/celes_parts/tttai.c +0 -110
  202. data/examples/celes_parts/tttcg.c +0 -112
  203. data/examples/celes_parts/tttdb.c +0 -121
  204. data/examples/celes_parts/ttut1.c +0 -110
  205. data/examples/celes_parts/ut1tai.c +0 -111
  206. data/examples/celes_parts/ut1tt.c +0 -110
  207. data/examples/celes_parts/ut1utc.c +0 -193
  208. data/examples/celes_parts/utctai.c +0 -163
  209. data/examples/celes_parts/utcut1.c +0 -151
  210. data/examples/celes_parts/xy06.c +0 -2758
  211. data/examples/celes_parts/xys00a.c +0 -133
  212. data/examples/celes_parts/xys00b.c +0 -133
  213. data/examples/celes_parts/xys06a.c +0 -133
  214. data/examples/celes_parts/zp.c +0 -77
  215. data/examples/celes_parts/zpv.c +0 -79
  216. data/examples/celes_parts/zr.c +0 -83
  217. data/examples/check_date_type.rb +0 -55
  218. data/examples/compare_geoc_long_ra.rb +0 -39
  219. data/examples/data_table_for_astro_dog.rb +0 -40
  220. data/examples/earth_rotation.rb +0 -38
  221. data/examples/eot.c +0 -15
  222. data/examples/eot.h +0 -2
  223. data/examples/eot_methods_list.rb +0 -43
  224. data/examples/eot_plot.r +0 -57
  225. data/examples/eot_suntimes.rb +0 -144
  226. data/examples/equation_of_time.py +0 -186
  227. data/examples/extconf.rb +0 -2
  228. data/examples/figure_1.jpg +0 -0
  229. data/examples/file_converter.rb +0 -31
  230. data/examples/from_readme.rb +0 -10
  231. data/examples/geo_locator.rb +0 -12
  232. data/examples/getjd.rb +0 -45
  233. data/examples/gmst_gast_non_sofa.rb +0 -404
  234. data/examples/input_suntimes.rb +0 -21
  235. data/examples/julian_day_formula.rb +0 -29
  236. data/examples/julian_day_formula.txt +0 -12
  237. data/examples/my_time_conversion.rb +0 -21
  238. data/examples/nutation_series.txt +0 -678
  239. data/examples/nutation_series.yaml +0 -14239
  240. data/examples/nutation_table5_3a.txt +0 -682
  241. data/examples/nutation_table5_3a.yaml +0 -9532
  242. data/examples/ptime.rb +0 -162
  243. data/examples/rbeot.c +0 -24
  244. data/examples/suntimes.rb +0 -28
  245. data/examples/suntimes_test.rb +0 -47
  246. data/examples/test_eot.rb +0 -17
  247. data/examples/test_poly_eval.rb +0 -27
  248. data/examples/time_scales.rb +0 -26
  249. data/examples/times_year.rb +0 -50
  250. data/examples/usage_example.rb +0 -23
  251. data/examples/use_angles.rb +0 -219
  252. data/rise_set_data.yml +0 -1461
  253. data/tests/minitest/aliased_angles_spec.rb +0 -241
  254. data/tests/minitest/aliased_displays_spec.rb +0 -108
  255. data/tests/minitest/aliased_utilities_spec.rb +0 -38
  256. data/tests/minitest/angles_spec.rb +0 -266
  257. data/tests/minitest/constants_spec.rb +0 -21
  258. data/tests/minitest/delta_epsilon_spec.rb +0 -32
  259. data/tests/minitest/displays_spec.rb +0 -113
  260. data/tests/minitest/geo_spec.rb +0 -40
  261. data/tests/minitest/init_spec.rb +0 -46
  262. data/tests/minitest/nutation_spec.rb +0 -39
  263. data/tests/minitest/times_spec.rb +0 -139
  264. data/tests/minitest/utilities_spec.rb +0 -37
  265. data/tests/spec_config.rb +0 -3
@@ -1,131 +0,0 @@
1
- #include "sofam.h"
2
-
3
- double iauEqeq94(double date1, double date2)
4
- /*
5
- ** - - - - - - - - - -
6
- ** i a u E q e q 9 4
7
- ** - - - - - - - - - -
8
- **
9
- ** Equation of the equinoxes, IAU 1994 model.
10
- **
11
- ** Status: canonical model.
12
- **
13
- ** Given:
14
- ** date1,date2 double TDB date (Note 1)
15
- **
16
- ** Returned (function value):
17
- ** double equation of the equinoxes (Note 2)
18
- **
19
- ** Notes:
20
- **
21
- ** 1) The date date1+date2 is a Julian Date, apportioned in any
22
- ** convenient way between the two arguments. For example,
23
- ** JD(TT)=2450123.7 could be expressed in any of these ways,
24
- ** among others:
25
- **
26
- ** date1 date2
27
- **
28
- ** 2450123.7 0.0 (JD method)
29
- ** 2451545.0 -1421.3 (J2000 method)
30
- ** 2400000.5 50123.2 (MJD method)
31
- ** 2450123.5 0.2 (date & time method)
32
- **
33
- ** The JD method is the most natural and convenient to use in
34
- ** cases where the loss of several decimal digits of resolution
35
- ** is acceptable. The J2000 method is best matched to the way
36
- ** the argument is handled internally and will deliver the
37
- ** optimum resolution. The MJD method and the date & time methods
38
- ** are both good compromises between resolution and convenience.
39
- **
40
- ** 2) The result, which is in radians, operates in the following sense:
41
- **
42
- ** Greenwich apparent ST = GMST + equation of the equinoxes
43
- **
44
- ** Called:
45
- ** iauNut80 nutation, IAU 1980
46
- ** iauObl80 mean obliquity, IAU 1980
47
- **
48
- ** References:
49
- **
50
- ** IAU Resolution C7, Recommendation 3 (1994).
51
- **
52
- ** Capitaine, N. & Gontier, A.-M., 1993, Astron. Astrophys., 275,
53
- ** 645-650.
54
- **
55
- ** This revision: 2008 May 24
56
- **
57
- ** Original version 2012-03-01
58
- **
59
- ** Copyright (C) 2013 Naoki Arita. See notes at end.
60
- */
61
- {
62
- double t, om, dpsi, deps, eps0, ee;
63
-
64
-
65
- /* Interval between fundamental epoch J2000.0 and given date (JC). */
66
- t = ((date1 - DJ00) + date2) / DJC;
67
-
68
- /* Longitude of the mean ascending node of the lunar orbit on the */
69
- /* ecliptic, measured from the mean equinox of date. */
70
- om = iauAnpm((450160.280 + (-482890.539
71
- + (7.455 + 0.008 * t) * t) * t) * DAS2R
72
- + fmod(-5.0 * t, 1.0) * D2PI);
73
-
74
- /* Nutation components and mean obliquity. */
75
- iauNut80(date1, date2, &dpsi, &deps);
76
- eps0 = iauObl80(date1, date2);
77
-
78
- /* Equation of the equinoxes. */
79
- ee = dpsi*cos(eps0) + DAS2R*(0.00264*sin(om) + 0.000063*sin(om+om));
80
-
81
- return ee;
82
-
83
- /*----------------------------------------------------------------------
84
- **
85
- ** Celes is a wrapper of the SOFA Library for Ruby.
86
- **
87
- ** This file is redistributed and relicensed in accordance with
88
- ** the SOFA Software License (http://www.iausofa.org/tandc.html).
89
- **
90
- ** The original library is available from IAU Standards of
91
- ** Fundamental Astronomy (http://www.iausofa.org/).
92
- **
93
- **
94
- **
95
- **
96
- **
97
- ** Copyright (C) 2013, Naoki Arita
98
- ** All rights reserved.
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
- }
@@ -1,136 +0,0 @@
1
- #include "sofam.h"
2
-
3
- double iauEra00(double dj1, double dj2)
4
- /*
5
- ** - - - - - - - - -
6
- ** i a u E r a 0 0
7
- ** - - - - - - - - -
8
- **
9
- ** Earth rotation angle (IAU 2000 model).
10
- **
11
- ** Status: canonical model.
12
- **
13
- ** Given:
14
- ** dj1,dj2 double UT1 as a 2-part Julian Date (see note)
15
- **
16
- ** Returned (function value):
17
- ** double Earth rotation angle (radians), range 0-2pi
18
- **
19
- ** Notes:
20
- **
21
- ** 1) The UT1 date dj1+dj2 is a Julian Date, apportioned in any
22
- ** convenient way between the arguments dj1 and dj2. For example,
23
- ** JD(UT1)=2450123.7 could be expressed in any of these ways,
24
- ** among others:
25
- **
26
- ** dj1 dj2
27
- **
28
- ** 2450123.7 0.0 (JD method)
29
- ** 2451545.0 -1421.3 (J2000 method)
30
- ** 2400000.5 50123.2 (MJD method)
31
- ** 2450123.5 0.2 (date & time method)
32
- **
33
- ** The JD method is the most natural and convenient to use in
34
- ** cases where the loss of several decimal digits of resolution
35
- ** is acceptable. The J2000 and MJD methods are good compromises
36
- ** between resolution and convenience. The date & time method is
37
- ** best matched to the algorithm used: maximum precision is
38
- ** delivered when the dj1 argument is for 0hrs UT1 on the day in
39
- ** question and the dj2 argument lies in the range 0 to 1, or vice
40
- ** versa.
41
- **
42
- ** 2) The algorithm is adapted from Expression 22 of Capitaine et al.
43
- ** 2000. The time argument has been expressed in days directly,
44
- ** and, to retain precision, integer contributions have been
45
- ** eliminated. The same formulation is given in IERS Conventions
46
- ** (2003), Chap. 5, Eq. 14.
47
- **
48
- ** Called:
49
- ** iauAnp normalize angle into range 0 to 2pi
50
- **
51
- ** References:
52
- **
53
- ** Capitaine N., Guinot B. and McCarthy D.D, 2000, Astron.
54
- ** Astrophys., 355, 398-405.
55
- **
56
- ** McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003),
57
- ** IERS Technical Note No. 32, BKG (2004)
58
- **
59
- ** This revision: 2008 May 24
60
- **
61
- ** Original version 2012-03-01
62
- **
63
- ** Copyright (C) 2013 Naoki Arita. See notes at end.
64
- */
65
- {
66
- double d1, d2, t, f, theta;
67
-
68
-
69
- /* Days since fundamental epoch. */
70
- if (dj1 < dj2) {
71
- d1 = dj1;
72
- d2 = dj2;
73
- } else {
74
- d1 = dj2;
75
- d2 = dj1;
76
- }
77
- t = d1 + (d2- DJ00);
78
-
79
- /* Fractional part of T (days). */
80
- f = fmod(d1, 1.0) + fmod(d2, 1.0);
81
-
82
- /* Earth rotation angle at this UT1. */
83
- theta = iauAnp(D2PI * (f + 0.7790572732640
84
- + 0.00273781191135448 * t));
85
-
86
- return theta;
87
-
88
- /*----------------------------------------------------------------------
89
- **
90
- ** Celes is a wrapper of the SOFA Library for Ruby.
91
- **
92
- ** This file is redistributed and relicensed in accordance with
93
- ** the SOFA Software License (http://www.iausofa.org/tandc.html).
94
- **
95
- ** The original library is available from IAU Standards of
96
- ** Fundamental Astronomy (http://www.iausofa.org/).
97
- **
98
- **
99
- **
100
- **
101
- **
102
- ** Copyright (C) 2013, Naoki Arita
103
- ** All rights reserved.
104
- **
105
- ** Redistribution and use in source and binary forms, with or without
106
- ** modification, are permitted provided that the following conditions
107
- ** are met:
108
- **
109
- ** 1 Redistributions of source code must retain the above copyright
110
- ** notice, this list of conditions and the following disclaimer.
111
- **
112
- ** 2 Redistributions in binary form must reproduce the above copyright
113
- ** notice, this list of conditions and the following disclaimer in
114
- ** the documentation and/or other materials provided with the
115
- ** distribution.
116
- **
117
- ** 3 Neither the name of the Standards Of Fundamental Astronomy Board,
118
- ** the International Astronomical Union nor the names of its
119
- ** contributors may be used to endorse or promote products derived
120
- ** from this software without specific prior written permission.
121
- **
122
- ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
123
- ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
124
- ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
125
- ** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
126
- ** COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
127
- ** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
128
- ** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
129
- ** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
130
- ** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
131
- ** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
132
- ** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
133
- ** POSSIBILITY OF SUCH DAMAGE.
134
- **
135
- **--------------------------------------------------------------------*/
136
- }
@@ -1,4 +0,0 @@
1
- #!/usr/local/bin/ruby
2
-
3
- require 'mkmf'
4
- create_makefile 'celes_core'
@@ -1,103 +0,0 @@
1
- #include "sofam.h"
2
-
3
- double iauFad03(double t)
4
- /*
5
- ** - - - - - - - - -
6
- ** i a u F a d 0 3
7
- ** - - - - - - - - -
8
- **
9
- ** Fundamental argument, IERS Conventions (2003):
10
- ** mean elongation of the Moon from the Sun.
11
- **
12
- ** Status: canonical model.
13
- **
14
- ** Given:
15
- ** t double TDB, Julian centuries since J2000.0 (Note 1)
16
- **
17
- ** Returned (function value):
18
- ** double D, radians (Note 2)
19
- **
20
- ** Notes:
21
- **
22
- ** 1) Though t is strictly TDB, it is usually more convenient to use
23
- ** TT, which makes no significant difference.
24
- **
25
- ** 2) The expression used is as adopted in IERS Conventions (2003) and
26
- ** is from Simon et al. (1994).
27
- **
28
- ** References:
29
- **
30
- ** McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003),
31
- ** IERS Technical Note No. 32, BKG (2004)
32
- **
33
- ** Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M.,
34
- ** Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683
35
- **
36
- ** This revision: 2009 December 16
37
- **
38
- ** Original version 2012-03-01
39
- **
40
- ** Copyright (C) 2013 Naoki Arita. See notes at end.
41
- */
42
- {
43
- double a;
44
-
45
-
46
- /* Mean elongation of the Moon from the Sun (IERS Conventions 2003). */
47
- a = fmod( 1072260.703692 +
48
- t * ( 1602961601.2090 +
49
- t * ( - 6.3706 +
50
- t * ( 0.006593 +
51
- t * ( - 0.00003169 ) ) ) ), TURNAS ) * DAS2R;
52
-
53
- return a;
54
-
55
- /*----------------------------------------------------------------------
56
- **
57
- ** Celes is a wrapper of the SOFA Library for Ruby.
58
- **
59
- ** This file is redistributed and relicensed in accordance with
60
- ** the SOFA Software License (http://www.iausofa.org/tandc.html).
61
- **
62
- ** The original library is available from IAU Standards of
63
- ** Fundamental Astronomy (http://www.iausofa.org/).
64
- **
65
- **
66
- **
67
- **
68
- **
69
- ** Copyright (C) 2013, Naoki Arita
70
- ** All rights reserved.
71
- **
72
- ** Redistribution and use in source and binary forms, with or without
73
- ** modification, are permitted provided that the following conditions
74
- ** are met:
75
- **
76
- ** 1 Redistributions of source code must retain the above copyright
77
- ** notice, this list of conditions and the following disclaimer.
78
- **
79
- ** 2 Redistributions in binary form must reproduce the above copyright
80
- ** notice, this list of conditions and the following disclaimer in
81
- ** the documentation and/or other materials provided with the
82
- ** distribution.
83
- **
84
- ** 3 Neither the name of the Standards Of Fundamental Astronomy Board,
85
- ** the International Astronomical Union nor the names of its
86
- ** contributors may be used to endorse or promote products derived
87
- ** from this software without specific prior written permission.
88
- **
89
- ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
90
- ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
91
- ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
92
- ** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
93
- ** COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
94
- ** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
95
- ** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
96
- ** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
97
- ** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
98
- ** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
99
- ** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
100
- ** POSSIBILITY OF SUCH DAMAGE.
101
- **
102
- **--------------------------------------------------------------------*/
103
- }
@@ -1,102 +0,0 @@
1
- #include "sofam.h"
2
-
3
- double iauFae03(double t)
4
- /*
5
- ** - - - - - - - - -
6
- ** i a u F a e 0 3
7
- ** - - - - - - - - -
8
- **
9
- ** Fundamental argument, IERS Conventions (2003):
10
- ** mean longitude of Earth.
11
- **
12
- ** Status: canonical model.
13
- **
14
- ** Given:
15
- ** t double TDB, Julian centuries since J2000.0 (Note 1)
16
- **
17
- ** Returned (function value):
18
- ** double mean longitude of Earth, radians (Note 2)
19
- **
20
- ** Notes:
21
- **
22
- ** 1) Though t is strictly TDB, it is usually more convenient to use
23
- ** TT, which makes no significant difference.
24
- **
25
- ** 2) The expression used is as adopted in IERS Conventions (2003) and
26
- ** comes from Souchay et al. (1999) after Simon et al. (1994).
27
- **
28
- ** References:
29
- **
30
- ** McCarthy, D. D., Petit, G. (eds.), IERS Conventions (2003),
31
- ** IERS Technical Note No. 32, BKG (2004)
32
- **
33
- ** Simon, J.-L., Bretagnon, P., Chapront, J., Chapront-Touze, M.,
34
- ** Francou, G., Laskar, J. 1994, Astron.Astrophys. 282, 663-683
35
- **
36
- ** Souchay, J., Loysel, B., Kinoshita, H., Folgueira, M. 1999,
37
- ** Astron.Astrophys.Supp.Ser. 135, 111
38
- **
39
- ** This revision: 2009 December 16
40
- **
41
- ** Original version 2012-03-01
42
- **
43
- ** Copyright (C) 2013 Naoki Arita. See notes at end.
44
- */
45
- {
46
- double a;
47
-
48
-
49
- /* Mean longitude of Earth (IERS Conventions 2003). */
50
- a = fmod(1.753470314 + 628.3075849991 * t, D2PI);
51
-
52
- return a;
53
-
54
- /*----------------------------------------------------------------------
55
- **
56
- ** Celes is a wrapper of the SOFA Library for Ruby.
57
- **
58
- ** This file is redistributed and relicensed in accordance with
59
- ** the SOFA Software License (http://www.iausofa.org/tandc.html).
60
- **
61
- ** The original library is available from IAU Standards of
62
- ** Fundamental Astronomy (http://www.iausofa.org/).
63
- **
64
- **
65
- **
66
- **
67
- **
68
- ** Copyright (C) 2013, Naoki Arita
69
- ** All rights reserved.
70
- **
71
- ** Redistribution and use in source and binary forms, with or without
72
- ** modification, are permitted provided that the following conditions
73
- ** are met:
74
- **
75
- ** 1 Redistributions of source code must retain the above copyright
76
- ** notice, this list of conditions and the following disclaimer.
77
- **
78
- ** 2 Redistributions in binary form must reproduce the above copyright
79
- ** notice, this list of conditions and the following disclaimer in
80
- ** the documentation and/or other materials provided with the
81
- ** distribution.
82
- **
83
- ** 3 Neither the name of the Standards Of Fundamental Astronomy Board,
84
- ** the International Astronomical Union nor the names of its
85
- ** contributors may be used to endorse or promote products derived
86
- ** from this software without specific prior written permission.
87
- **
88
- ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
89
- ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
90
- ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
91
- ** FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
92
- ** COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
93
- ** INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
94
- ** BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
95
- ** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
96
- ** CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
97
- ** LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
98
- ** ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
99
- ** POSSIBILITY OF SUCH DAMAGE.
100
- **
101
- **--------------------------------------------------------------------*/
102
- }