celestial-chart 0.8.0
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.
- package/CHANGELOG.md +105 -0
- package/LICENSE +13 -0
- package/NOTICE.md +41 -0
- package/README.md +192 -0
- package/build/celestial.cjs +15354 -0
- package/build/celestial.js +15330 -0
- package/build/celestial.min.js +7 -0
- package/build/celestial.mjs +15333 -0
- package/celestial.css +111 -0
- package/images/dtpick.png +0 -0
- package/lib/geo-zoom.js +116 -0
- package/package.json +89 -0
- package/src/add.js +46 -0
- package/src/canvas.js +269 -0
- package/src/celestial.js +1177 -0
- package/src/config.js +537 -0
- package/src/core.js +14 -0
- package/src/d3.js +28 -0
- package/src/datetimepicker.js +233 -0
- package/src/form.js +837 -0
- package/src/get.js +210 -0
- package/src/global.js +4 -0
- package/src/horizontal.js +98 -0
- package/src/index.js +8 -0
- package/src/kepler.js +481 -0
- package/src/location.js +359 -0
- package/src/moon.js +522 -0
- package/src/projection.js +205 -0
- package/src/svg.js +879 -0
- package/src/timezones.js +71 -0
- package/src/transform.js +94 -0
- package/src/util.js +275 -0
- package/types/celestial.d.ts +545 -0
package/src/moon.js
ADDED
|
@@ -0,0 +1,522 @@
|
|
|
1
|
+
import { deg2rad } from "./transform.js";
|
|
2
|
+
import { Trig } from "./util.js";
|
|
3
|
+
|
|
4
|
+
/* global Trig, deg2rad */
|
|
5
|
+
var Moon = {
|
|
6
|
+
elements: function(dat) {
|
|
7
|
+
var t = (dat.jd - 2451545) / 36525,
|
|
8
|
+
t2 = t * t,
|
|
9
|
+
t3 = t * t2,
|
|
10
|
+
t4 = t * t3,
|
|
11
|
+
t5 = t * t4,
|
|
12
|
+
t2e4 = t2 * 1e-4,
|
|
13
|
+
t3e6 = t3 * 1e-6,
|
|
14
|
+
t4e8 = t4 * 1e-8;
|
|
15
|
+
|
|
16
|
+
// semimajor axis
|
|
17
|
+
var sa = 3400.4 * Math.cos(deg2rad * (235.7004 + 890534.2230 * t - 32.601 * t2e4
|
|
18
|
+
+ 3.664 * t3e6 - 1.769 * t4e8))
|
|
19
|
+
- 635.6 * Math.cos(deg2rad * (100.7370 + 413335.3554 * t - 122.571 * t2e4
|
|
20
|
+
- 10.684 * t3e6 + 5.028 * t4e8))
|
|
21
|
+
- 235.6 * Math.cos(deg2rad * (134.9634 + 477198.8676 * t + 89.970 * t2e4
|
|
22
|
+
+ 14.348 * t3e6 - 6.797 * t4e8))
|
|
23
|
+
+ 218.1 * Math.cos(deg2rad * (238.1713 + 854535.1727 * t - 31.065 * t2e4
|
|
24
|
+
+ 3.623 * t3e6 - 1.769 * t4e8))
|
|
25
|
+
+ 181.0 * Math.cos(deg2rad * (10.6638 + 1367733.0907 * t + 57.370 * t2e4
|
|
26
|
+
+ 18.011 * t3e6 - 8.566 * t4e8))
|
|
27
|
+
- 39.9 * Math.cos(deg2rad * (103.2079 + 377336.3051 * t - 121.035 * t2e4
|
|
28
|
+
- 10.724 * t3e6 + 5.028 * t4e8))
|
|
29
|
+
- 38.4 * Math.cos(deg2rad * (233.2295 + 926533.2733 * t - 34.136 * t2e4
|
|
30
|
+
+ 3.705 * t3e6 - 1.769 * t4e8))
|
|
31
|
+
+ 33.8 * Math.cos(deg2rad * (336.4374 + 1303869.5784 * t - 155.171 * t2e4
|
|
32
|
+
- 7.020 * t3e6 + 3.259 * t4e8))
|
|
33
|
+
+ 28.8 * Math.cos(deg2rad * (111.4008 + 1781068.4461 * t - 65.201 * t2e4
|
|
34
|
+
+ 7.328 * t3e6 - 3.538 * t4e8))
|
|
35
|
+
+ 12.6 * Math.cos(deg2rad * (13.1347 + 1331734.0404 * t + 58.906 * t2e4
|
|
36
|
+
+ 17.971 * t3e6 - 8.566 * t4e8))
|
|
37
|
+
+ 11.4 * Math.cos(deg2rad * (186.5442 + 966404.0351 * t - 68.058 * t2e4
|
|
38
|
+
- 0.567 * t3e6 + 0.232 * t4e8))
|
|
39
|
+
- 11.1 * Math.cos(deg2rad * (222.5657 - 441199.8173 * t - 91.506 * t2e4
|
|
40
|
+
- 14.307 * t3e6 + 6.797 * t4e8))
|
|
41
|
+
- 10.2 * Math.cos(deg2rad * (269.9268 + 954397.7353 * t + 179.941 * t2e4
|
|
42
|
+
+ 28.695 * t3e6 - 13.594 * t4e8))
|
|
43
|
+
+ 9.7 * Math.cos(deg2rad * (145.6272 + 1844931.9583 * t + 147.340 * t2e4
|
|
44
|
+
+ 32.359 * t3e6 - 15.363 * t4e8))
|
|
45
|
+
+ 9.6 * Math.cos(deg2rad * (240.6422 + 818536.1225 * t - 29.529 * t2e4
|
|
46
|
+
+ 3.582 * t3e6 - 1.769 * t4e8))
|
|
47
|
+
+ 8.0 * Math.cos(deg2rad * (297.8502 + 445267.1115 * t - 16.300 * t2e4
|
|
48
|
+
+ 1.832 * t3e6 - 0.884 * t4e8))
|
|
49
|
+
- 6.2 * Math.cos(deg2rad * (132.4925 + 513197.9179 * t + 88.434 * t2e4
|
|
50
|
+
+ 14.388 * t3e6 - 6.797 * t4e8))
|
|
51
|
+
+ 6.0 * Math.cos(deg2rad * (173.5506 + 1335801.3346 * t - 48.901 * t2e4
|
|
52
|
+
+ 5.496 * t3e6 - 2.653 * t4e8))
|
|
53
|
+
+ 3.7 * Math.cos(deg2rad * (113.8717 + 1745069.3958 * t - 63.665 * t2e4
|
|
54
|
+
+ 7.287 * t3e6 - 3.538 * t4e8))
|
|
55
|
+
+ 3.6 * Math.cos(deg2rad * (338.9083 + 1267870.5281 * t - 153.636 * t2e4
|
|
56
|
+
- 7.061 * t3e6 + 3.259 * t4e8))
|
|
57
|
+
+ 3.2 * Math.cos(deg2rad * (246.3642 + 2258267.3137 * t + 24.769 * t2e4
|
|
58
|
+
+ 21.675 * t3e6 - 10.335 * t4e8))
|
|
59
|
+
- 3.0 * Math.cos(deg2rad * (8.1929 + 1403732.1410 * t + 55.834 * t2e4
|
|
60
|
+
+ 18.052 * t3e6 - 8.566 * t4e8))
|
|
61
|
+
+ 2.3 * Math.cos(deg2rad * (98.2661 + 449334.4057 * t - 124.107 * t2e4
|
|
62
|
+
- 10.643 * t3e6 + 5.028 * t4e8))
|
|
63
|
+
- 2.2 * Math.cos(deg2rad * (357.5291 + 35999.0503 * t - 1.536 * t2e4
|
|
64
|
+
+ 0.041 * t3e6 + 0.000 * t4e8))
|
|
65
|
+
- 2.0 * Math.cos(deg2rad * (38.5872 + 858602.4669 * t - 138.871 * t2e4
|
|
66
|
+
- 8.852 * t3e6 + 4.144 * t4e8))
|
|
67
|
+
- 1.8 * Math.cos(deg2rad * (105.6788 + 341337.2548 * t - 119.499 * t2e4
|
|
68
|
+
- 10.765 * t3e6 + 5.028 * t4e8))
|
|
69
|
+
- 1.7 * Math.cos(deg2rad * (201.4740 + 826670.7108 * t - 245.142 * t2e4
|
|
70
|
+
- 21.367 * t3e6 + 10.057 * t4e8))
|
|
71
|
+
+ 1.6 * Math.cos(deg2rad * (184.1196 + 401329.0556 * t + 125.428 * t2e4
|
|
72
|
+
+ 18.579 * t3e6 - 8.798 * t4e8))
|
|
73
|
+
- 1.4 * Math.cos(deg2rad * (308.4192 - 489205.1674 * t + 158.029 * t2e4
|
|
74
|
+
+ 14.915 * t3e6 - 7.029 * t4e8))
|
|
75
|
+
+ 1.3 * Math.cos(deg2rad * (325.7736 - 63863.5122 * t - 212.541 * t2e4
|
|
76
|
+
- 25.031 * t3e6 + 11.826 * t4e8));
|
|
77
|
+
|
|
78
|
+
var sapp = - 0.55 * Math.cos(deg2rad * (238.2 + 854535.2 * t))
|
|
79
|
+
+ 0.10 * Math.cos(deg2rad * (103.2 + 377336.3 * t))
|
|
80
|
+
+ 0.10 * Math.cos(deg2rad * (233.2 + 926533.3 * t));
|
|
81
|
+
|
|
82
|
+
var sma = 383397.6 + sa + sapp * t;
|
|
83
|
+
|
|
84
|
+
// orbital eccentricity
|
|
85
|
+
|
|
86
|
+
var se = 0.014217 * Math.cos(deg2rad * (100.7370 + 413335.3554 * t - 122.571 * t2e4
|
|
87
|
+
- 10.684 * t3e6 + 5.028 * t4e8))
|
|
88
|
+
+ 0.008551 * Math.cos(deg2rad * (325.7736 - 63863.5122 * t - 212.541 * t2e4
|
|
89
|
+
- 25.031 * t3e6 + 11.826 * t4e8))
|
|
90
|
+
- 0.001383 * Math.cos(deg2rad * (134.9634 + 477198.8676 * t + 89.970 * t2e4
|
|
91
|
+
+ 14.348 * t3e6 - 6.797 * t4e8))
|
|
92
|
+
+ 0.001353 * Math.cos(deg2rad * (10.6638 + 1367733.0907 * t + 57.370 * t2e4
|
|
93
|
+
+ 18.011 * t3e6 - 8.566 * t4e8))
|
|
94
|
+
- 0.001146 * Math.cos(deg2rad * (66.5106 + 349471.8432 * t - 335.112 * t2e4
|
|
95
|
+
- 35.715 * t3e6 + 16.854 * t4e8))
|
|
96
|
+
- 0.000915 * Math.cos(deg2rad * (201.4740 + 826670.7108 * t - 245.142 * t2e4
|
|
97
|
+
- 21.367 * t3e6 + 10.057 * t4e8))
|
|
98
|
+
+ 0.000869 * Math.cos(deg2rad * (103.2079 + 377336.3051 * t - 121.035 * t2e4
|
|
99
|
+
- 10.724 * t3e6 + 5.028 * t4e8))
|
|
100
|
+
- 0.000628 * Math.cos(deg2rad * (235.7004 + 890534.2230 * t - 32.601 * t2e4
|
|
101
|
+
+ 3.664 * t3e6 - 1.769 * t4e8))
|
|
102
|
+
- 0.000393 * Math.cos(deg2rad * (291.5472 - 127727.0245 * t - 425.082 * t2e4
|
|
103
|
+
- 50.062 * t3e6 + 23.651 * t4e8))
|
|
104
|
+
+ 0.000284 * Math.cos(deg2rad * (328.2445 - 99862.5625 * t - 211.005 * t2e4
|
|
105
|
+
- 25.072 * t3e6 + 11.826 * t4e8))
|
|
106
|
+
- 0.000278 * Math.cos(deg2rad * (162.8868 - 31931.7561 * t - 106.271 * t2e4
|
|
107
|
+
- 12.516 * t3e6 + 5.913 * t4e8))
|
|
108
|
+
- 0.000240 * Math.cos(deg2rad * (269.9268 + 954397.7353 * t + 179.941 * t2e4
|
|
109
|
+
+ 28.695 * t3e6 - 13.594 * t4e8))
|
|
110
|
+
+ 0.000230 * Math.cos(deg2rad * (111.4008 + 1781068.4461 * t - 65.201 * t2e4
|
|
111
|
+
+ 7.328 * t3e6 - 3.538 * t4e8))
|
|
112
|
+
+ 0.000229 * Math.cos(deg2rad * (167.2476 + 762807.1986 * t - 457.683 * t2e4
|
|
113
|
+
- 46.398 * t3e6 + 21.882 * t4e8))
|
|
114
|
+
- 0.000202 * Math.cos(deg2rad * ( 83.3826 - 12006.2998 * t + 247.999 * t2e4
|
|
115
|
+
+ 29.262 * t3e6 - 13.826 * t4e8))
|
|
116
|
+
+ 0.000190 * Math.cos(deg2rad * (190.8102 - 541062.3799 * t - 302.511 * t2e4
|
|
117
|
+
- 39.379 * t3e6 + 18.623 * t4e8))
|
|
118
|
+
+ 0.000177 * Math.cos(deg2rad * (357.5291 + 35999.0503 * t - 1.536 * t2e4
|
|
119
|
+
+ 0.041 * t3e6 + 0.000 * t4e8))
|
|
120
|
+
+ 0.000153 * Math.cos(deg2rad * (32.2842 + 285608.3309 * t - 547.653 * t2e4
|
|
121
|
+
- 60.746 * t3e6 + 28.679 * t4e8))
|
|
122
|
+
- 0.000137 * Math.cos(deg2rad * (44.8902 + 1431596.6029 * t + 269.911 * t2e4
|
|
123
|
+
+ 43.043 * t3e6 - 20.392 * t4e8))
|
|
124
|
+
+ 0.000122 * Math.cos(deg2rad * (145.6272 + 1844931.9583 * t + 147.340 * t2e4
|
|
125
|
+
+ 32.359 * t3e6 - 15.363 * t4e8))
|
|
126
|
+
+ 0.000116 * Math.cos(deg2rad * (302.2110 + 1240006.0662 * t - 367.713 * t2e4
|
|
127
|
+
- 32.051 * t3e6 + 15.085 * t4e8))
|
|
128
|
+
- 0.000111 * Math.cos(deg2rad * (203.9449 + 790671.6605 * t - 243.606 * t2e4
|
|
129
|
+
- 21.408 * t3e6 + 10.057 * t4e8))
|
|
130
|
+
- 0.000108 * Math.cos(deg2rad * (68.9815 + 313472.7929 * t - 333.576 * t2e4
|
|
131
|
+
- 35.756 * t3e6 + 16.854 * t4e8))
|
|
132
|
+
+ 0.000096 * Math.cos(deg2rad * (336.4374 + 1303869.5784 * t - 155.171 * t2e4
|
|
133
|
+
- 7.020 * t3e6 + 3.259 * t4e8))
|
|
134
|
+
- 0.000090 * Math.cos(deg2rad * (98.2661 + 449334.4057 * t - 124.107 * t2e4
|
|
135
|
+
- 10.643 * t3e6 + 5.028 * t4e8))
|
|
136
|
+
+ 0.000090 * Math.cos(deg2rad * (13.1347 + 1331734.0404 * t + 58.906 * t2e4
|
|
137
|
+
+ 17.971 * t3e6 - 8.566 * t4e8))
|
|
138
|
+
+ 0.000056 * Math.cos(deg2rad * (55.8468 - 1018261.2475 * t - 392.482 * t2e4
|
|
139
|
+
- 53.726 * t3e6 + 25.420 * t4e8))
|
|
140
|
+
- 0.000056 * Math.cos(deg2rad * (238.1713 + 854535.1727 * t - 31.065 * t2e4
|
|
141
|
+
+ 3.623 * t3e6 - 1.769 * t4e8))
|
|
142
|
+
+ 0.000052 * Math.cos(deg2rad * (308.4192 - 489205.1674 * t + 158.029 * t2e4
|
|
143
|
+
+ 14.915 * t3e6 - 7.029 * t4e8))
|
|
144
|
+
- 0.000050 * Math.cos(deg2rad * (133.0212 + 698943.6863 * t - 670.224 * t2e4
|
|
145
|
+
- 71.429 * t3e6 + 33.708 * t4e8))
|
|
146
|
+
- 0.000049 * Math.cos(deg2rad * (267.9846 + 1176142.5540 * t - 580.254 * t2e4
|
|
147
|
+
- 57.082 * t3e6 + 26.911 * t4e8))
|
|
148
|
+
- 0.000049 * Math.cos(deg2rad * (184.1196 + 401329.0556 * t + 125.428 * t2e4
|
|
149
|
+
+ 18.579 * t3e6 - 8.798 * t4e8))
|
|
150
|
+
- 0.000045 * Math.cos(deg2rad * (49.1562 - 75869.8120 * t + 35.458 * t2e4
|
|
151
|
+
+ 4.231 * t3e6 - 2.001 * t4e8))
|
|
152
|
+
+ 0.000044 * Math.cos(deg2rad * (257.3208 - 191590.5367 * t - 637.623 * t2e4
|
|
153
|
+
- 75.093 * t3e6 + 35.477 * t4e8))
|
|
154
|
+
+ 0.000042 * Math.cos(deg2rad * (105.6788 + 341337.2548 * t - 119.499 * t2e4
|
|
155
|
+
- 10.765 * t3e6 + 5.028 * t4e8))
|
|
156
|
+
+ 0.000042 * Math.cos(deg2rad * (160.4159 + 4067.2942 * t - 107.806 * t2e4
|
|
157
|
+
- 12.475 * t3e6 + 5.913 * t4e8))
|
|
158
|
+
+ 0.000040 * Math.cos(deg2rad * (246.3642 + 2258267.3137 * t + 24.769 * t2e4
|
|
159
|
+
+ 21.675 * t3e6 - 10.335 * t4e8))
|
|
160
|
+
- 0.000040 * Math.cos(deg2rad * (156.5838 - 604925.8921 * t - 515.053 * t2e4
|
|
161
|
+
- 64.410 * t3e6 + 30.448 * t4e8))
|
|
162
|
+
+ 0.000036 * Math.cos(deg2rad * (169.7185 + 726808.1483 * t - 456.147 * t2e4
|
|
163
|
+
- 46.439 * t3e6 + 21.882 * t4e8))
|
|
164
|
+
+ 0.000029 * Math.cos(deg2rad * (113.8717 + 1745069.3958 * t - 63.665 * t2e4
|
|
165
|
+
+ 7.287 * t3e6 - 3.538 * t4e8))
|
|
166
|
+
- 0.000029 * Math.cos(deg2rad * (297.8502 + 445267.1115 * t - 16.300 * t2e4
|
|
167
|
+
+ 1.832 * t3e6 - 0.884 * t4e8))
|
|
168
|
+
- 0.000028 * Math.cos(deg2rad * (294.0181 - 163726.0747 * t - 423.546 * t2e4
|
|
169
|
+
- 50.103 * t3e6 + 23.651 * t4e8))
|
|
170
|
+
+ 0.000027 * Math.cos(deg2rad * (263.6238 + 381403.5993 * t - 228.841 * t2e4
|
|
171
|
+
- 23.199 * t3e6 + 10.941 * t4e8))
|
|
172
|
+
- 0.000026 * Math.cos(deg2rad * (358.0578 + 221744.8187 * t - 760.194 * t2e4
|
|
173
|
+
- 85.777 * t3e6 + 40.505 * t4e8))
|
|
174
|
+
- 0.000026 * Math.cos(deg2rad * (8.1929 + 1403732.1410 * t + 55.834 * t2e4
|
|
175
|
+
+ 18.052 * t3e6 - 8.566 * t4e8));
|
|
176
|
+
|
|
177
|
+
var sedp = -0.0022 * Math.cos(deg2rad * (103.2 + 377336.3 * t));
|
|
178
|
+
|
|
179
|
+
var ecc = 0.055544 + se + 1e-3 * t * sedp;
|
|
180
|
+
|
|
181
|
+
// sine of half the inclination
|
|
182
|
+
|
|
183
|
+
var sg = 0.0011776 * Math.cos(deg2rad * (49.1562 - 75869.8120 * t + 35.458 * t2e4
|
|
184
|
+
+ 4.231 * t3e6 - 2.001 * t4e8))
|
|
185
|
+
- 0.0000971 * Math.cos(deg2rad * (235.7004 + 890534.2230 * t - 32.601 * t2e4
|
|
186
|
+
+ 3.664 * t3e6 - 1.769 * t4e8))
|
|
187
|
+
+ 0.0000908 * Math.cos(deg2rad * (186.5442 + 966404.0351 * t - 68.058 * t2e4
|
|
188
|
+
- 0.567 * t3e6 + 0.232 * t4e8))
|
|
189
|
+
+ 0.0000623 * Math.cos(deg2rad * (83.3826 - 12006.2998 * t + 247.999 * t2e4
|
|
190
|
+
+ 29.262 * t3e6 - 13.826 * t4e8))
|
|
191
|
+
+ 0.0000483 * Math.cos(deg2rad * (51.6271 - 111868.8623 * t + 36.994 * t2e4
|
|
192
|
+
+ 4.190 * t3e6 - 2.001 * t4e8))
|
|
193
|
+
+ 0.0000348 * Math.cos(deg2rad * (100.7370 + 413335.3554 * t - 122.571 * t2e4
|
|
194
|
+
- 10.684 * t3e6 + 5.028 * t4e8))
|
|
195
|
+
- 0.0000316 * Math.cos(deg2rad * (308.4192 - 489205.1674 * t + 158.029 * t2e4
|
|
196
|
+
+ 14.915 * t3e6 - 7.029 * t4e8))
|
|
197
|
+
- 0.0000253 * Math.cos(deg2rad * (46.6853 - 39870.7617 * t + 33.922 * t2e4
|
|
198
|
+
+ 4.272 * t3e6 - 2.001 * t4e8))
|
|
199
|
+
- 0.0000141 * Math.cos(deg2rad * (274.1928 - 553068.6797 * t - 54.513 * t2e4
|
|
200
|
+
- 10.116 * t3e6 + 4.797 * t4e8))
|
|
201
|
+
+ 0.0000127 * Math.cos(deg2rad * (325.7736 - 63863.5122 * t - 212.541 * t2e4
|
|
202
|
+
- 25.031 * t3e6 + 11.826 * t4e8))
|
|
203
|
+
+ 0.0000117 * Math.cos(deg2rad * (184.1196 + 401329.0556 * t + 125.428 * t2e4
|
|
204
|
+
+ 18.579 * t3e6 - 8.798 * t4e8))
|
|
205
|
+
- 0.0000078 * Math.cos(deg2rad * (98.3124 - 151739.6240 * t + 70.916 * t2e4
|
|
206
|
+
+ 8.462 * t3e6 - 4.001 * t4e8))
|
|
207
|
+
- 0.0000063 * Math.cos(deg2rad * (238.1713 + 854535.1727 * t - 31.065 * t2e4
|
|
208
|
+
+ 3.623 * t3e6 - 1.769 * t4e8))
|
|
209
|
+
+ 0.0000063 * Math.cos(deg2rad * (134.9634 + 477198.8676 * t + 89.970 * t2e4
|
|
210
|
+
+ 14.348 * t3e6 - 6.797 * t4e8))
|
|
211
|
+
+ 0.0000036 * Math.cos(deg2rad * (321.5076 + 1443602.9027 * t + 21.912 * t2e4
|
|
212
|
+
+ 13.780 * t3e6 - 6.566 * t4e8))
|
|
213
|
+
- 0.0000035 * Math.cos(deg2rad * (10.6638 + 1367733.0907 * t + 57.370 * t2e4
|
|
214
|
+
+ 18.011 * t3e6 - 8.566 * t4e8))
|
|
215
|
+
+ 0.0000024 * Math.cos(deg2rad * (149.8932 + 337465.5434 * t - 87.113 * t2e4
|
|
216
|
+
- 6.453 * t3e6 + 3.028 * t4e8))
|
|
217
|
+
+ 0.0000024 * Math.cos(deg2rad * (170.9849 - 930404.9848 * t + 66.523 * t2e4
|
|
218
|
+
+ 0.608 * t3e6 - 0.232 * t4e8));
|
|
219
|
+
|
|
220
|
+
var sgp = - 0.0203 * Math.cos(deg2rad * (125.0 - 1934.1 * t))
|
|
221
|
+
+ 0.0034 * Math.cos(deg2rad * (220.2 - 1935.5 * t));
|
|
222
|
+
|
|
223
|
+
var gamma = 0.0449858 + sg + 1e-3 * sgp;
|
|
224
|
+
|
|
225
|
+
// longitude of perigee
|
|
226
|
+
|
|
227
|
+
var sp = - 15.448 * Math.sin(deg2rad * (100.7370 + 413335.3554 * t - 122.571 * t2e4
|
|
228
|
+
- 10.684 * t3e6 + 5.028 * t4e8))
|
|
229
|
+
- 9.642 * Math.sin(deg2rad * (325.7736 - 63863.5122 * t - 212.541 * t2e4
|
|
230
|
+
- 25.031 * t3e6 + 11.826 * t4e8))
|
|
231
|
+
- 2.721 * Math.sin(deg2rad * (134.9634 + 477198.8676 * t + 89.970 * t2e4
|
|
232
|
+
+ 14.348 * t3e6 - 6.797 * t4e8))
|
|
233
|
+
+ 2.607 * Math.sin(deg2rad * (66.5106 + 349471.8432 * t - 335.112 * t2e4
|
|
234
|
+
- 35.715 * t3e6 + 16.854 * t4e8))
|
|
235
|
+
+ 2.085 * Math.sin(deg2rad * (201.4740 + 826670.7108 * t - 245.142 * t2e4
|
|
236
|
+
- 21.367 * t3e6 + 10.057 * t4e8))
|
|
237
|
+
+ 1.477 * Math.sin(deg2rad * (10.6638 + 1367733.0907 * t + 57.370 * t2e4
|
|
238
|
+
+ 18.011 * t3e6 - 8.566 * t4e8))
|
|
239
|
+
+ 0.968 * Math.sin(deg2rad * (291.5472 - 127727.0245 * t - 425.082 * t2e4
|
|
240
|
+
- 50.062 * t3e6 + 23.651 * t4e8))
|
|
241
|
+
- 0.949 * Math.sin(deg2rad * (103.2079 + 377336.3051 * t - 121.035 * t2e4
|
|
242
|
+
- 10.724 * t3e6 + 5.028 * t4e8))
|
|
243
|
+
- 0.703 * Math.sin(deg2rad * (167.2476 + 762807.1986 * t - 457.683 * t2e4
|
|
244
|
+
- 46.398 * t3e6 + 21.882 * t4e8))
|
|
245
|
+
- 0.660 * Math.sin(deg2rad * (235.7004 + 890534.2230 * t - 32.601 * t2e4
|
|
246
|
+
+ 3.664 * t3e6 - 1.769 * t4e8))
|
|
247
|
+
- 0.577 * Math.sin(deg2rad * (190.8102 - 541062.3799 * t - 302.511 * t2e4
|
|
248
|
+
- 39.379 * t3e6 + 18.623 * t4e8))
|
|
249
|
+
- 0.524 * Math.sin(deg2rad * (269.9268 + 954397.7353 * t + 179.941 * t2e4
|
|
250
|
+
+ 28.695 * t3e6 - 13.594 * t4e8))
|
|
251
|
+
- 0.482 * Math.sin(deg2rad * (32.2842 + 285608.3309 * t - 547.653 * t2e4
|
|
252
|
+
- 60.746 * t3e6 + 28.679 * t4e8))
|
|
253
|
+
+ 0.452 * Math.sin(deg2rad * (357.5291 + 35999.0503 * t - 1.536 * t2e4
|
|
254
|
+
+ 0.041 * t3e6 + 0.000 * t4e8))
|
|
255
|
+
- 0.381 * Math.sin(deg2rad * (302.2110 + 1240006.0662 * t - 367.713 * t2e4
|
|
256
|
+
- 32.051 * t3e6 + 15.085 * t4e8))
|
|
257
|
+
- 0.342 * Math.sin(deg2rad * (328.2445 - 99862.5625 * t - 211.005 * t2e4
|
|
258
|
+
- 25.072 * t3e6 + 11.826 * t4e8))
|
|
259
|
+
- 0.312 * Math.sin(deg2rad * (44.8902 + 1431596.6029 * t + 269.911 * t2e4
|
|
260
|
+
+ 43.043 * t3e6 - 20.392 * t4e8))
|
|
261
|
+
+ 0.282 * Math.sin(deg2rad * (162.8868 - 31931.7561 * t - 106.271 * t2e4
|
|
262
|
+
- 12.516 * t3e6 + 5.913 * t4e8))
|
|
263
|
+
+ 0.255 * Math.sin(deg2rad * (203.9449 + 790671.6605 * t - 243.606 * t2e4
|
|
264
|
+
- 21.408 * t3e6 + 10.057 * t4e8))
|
|
265
|
+
+ 0.252 * Math.sin(deg2rad * (68.9815 + 313472.7929 * t - 333.576 * t2e4
|
|
266
|
+
- 35.756 * t3e6 + 16.854 * t4e8))
|
|
267
|
+
- 0.211 * Math.sin(deg2rad * (83.3826 - 12006.2998 * t + 247.999 * t2e4
|
|
268
|
+
+ 29.262 * t3e6 - 13.826 * t4e8))
|
|
269
|
+
+ 0.193 * Math.sin(deg2rad * (267.9846 + 1176142.5540 * t - 580.254 * t2e4
|
|
270
|
+
- 57.082 * t3e6 + 26.911 * t4e8))
|
|
271
|
+
+ 0.191 * Math.sin(deg2rad * (133.0212 + 698943.6863 * t - 670.224 * t2e4
|
|
272
|
+
- 71.429 * t3e6 + 33.708 * t4e8))
|
|
273
|
+
- 0.184 * Math.sin(deg2rad * (55.8468 - 1018261.2475 * t - 392.482 * t2e4
|
|
274
|
+
- 53.726 * t3e6 + 25.420 * t4e8))
|
|
275
|
+
+ 0.182 * Math.sin(deg2rad * (145.6272 + 1844931.9583 * t + 147.340 * t2e4
|
|
276
|
+
+ 32.359 * t3e6 - 15.363 * t4e8))
|
|
277
|
+
- 0.158 * Math.sin(deg2rad * (257.3208 - 191590.5367 * t - 637.623 * t2e4
|
|
278
|
+
- 75.093 * t3e6 + 35.477 * t4e8))
|
|
279
|
+
+ 0.148 * Math.sin(deg2rad * (156.5838 - 604925.8921 * t - 515.053 * t2e4
|
|
280
|
+
- 64.410 * t3e6 + 30.448 * t4e8))
|
|
281
|
+
- 0.111 * Math.sin(deg2rad * (169.7185 + 726808.1483 * t - 456.147 * t2e4
|
|
282
|
+
- 46.439 * t3e6 + 21.882 * t4e8))
|
|
283
|
+
+ 0.101 * Math.sin(deg2rad * (13.1347 + 1331734.0404 * t + 58.906 * t2e4
|
|
284
|
+
+ 17.971 * t3e6 - 8.566 * t4e8))
|
|
285
|
+
+ 0.100 * Math.sin(deg2rad * (358.0578 + 221744.8187 * t - 760.194 * t2e4
|
|
286
|
+
- 85.777 * t3e6 + 40.505 * t4e8))
|
|
287
|
+
+ 0.087 * Math.sin(deg2rad * (98.2661 + 449334.4057 * t - 124.107 * t2e4
|
|
288
|
+
- 10.643 * t3e6 + 5.028 * t4e8))
|
|
289
|
+
+ 0.080 * Math.sin(deg2rad * (42.9480 + 1653341.4216 * t - 490.283 * t2e4
|
|
290
|
+
- 42.734 * t3e6 + 20.113 * t4e8))
|
|
291
|
+
+ 0.080 * Math.sin(deg2rad * (222.5657 - 441199.8173 * t - 91.506 * t2e4
|
|
292
|
+
- 14.307 * t3e6 + 6.797 * t4e8))
|
|
293
|
+
+ 0.077 * Math.sin(deg2rad * (294.0181 - 163726.0747 * t - 423.546 * t2e4
|
|
294
|
+
- 50.103 * t3e6 + 23.651 * t4e8))
|
|
295
|
+
- 0.073 * Math.sin(deg2rad * (280.8834 - 1495460.1151 * t - 482.452 * t2e4
|
|
296
|
+
- 68.074 * t3e6 + 32.217 * t4e8))
|
|
297
|
+
- 0.071 * Math.sin(deg2rad * (304.6819 + 1204007.0159 * t - 366.177 * t2e4
|
|
298
|
+
- 32.092 * t3e6 + 15.085 * t4e8))
|
|
299
|
+
- 0.069 * Math.sin(deg2rad * (233.7582 + 1112279.0417 * t - 792.795 * t2e4
|
|
300
|
+
- 82.113 * t3e6 + 38.736 * t4e8))
|
|
301
|
+
- 0.067 * Math.sin(deg2rad * (34.7551 + 249609.2807 * t - 546.117 * t2e4
|
|
302
|
+
- 60.787 * t3e6 + 28.679 * t4e8))
|
|
303
|
+
- 0.067 * Math.sin(deg2rad * (263.6238 + 381403.5993 * t - 228.841 * t2e4
|
|
304
|
+
- 23.199 * t3e6 + 10.941 * t4e8))
|
|
305
|
+
+ 0.055 * Math.sin(deg2rad * (21.6203 - 1082124.7597 * t - 605.023 * t2e4
|
|
306
|
+
- 78.757 * t3e6 + 37.246 * t4e8))
|
|
307
|
+
+ 0.055 * Math.sin(deg2rad * (308.4192 - 489205.1674 * t + 158.029 * t2e4
|
|
308
|
+
+ 14.915 * t3e6 -7.029 * t4e8))
|
|
309
|
+
- 0.054 * Math.sin(deg2rad * (8.7216 + 1589477.9094 * t - 702.824 * t2e4
|
|
310
|
+
- 67.766 * t3e6 + 31.939 * t4e8))
|
|
311
|
+
- 0.052 * Math.sin(deg2rad * (179.8536 + 1908795.4705 * t + 359.881 * t2e4
|
|
312
|
+
+ 57.390 * t3e6 - 27.189 * t4e8))
|
|
313
|
+
- 0.050 * Math.sin(deg2rad * (98.7948 + 635080.1741 * t - 882.765 * t2e4
|
|
314
|
+
- 96.461 * t3e6 + 45.533 * t4e8))
|
|
315
|
+
- 0.049 * Math.sin(deg2rad * (128.6604 - 95795.2683 * t - 318.812 * t2e4
|
|
316
|
+
- 37.547 * t3e6 + 17.738 * t4e8))
|
|
317
|
+
- 0.047 * Math.sin(deg2rad * (17.3544 + 425341.6552 * t - 370.570 * t2e4
|
|
318
|
+
- 39.946 * t3e6 + 18.854 * t4e8))
|
|
319
|
+
- 0.044 * Math.sin(deg2rad * (160.4159 + 4067.2942 * t - 107.806 * t2e4
|
|
320
|
+
- 12.475 * t3e6 + 5.913 * t4e8))
|
|
321
|
+
- 0.043 * Math.sin(deg2rad * (238.1713 + 854535.1727 * t - 31.065 * t2e4
|
|
322
|
+
+ 3.623 * t3e6 - 1.769 * t4e8))
|
|
323
|
+
+ 0.042 * Math.sin(deg2rad * (270.4555 + 1140143.5037 * t - 578.718 * t2e4
|
|
324
|
+
- 57.123 * t3e6 + 26.911 * t4e8))
|
|
325
|
+
- 0.042 * Math.sin(deg2rad * (132.4925 + 513197.9179 * t + 88.434 * t2e4
|
|
326
|
+
+ 14.388 * t3e6 - 6.797 * t4e8))
|
|
327
|
+
- 0.041 * Math.sin(deg2rad * (122.3573 - 668789.4043 * t - 727.594 * t2e4
|
|
328
|
+
- 89.441 * t3e6 + 42.274 * t4e8))
|
|
329
|
+
- 0.040 * Math.sin(deg2rad * (105.6788 + 341337.2548 * t - 119.499 * t2e4
|
|
330
|
+
- 10.765 * t3e6 + 5.028 * t4e8))
|
|
331
|
+
+ 0.038 * Math.sin(deg2rad * (135.4921 + 662944.6361 * t - 668.688 * t2e4
|
|
332
|
+
- 71.470 * t3e6 + 33.708 * t4e8))
|
|
333
|
+
- 0.037 * Math.sin(deg2rad * (242.3910 - 51857.2124 * t - 460.540 * t2e4
|
|
334
|
+
- 54.293 * t3e6 + 25.652 * t4e8))
|
|
335
|
+
+ 0.036 * Math.sin(deg2rad * (336.4374 + 1303869.5784 * t - 155.171 * t2e4
|
|
336
|
+
- 7.020 * t3e6 + 3.259 * t4e8))
|
|
337
|
+
+ 0.035 * Math.sin(deg2rad * (223.0943 - 255454.0489 * t - 850.164 * t2e4
|
|
338
|
+
- 100.124 * t3e6 + 47.302 * t4e8))
|
|
339
|
+
- 0.034 * Math.sin(deg2rad * (193.2811 - 577061.4302 * t - 300.976 * t2e4
|
|
340
|
+
- 39.419 * t3e6 + 18.623 * t4e8))
|
|
341
|
+
+ 0.031 * Math.sin(deg2rad * (87.6023 - 918398.6850 * t - 181.476 * t2e4
|
|
342
|
+
- 28.654 * t3e6 + 13.594 * t4e8));
|
|
343
|
+
|
|
344
|
+
var spp = 2.4 * Math.sin(deg2rad * (103.2 + 377336.3 * t));
|
|
345
|
+
|
|
346
|
+
var lp = 83.353 + 4069.0137 * t - 103.238 * t2e4
|
|
347
|
+
- 12.492 * t3e6 + 5.263 * t4e8 + sp + 1e-3 * t * spp;
|
|
348
|
+
|
|
349
|
+
// longitude of the ascending node
|
|
350
|
+
|
|
351
|
+
var sr = - 1.4979 * Math.sin(deg2rad * (49.1562 - 75869.8120 * t + 35.458 * t2e4
|
|
352
|
+
+ 4.231 * t3e6 - 2.001 * t4e8))
|
|
353
|
+
- 0.1500 * Math.sin(deg2rad * (357.5291 + 35999.0503 * t - 1.536 * t2e4
|
|
354
|
+
+ 0.041 * t3e6 + 0.000 * t4e8))
|
|
355
|
+
- 0.1226 * Math.sin(deg2rad * (235.7004 + 890534.2230 * t - 32.601 * t2e4
|
|
356
|
+
+ 3.664 * t3e6 - 1.769 * t4e8))
|
|
357
|
+
+ 0.1176 * Math.sin(deg2rad * (186.5442 + 966404.0351 * t - 68.058 * t2e4
|
|
358
|
+
- 0.567 * t3e6 + 0.232 * t4e8))
|
|
359
|
+
- 0.0801 * Math.sin(deg2rad * (83.3826 - 12006.2998 * t + 247.999 * t2e4
|
|
360
|
+
+ 29.262 * t3e6 - 13.826 * t4e8))
|
|
361
|
+
- 0.0616 * Math.sin(deg2rad * (51.6271 - 111868.8623 * t + 36.994 * t2e4
|
|
362
|
+
+ 4.190 * t3e6 - 2.001 * t4e8))
|
|
363
|
+
+ 0.0490 * Math.sin(deg2rad * (100.7370 + 413335.3554 * t - 122.571 * t2e4
|
|
364
|
+
- 10.684 * t3e6 + 5.028 * t4e8))
|
|
365
|
+
+ 0.0409 * Math.sin(deg2rad * (308.4192 - 489205.1674 * t + 158.029 * t2e4
|
|
366
|
+
+ 14.915 * t3e6 - 7.029 * t4e8))
|
|
367
|
+
+ 0.0327 * Math.sin(deg2rad * (134.9634 + 477198.8676 * t + 89.970 * t2e4
|
|
368
|
+
+ 14.348 * t3e6 - 6.797 * t4e8))
|
|
369
|
+
+ 0.0324 * Math.sin(deg2rad * (46.6853 - 39870.7617 * t + 33.922 * t2e4
|
|
370
|
+
+ 4.272 * t3e6 - 2.001 * t4e8))
|
|
371
|
+
+ 0.0196 * Math.sin(deg2rad * (98.3124 - 151739.6240 * t + 70.916 * t2e4
|
|
372
|
+
+ 8.462 * t3e6 - 4.001 * t4e8))
|
|
373
|
+
+ 0.0180 * Math.sin(deg2rad * (274.1928 - 553068.6797 * t - 54.513 * t2e4
|
|
374
|
+
- 10.116 * t3e6 + 4.797 * t4e8))
|
|
375
|
+
+ 0.0150 * Math.sin(deg2rad * (325.7736 - 63863.5122 * t - 212.541 * t2e4
|
|
376
|
+
- 25.031 * t3e6 + 11.826 * t4e8))
|
|
377
|
+
- 0.0150 * Math.sin(deg2rad * (184.1196 + 401329.0556 * t + 125.428 * t2e4
|
|
378
|
+
+ 18.579 * t3e6 - 8.798 * t4e8))
|
|
379
|
+
- 0.0078 * Math.sin(deg2rad * (238.1713 + 854535.1727 * t - 31.065 * t2e4
|
|
380
|
+
+ 3.623 * t3e6 - 1.769 * t4e8))
|
|
381
|
+
- 0.0045 * Math.sin(deg2rad * (10.6638 + 1367733.0907 * t + 57.370 * t2e4
|
|
382
|
+
+ 18.011 * t3e6 - 8.566 * t4e8))
|
|
383
|
+
+ 0.0044 * Math.sin(deg2rad * (321.5076 + 1443602.9027 * t + 21.912 * t2e4
|
|
384
|
+
+ 13.780 * t3e6 - 6.566 * t4e8))
|
|
385
|
+
- 0.0042 * Math.sin(deg2rad * (162.8868 - 31931.7561 * t - 106.271 * t2e4
|
|
386
|
+
- 12.516 * t3e6 + 5.913 * t4e8))
|
|
387
|
+
- 0.0031 * Math.sin(deg2rad * (170.9849 - 930404.9848 * t + 66.523 * t2e4
|
|
388
|
+
+ 0.608 * t3e6 - 0.232 * t4e8))
|
|
389
|
+
+ 0.0031 * Math.sin(deg2rad * (103.2079 + 377336.3051 * t - 121.035 * t2e4
|
|
390
|
+
- 10.724 * t3e6 + 5.028 * t4e8))
|
|
391
|
+
+ 0.0029 * Math.sin(deg2rad * (222.6120 - 1042273.8471 * t + 103.516 * t2e4
|
|
392
|
+
+ 4.798 * t3e6 - 2.232 * t4e8))
|
|
393
|
+
+ 0.0028 * Math.sin(deg2rad * (184.0733 + 1002403.0853 * t - 69.594 * t2e4
|
|
394
|
+
- 0.526 * t3e6 + 0.232 * t4e8));
|
|
395
|
+
|
|
396
|
+
var srp = 25.9 * Math.sin(deg2rad * (125.0 - 1934.1 * t))
|
|
397
|
+
- 4.3 * Math.sin(deg2rad * (220.2 - 1935.5 * t));
|
|
398
|
+
|
|
399
|
+
var srpp = 0.38 * Math.sin(deg2rad * (357.5 + 35999.1 * t));
|
|
400
|
+
|
|
401
|
+
var raan = 125.0446 - 1934.13618 * t + 20.762 * t2e4
|
|
402
|
+
+ 2.139 * t3e6 - 1.650 * t4e8 + sr
|
|
403
|
+
+ 1e-3 * (srp + srpp * t);
|
|
404
|
+
|
|
405
|
+
// mean longitude
|
|
406
|
+
|
|
407
|
+
var sl = - 0.92581 * Math.sin(deg2rad * (235.7004 + 890534.2230 * t - 32.601 * t2e4
|
|
408
|
+
+ 3.664 * t3e6 - 1.769 * t4e8))
|
|
409
|
+
+ 0.33262 * Math.sin(deg2rad * (100.7370 + 413335.3554 * t - 122.571 * t2e4
|
|
410
|
+
- 10.684 * t3e6 + 5.028 * t4e8))
|
|
411
|
+
- 0.18402 * Math.sin(deg2rad * (357.5291 + 35999.0503 * t - 1.536 * t2e4
|
|
412
|
+
+ 0.041 * t3e6 + 0.000 * t4e8))
|
|
413
|
+
+ 0.11007 * Math.sin(deg2rad * (134.9634 + 477198.8676 * t + 89.970 * t2e4
|
|
414
|
+
+ 14.348 * t3e6 - 6.797 * t4e8))
|
|
415
|
+
- 0.06055 * Math.sin(deg2rad * (238.1713 + 854535.1727 * t - 31.065 * t2e4
|
|
416
|
+
+ 3.623 * t3e6 - 1.769 * t4e8))
|
|
417
|
+
+ 0.04741 * Math.sin(deg2rad * (325.7736 - 63863.5122 * t - 212.541 * t2e4
|
|
418
|
+
- 25.031 * t3e6 + 11.826 * t4e8))
|
|
419
|
+
- 0.03086 * Math.sin(deg2rad * (10.6638 + 1367733.0907 * t + 57.370 * t2e4
|
|
420
|
+
+ 18.011 * t3e6 - 8.566 * t4e8))
|
|
421
|
+
+ 0.02184 * Math.sin(deg2rad * (103.2079 + 377336.3051 * t - 121.035 * t2e4
|
|
422
|
+
- 10.724 * t3e6 + 5.028 * t4e8))
|
|
423
|
+
+ 0.01645 * Math.sin(deg2rad * (49.1562 - 75869.8120 * t + 35.458 * t2e4
|
|
424
|
+
+ 4.231 * t3e6 - 2.001 * t4e8))
|
|
425
|
+
+ 0.01022 * Math.sin(deg2rad * (233.2295 + 926533.2733 * t - 34.136 * t2e4
|
|
426
|
+
+ 3.705 * t3e6 - 1.769 * t4e8))
|
|
427
|
+
- 0.00756 * Math.sin(deg2rad * (336.4374 + 1303869.5784 * t - 155.171 * t2e4
|
|
428
|
+
- 7.020 * t3e6 + 3.259 * t4e8))
|
|
429
|
+
- 0.00530 * Math.sin(deg2rad * (222.5657 - 441199.8173 * t - 91.506 * t2e4
|
|
430
|
+
- 14.307 * t3e6 + 6.797 * t4e8))
|
|
431
|
+
- 0.00496 * Math.sin(deg2rad * (162.8868 - 31931.7561 * t - 106.271 * t2e4
|
|
432
|
+
- 12.516 * t3e6 + 5.913 * t4e8))
|
|
433
|
+
- 0.00472 * Math.sin(deg2rad * (297.8502 + 445267.1115 * t - 16.300 * t2e4
|
|
434
|
+
+ 1.832 * t3e6 - 0.884 * t4e8))
|
|
435
|
+
- 0.00271 * Math.sin(deg2rad * (240.6422 + 818536.1225 * t - 29.529 * t2e4
|
|
436
|
+
+ 3.582 * t3e6 - 1.769 * t4e8))
|
|
437
|
+
+ 0.00264 * Math.sin(deg2rad * (132.4925 + 513197.9179 * t + 88.434 * t2e4
|
|
438
|
+
+ 14.388 * t3e6 - 6.797 * t4e8))
|
|
439
|
+
- 0.00254 * Math.sin(deg2rad * (186.5442 + 966404.0351 * t - 68.058 * t2e4
|
|
440
|
+
- 0.567 * t3e6 + 0.232 * t4e8))
|
|
441
|
+
+ 0.00234 * Math.sin(deg2rad * (269.9268 + 954397.7353 * t + 179.941 * t2e4
|
|
442
|
+
+ 28.695 * t3e6 - 13.594 * t4e8))
|
|
443
|
+
- 0.00220 * Math.sin(deg2rad * (13.1347 + 1331734.0404 * t + 58.906 * t2e4
|
|
444
|
+
+ 17.971 * t3e6 - 8.566 * t4e8))
|
|
445
|
+
- 0.00202 * Math.sin(deg2rad * (355.0582 + 71998.1006 * t - 3.072 * t2e4
|
|
446
|
+
+ 0.082 * t3e6 + 0.000 * t4e8))
|
|
447
|
+
+ 0.00167 * Math.sin(deg2rad * (328.2445 - 99862.5625 * t - 211.005 * t2e4
|
|
448
|
+
- 25.072 * t3e6 + 11.826 * t4e8))
|
|
449
|
+
- 0.00143 * Math.sin(deg2rad * (173.5506 + 1335801.3346 * t - 48.901 * t2e4
|
|
450
|
+
+ 5.496 * t3e6 - 2.653 * t4e8))
|
|
451
|
+
- 0.00121 * Math.sin(deg2rad * (98.2661 + 449334.4057 * t - 124.107 * t2e4
|
|
452
|
+
- 10.643 * t3e6 + 5.028 * t4e8))
|
|
453
|
+
- 0.00116 * Math.sin(deg2rad * (145.6272 + 1844931.9583 * t + 147.340 * t2e4
|
|
454
|
+
+ 32.359 * t3e6 - 15.363 * t4e8))
|
|
455
|
+
+ 0.00102 * Math.sin(deg2rad * (105.6788 + 341337.2548 * t - 119.499 * t2e4
|
|
456
|
+
- 10.765 * t3e6 + 5.028 * t4e8))
|
|
457
|
+
- 0.00090 * Math.sin(deg2rad * (184.1196 + 401329.0556 * t + 125.428 * t2e4
|
|
458
|
+
+ 18.579 * t3e6 - 8.798 * t4e8))
|
|
459
|
+
- 0.00086 * Math.sin(deg2rad * (338.9083 + 1267870.5281 * t - 153.636 * t2e4
|
|
460
|
+
- 7.061 * t3e6 + 3.259 * t4e8))
|
|
461
|
+
- 0.00078 * Math.sin(deg2rad * (111.4008 + 1781068.4461 * t - 65.201 * t2e4
|
|
462
|
+
+ 7.328 * t3e6 - 3.538 * t4e8))
|
|
463
|
+
+ 0.00069 * Math.sin(deg2rad * (323.3027 - 27864.4619 * t - 214.077 * t2e4
|
|
464
|
+
- 24.990 * t3e6 + 11.826 * t4e8))
|
|
465
|
+
+ 0.00066 * Math.sin(deg2rad * (51.6271 - 111868.8623 * t + 36.994 * t2e4
|
|
466
|
+
+ 4.190 * t3e6 - 2.001 * t4e8))
|
|
467
|
+
+ 0.00065 * Math.sin(deg2rad * (38.5872 + 858602.4669 * t - 138.871 * t2e4
|
|
468
|
+
- 8.852 * t3e6 + 4.144 * t4e8))
|
|
469
|
+
- 0.00060 * Math.sin(deg2rad * (83.3826 - 12006.2998 * t + 247.999 * t2e4
|
|
470
|
+
+ 29.262 * t3e6 - 13.826 * t4e8))
|
|
471
|
+
+ 0.00054 * Math.sin(deg2rad * (201.4740 + 826670.7108 * t - 245.142 * t2e4
|
|
472
|
+
- 21.367 * t3e6 + 10.057 * t4e8))
|
|
473
|
+
- 0.00052 * Math.sin(deg2rad * (308.4192 - 489205.1674 * t + 158.029 * t2e4
|
|
474
|
+
+ 14.915 * t3e6 - 7.029 * t4e8))
|
|
475
|
+
+ 0.00048 * Math.sin(deg2rad * (8.1929 + 1403732.1410 * t + 55.834 * t2e4
|
|
476
|
+
+ 18.052 * t3e6 - 8.566 * t4e8))
|
|
477
|
+
- 0.00041 * Math.sin(deg2rad * (46.6853 - 39870.7617 * t + 33.922 * t2e4
|
|
478
|
+
+ 4.272 * t3e6 - 2.001 * t4e8))
|
|
479
|
+
- 0.00033 * Math.sin(deg2rad * (274.1928 - 553068.6797 * t - 54.513 * t2e4
|
|
480
|
+
- 10.116 * t3e6 + 4.797 * t4e8))
|
|
481
|
+
+ 0.00030 * Math.sin(deg2rad * (160.4159 + 4067.2942 * t - 107.806 * t2e4
|
|
482
|
+
- 12.475 * t3e6 + 5.913 * t4e8));
|
|
483
|
+
|
|
484
|
+
var slp = 3.96 * Math.sin(deg2rad * (119.7 + 131.8 * t))
|
|
485
|
+
+ 1.96 * Math.sin(deg2rad * (125.0 - 1934.1 * t));
|
|
486
|
+
|
|
487
|
+
var slpp = 0.463 * Math.sin(deg2rad * (357.5 + 35999.1 * t))
|
|
488
|
+
+ 0.152 * Math.sin(deg2rad * (238.2 + 854535.2 * t))
|
|
489
|
+
- 0.071 * Math.sin(deg2rad * (27.8 + 131.8 * t))
|
|
490
|
+
- 0.055 * Math.sin(deg2rad * (103.2 + 377336.3 * t))
|
|
491
|
+
- 0.026 * Math.sin(deg2rad * (233.2 + 926533.3 * t));
|
|
492
|
+
|
|
493
|
+
var slppp = 14 * Math.sin(deg2rad * (357.5 + 35999.1 * t))
|
|
494
|
+
+ 5 * Math.sin(deg2rad * (238.2 + 854535.2 * t));
|
|
495
|
+
|
|
496
|
+
var lambda = 218.31665 + 481267.88134 * t - 13.268 * t2e4
|
|
497
|
+
+ 1.856 * t3e6 - 1.534 * t4e8 + sl
|
|
498
|
+
+ 1e-3 * (slp + slpp * t + slppp * t2e4);
|
|
499
|
+
|
|
500
|
+
dat.a = sma;
|
|
501
|
+
dat.e = ecc;
|
|
502
|
+
dat.i = 2.0 * Math.asin(gamma);
|
|
503
|
+
dat.w = Trig.normalize(deg2rad * (lp - raan));
|
|
504
|
+
dat.N = Trig.normalize(deg2rad * raan);
|
|
505
|
+
dat.M = Trig.normalize(deg2rad * (lambda - lp));
|
|
506
|
+
return dat;
|
|
507
|
+
},
|
|
508
|
+
corr: function(dat, sol) {
|
|
509
|
+
// The perturbations (evection, variation, annual equation and so on) are
|
|
510
|
+
// already accounted for by the series expansion in elements(), and in any
|
|
511
|
+
// case they apply to ecliptic longitude and latitude, not to ra/dec. Added
|
|
512
|
+
// separately they produced a right ascension error of about 1.5 degrees.
|
|
513
|
+
|
|
514
|
+
dat.age = Trig.normalize(dat.l - sol.l + Math.PI);
|
|
515
|
+
dat.phase = 0.5 * (1 - Math.cos(dat.age));
|
|
516
|
+
|
|
517
|
+
return dat;
|
|
518
|
+
}
|
|
519
|
+
|
|
520
|
+
};
|
|
521
|
+
|
|
522
|
+
export { Moon };
|