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.
- data/.gitignore +17 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +32 -0
- data/README.md +179 -0
- data/Rakefile +1 -0
- data/celes.gemspec +22 -0
- data/ext/celes/a2af.c +120 -0
- data/ext/celes/a2tf.c +116 -0
- data/ext/celes/af2a.c +107 -0
- data/ext/celes/anp.c +82 -0
- data/ext/celes/anpm.c +82 -0
- data/ext/celes/bi00.c +116 -0
- data/ext/celes/bp00.c +173 -0
- data/ext/celes/bp06.c +136 -0
- data/ext/celes/bpn2xy.c +100 -0
- data/ext/celes/c2i00a.c +139 -0
- data/ext/celes/c2i00b.c +139 -0
- data/ext/celes/c2i06a.c +136 -0
- data/ext/celes/c2ibpn.c +142 -0
- data/ext/celes/c2ixy.c +131 -0
- data/ext/celes/c2ixys.c +123 -0
- data/ext/celes/c2s.c +96 -0
- data/ext/celes/c2t00a.c +154 -0
- data/ext/celes/c2t00b.c +150 -0
- data/ext/celes/c2t06a.c +152 -0
- data/ext/celes/c2tcio.c +122 -0
- data/ext/celes/c2teqx.c +122 -0
- data/ext/celes/c2tpe.c +167 -0
- data/ext/celes/c2txy.c +159 -0
- data/ext/celes/cal2jd.c +139 -0
- data/ext/celes/celes_core.c +2522 -0
- data/ext/celes/cp.c +80 -0
- data/ext/celes/cpv.c +82 -0
- data/ext/celes/cr.c +83 -0
- data/ext/celes/d2dtf.c +206 -0
- data/ext/celes/d2tf.c +160 -0
- data/ext/celes/dat.c +289 -0
- data/ext/celes/depend +25 -0
- data/ext/celes/dtdb.c +1213 -0
- data/ext/celes/dtf2d.c +196 -0
- data/ext/celes/ee00.c +128 -0
- data/ext/celes/ee00a.c +135 -0
- data/ext/celes/ee00b.c +141 -0
- data/ext/celes/ee06a.c +122 -0
- data/ext/celes/eect00.c +282 -0
- data/ext/celes/eform.c +147 -0
- data/ext/celes/eo06a.c +131 -0
- data/ext/celes/eors.c +108 -0
- data/ext/celes/epb.c +96 -0
- data/ext/celes/epb2jd.c +91 -0
- data/ext/celes/epj.c +93 -0
- data/ext/celes/epj2jd.c +91 -0
- data/ext/celes/epv00.c +2589 -0
- data/ext/celes/eqeq94.c +131 -0
- data/ext/celes/era00.c +136 -0
- data/ext/celes/extconf.rb +4 -0
- data/ext/celes/fad03.c +103 -0
- data/ext/celes/fae03.c +102 -0
- data/ext/celes/faf03.c +106 -0
- data/ext/celes/faju03.c +102 -0
- data/ext/celes/fal03.c +103 -0
- data/ext/celes/falp03.c +103 -0
- data/ext/celes/fama03.c +102 -0
- data/ext/celes/fame03.c +102 -0
- data/ext/celes/fane03.c +99 -0
- data/ext/celes/faom03.c +104 -0
- data/ext/celes/fapa03.c +103 -0
- data/ext/celes/fasa03.c +102 -0
- data/ext/celes/faur03.c +99 -0
- data/ext/celes/fave03.c +102 -0
- data/ext/celes/fk52h.c +143 -0
- data/ext/celes/fk5hip.c +126 -0
- data/ext/celes/fk5hz.c +160 -0
- data/ext/celes/fw2m.c +134 -0
- data/ext/celes/fw2xy.c +120 -0
- data/ext/celes/gc2gd.c +134 -0
- data/ext/celes/gc2gde.c +200 -0
- data/ext/celes/gd2gc.c +134 -0
- data/ext/celes/gd2gce.c +138 -0
- data/ext/celes/gmst00.c +145 -0
- data/ext/celes/gmst06.c +136 -0
- data/ext/celes/gmst82.c +151 -0
- data/ext/celes/gst00a.c +138 -0
- data/ext/celes/gst00b.c +146 -0
- data/ext/celes/gst06.c +140 -0
- data/ext/celes/gst06a.c +131 -0
- data/ext/celes/gst94.c +131 -0
- data/ext/celes/h2fk5.c +148 -0
- data/ext/celes/hfk5z.c +175 -0
- data/ext/celes/ir.c +83 -0
- data/ext/celes/jd2cal.c +155 -0
- data/ext/celes/jdcalf.c +161 -0
- data/ext/celes/num00a.c +121 -0
- data/ext/celes/num00b.c +121 -0
- data/ext/celes/num06a.c +125 -0
- data/ext/celes/numat.c +109 -0
- data/ext/celes/nut00a.c +2047 -0
- data/ext/celes/nut00b.c +372 -0
- data/ext/celes/nut06a.c +153 -0
- data/ext/celes/nut80.c +325 -0
- data/ext/celes/nutm80.c +117 -0
- data/ext/celes/obl06.c +118 -0
- data/ext/celes/obl80.c +118 -0
- data/ext/celes/p06e.c +321 -0
- data/ext/celes/p2pv.c +83 -0
- data/ext/celes/p2s.c +91 -0
- data/ext/celes/pap.c +139 -0
- data/ext/celes/pas.c +96 -0
- data/ext/celes/pb06.c +144 -0
- data/ext/celes/pdp.c +84 -0
- data/ext/celes/pfw06.c +165 -0
- data/ext/celes/plan94.c +514 -0
- data/ext/celes/pm.c +83 -0
- data/ext/celes/pmat00.c +118 -0
- data/ext/celes/pmat06.c +122 -0
- data/ext/celes/pmat76.c +141 -0
- data/ext/celes/pmp.c +85 -0
- data/ext/celes/pn.c +109 -0
- data/ext/celes/pn00.c +177 -0
- data/ext/celes/pn00a.c +162 -0
- data/ext/celes/pn00b.c +162 -0
- data/ext/celes/pn06.c +187 -0
- data/ext/celes/pn06a.c +152 -0
- data/ext/celes/pnm00a.c +121 -0
- data/ext/celes/pnm00b.c +121 -0
- data/ext/celes/pnm06a.c +124 -0
- data/ext/celes/pnm80.c +126 -0
- data/ext/celes/pom00.c +115 -0
- data/ext/celes/ppp.c +85 -0
- data/ext/celes/ppsp.c +94 -0
- data/ext/celes/pr00.c +142 -0
- data/ext/celes/prec76.c +148 -0
- data/ext/celes/pv2p.c +81 -0
- data/ext/celes/pv2s.c +144 -0
- data/ext/celes/pvdpv.c +102 -0
- data/ext/celes/pvm.c +86 -0
- data/ext/celes/pvmpv.c +87 -0
- data/ext/celes/pvppv.c +87 -0
- data/ext/celes/pvstar.c +207 -0
- data/ext/celes/pvu.c +93 -0
- data/ext/celes/pvup.c +88 -0
- data/ext/celes/pvxpv.c +107 -0
- data/ext/celes/pxp.c +94 -0
- data/ext/celes/rm2v.c +111 -0
- data/ext/celes/rv2m.c +118 -0
- data/ext/celes/rx.c +110 -0
- data/ext/celes/rxp.c +99 -0
- data/ext/celes/rxpv.c +86 -0
- data/ext/celes/rxr.c +99 -0
- data/ext/celes/ry.c +110 -0
- data/ext/celes/rz.c +110 -0
- data/ext/celes/s00.c +371 -0
- data/ext/celes/s00a.c +143 -0
- data/ext/celes/s00b.c +143 -0
- data/ext/celes/s06.c +368 -0
- data/ext/celes/s06a.c +145 -0
- data/ext/celes/s2c.c +85 -0
- data/ext/celes/s2p.c +88 -0
- data/ext/celes/s2pv.c +103 -0
- data/ext/celes/s2xpv.c +87 -0
- data/ext/celes/sepp.c +105 -0
- data/ext/celes/seps.c +93 -0
- data/ext/celes/sofa.h +379 -0
- data/ext/celes/sofam.h +155 -0
- data/ext/celes/sp00.c +118 -0
- data/ext/celes/starpm.c +205 -0
- data/ext/celes/starpv.c +264 -0
- data/ext/celes/sxp.c +84 -0
- data/ext/celes/sxpv.c +85 -0
- data/ext/celes/taitt.c +110 -0
- data/ext/celes/taiut1.c +112 -0
- data/ext/celes/taiutc.c +182 -0
- data/ext/celes/tcbtdb.c +132 -0
- data/ext/celes/tcgtt.c +109 -0
- data/ext/celes/tdbtcb.c +137 -0
- data/ext/celes/tdbtt.c +122 -0
- data/ext/celes/tf2a.c +107 -0
- data/ext/celes/tf2d.c +107 -0
- data/ext/celes/tr.c +93 -0
- data/ext/celes/trxp.c +93 -0
- data/ext/celes/trxpv.c +93 -0
- data/ext/celes/tttai.c +110 -0
- data/ext/celes/tttcg.c +112 -0
- data/ext/celes/tttdb.c +121 -0
- data/ext/celes/ttut1.c +110 -0
- data/ext/celes/ut1tai.c +111 -0
- data/ext/celes/ut1tt.c +110 -0
- data/ext/celes/ut1utc.c +193 -0
- data/ext/celes/utctai.c +163 -0
- data/ext/celes/utcut1.c +151 -0
- data/ext/celes/xy06.c +2758 -0
- data/ext/celes/xys00a.c +133 -0
- data/ext/celes/xys00b.c +133 -0
- data/ext/celes/xys06a.c +133 -0
- data/ext/celes/zp.c +77 -0
- data/ext/celes/zpv.c +79 -0
- data/ext/celes/zr.c +83 -0
- data/lib/celes.rb +6 -0
- data/lib/celes/version.rb +3 -0
- data/sofa_20120301.diff +31384 -0
- data/test/t_sofa.rb +8228 -0
- metadata +251 -0
data/ext/celes/eqeq94.c
ADDED
|
@@ -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
|
+
}
|
data/ext/celes/era00.c
ADDED
|
@@ -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
|
+
}
|
data/ext/celes/fad03.c
ADDED
|
@@ -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
|
+
}
|
data/ext/celes/fae03.c
ADDED
|
@@ -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
|
+
}
|