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,131 @@
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
+ }
@@ -0,0 +1,136 @@
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
+ }
@@ -0,0 +1,4 @@
1
+ #!/usr/local/bin/ruby
2
+
3
+ require 'mkmf'
4
+ create_makefile 'celes_core'
@@ -0,0 +1,103 @@
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
+ }
@@ -0,0 +1,102 @@
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
+ }