1 /*
2 * This library is free software; you can redistribute it and/or
3 * modify it under the terms of the GNU Lesser General Public
4 * License as published by the Free Software Foundation; either
5 * version 2 of the License, or (at your option) any later version.
6 *
7 * This library is distributed in the hope that it will be useful,
8 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
10 * Lesser General Public License for more details.
11 *
12 * You should have received a copy of the GNU General Public License
13 * along with this program; if not, write to the Free Software
14 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
15 *
16 * Some functions in this file use the VSOP87 solution by
17 * Messrs. Bretagnon and Francou.
18 *
19 * Copyright (C) 2000 - 2005 Liam Girdwood
20 */
21
22 #include <math.h>
23 #include <libnova/venus.h>
24 #include <libnova/vsop87.h>
25 #include <libnova/solar.h>
26 #include <libnova/earth.h>
27 #include <libnova/transform.h>
28 #include <libnova/rise_set.h>
29 #include <libnova/utility.h>
30
31 #define LONG_L0 416
32 #define LONG_L1 235
33 #define LONG_L2 72
34 #define LONG_L3 7
35 #define LONG_L4 4
36 #define LONG_L5 2
37 #define LAT_B0 210
38 #define LAT_B1 121
39 #define LAT_B2 51
40 #define LAT_B3 12
41 #define LAT_B4 4
42 #define LAT_B5 4
43 #define RADIUS_R0 323
44 #define RADIUS_R1 174
45 #define RADIUS_R2 62
46 #define RADIUS_R3 8
47 #define RADIUS_R4 3
48 #define RADIUS_R5 2
49
50 /* cache variables */
51 static double cJD = 0, cL = 0, cB = 0, cR = 0;
52
53 static const struct ln_vsop venus_longitude_l0[LONG_L0] = {
54 { 3.17614666774, 0.00000000000, 0.00000000000},
55 { 0.01353968419, 5.59313319619, 10213.28554621100},
56 { 0.00089891645, 5.30650047764, 20426.57109242200},
57 { 0.00005477194, 4.41630661466, 7860.41939243920},
58 { 0.00003455741, 2.69964447820, 11790.62908865880},
59 { 0.00002372061, 2.99377542079, 3930.20969621960},
60 { 0.00001317168, 5.18668228402, 26.29831979980},
61 { 0.00001664146, 4.25018630147, 1577.34354244780},
62 { 0.00001438387, 4.15745084182, 9683.59458111640},
63 { 0.00001200521, 6.15357116043, 30639.85663863300},
64 { 0.00000761380, 1.95014701047, 529.69096509460},
65 { 0.00000707676, 1.06466702668, 775.52261132400},
66 { 0.00000584836, 3.99839888230, 191.44826611160},
67 { 0.00000769314, 0.81629615196, 9437.76293488700},
68 { 0.00000499915, 4.12340212820, 15720.83878487840},
69 { 0.00000326221, 4.59056477038, 10404.73381232260},
70 { 0.00000429498, 3.58642858577, 19367.18916223280},
71 { 0.00000326967, 5.67736584311, 5507.55323866740},
72 { 0.00000231937, 3.16251059356, 9153.90361602180},
73 { 0.00000179695, 4.65337908917, 1109.37855209340},
74 { 0.00000128263, 4.22604490814, 20.77539549240},
75 { 0.00000155464, 5.57043891690, 19651.04848109800},
76 { 0.00000127907, 0.96209781904, 5661.33204915220},
77 { 0.00000105547, 1.53721203088, 801.82093112380},
78 { 0.00000085722, 0.35589247720, 3154.68708489560},
79 { 0.00000099121, 0.83288208931, 213.29909543800},
80 { 0.00000098804, 5.39389623302, 13367.97263110660},
81 { 0.00000082094, 3.21597037872, 18837.49819713819},
82 { 0.00000088031, 3.88868864136, 9999.98645077300},
83 { 0.00000071577, 0.11145736657, 11015.10647733480},
84 { 0.00000056122, 4.24039842051, 7.11354700080},
85 { 0.00000070239, 0.67458825333, 23581.25817731760},
86 { 0.00000050796, 0.24531639097, 11322.66409830440},
87 { 0.00000046111, 5.31576442737, 18073.70493865020},
88 { 0.00000044576, 6.06281108312, 40853.14218484400},
89 { 0.00000042594, 5.32873395426, 2352.86615377180},
90 { 0.00000042635, 1.79955442721, 7084.89678111520},
91 { 0.00000041177, 0.36241012200, 382.89653222320},
92 { 0.00000035749, 2.70448479527, 10206.17199921020},
93 { 0.00000033893, 2.02347385644, 6283.07584999140},
94 { 0.00000029170, 3.59117396909, 22003.91463486980},
95 { 0.00000028479, 2.22375430133, 1059.38193018920},
96 { 0.00000029850, 4.02177029338, 10239.58386601080},
97 { 0.00000033252, 2.10025580495, 27511.46787353720},
98 { 0.00000030172, 4.94191918273, 13745.34623902240},
99 { 0.00000029252, 3.51392387787, 283.85931886520},
100 { 0.00000024424, 2.70177487840, 8624.21265092720},
101 { 0.00000020274, 3.79493777545, 14143.49524243060},
102 { 0.00000024322, 4.27814493315, 5.52292430740},
103 { 0.00000026260, 0.54067510171, 17298.18232732620},
104 { 0.00000020492, 0.58547075036, 38.02767263580},
105 { 0.00000018988, 4.13811517967, 4551.95349705880},
106 { 0.00000023739, 4.82870820701, 6872.67311951120},
107 { 0.00000015953, 1.50376176156, 8635.94200376320},
108 { 0.00000019069, 6.12025555817, 29050.78374334920},
109 { 0.00000018269, 3.04740409161, 19999.97290154599},
110 { 0.00000013656, 4.41336264990, 3532.06069281140},
111 { 0.00000017118, 3.51922693724, 31441.67756975680},
112 { 0.00000010955, 2.84562940868, 18307.80723204360},
113 { 0.00000011048, 2.58361219121, 9786.68735533500},
114 { 0.00000009904, 1.08737985358, 7064.12138562280},
115 { 0.00000010576, 0.85419798194, 10596.18207843420},
116 { 0.00000009235, 5.52461085424, 12566.15169998280},
117 { 0.00000011599, 5.81007484555, 19896.88012732740},
118 { 0.00000011807, 1.91250004145, 21228.39202354580},
119 { 0.00000010105, 2.34270729521, 10742.97651130560},
120 { 0.00000008154, 1.92331359797, 15.25247118500},
121 { 0.00000008893, 1.97291419659, 10186.98722641120},
122 { 0.00000009352, 4.94508838657, 35371.88726597640},
123 { 0.00000006821, 4.39733528050, 8662.24032356300},
124 { 0.00000006688, 1.55309955053, 14945.31617355440},
125 { 0.00000006413, 2.17677578364, 10988.80815753500},
126 { 0.00000005802, 1.93461898145, 3340.61242669980},
127 { 0.00000005950, 2.96578177047, 4732.03062734340},
128 { 0.00000005275, 5.01875399411, 28286.99048486120},
129 { 0.00000007047, 1.00111452053, 632.78373931320},
130 { 0.00000005048, 4.27886655804, 29580.47470844380},
131 { 0.00000006305, 0.35506330531, 103.09277421860},
132 { 0.00000005959, 5.04792949123, 245.83164622940},
133 { 0.00000004651, 0.85216995524, 6770.71060124560},
134 { 0.00000005580, 0.48723420248, 522.57741809380},
135 { 0.00000005327, 3.03115799765, 10021.83728009940},
136 { 0.00000005010, 5.77374296245, 28521.09277825460},
137 { 0.00000004608, 1.93302031704, 4705.73230754360},
138 { 0.00000005526, 3.36797150122, 25158.60171976540},
139 { 0.00000003863, 4.89351765621, 25934.12433108940},
140 { 0.00000005303, 0.08161035601, 39302.09696219600},
141 { 0.00000004254, 5.36046525146, 21535.94964451540},
142 { 0.00000003763, 1.05304597315, 19.66976089979},
143 { 0.00000004407, 4.02575372996, 74.78159856730},
144 { 0.00000004145, 1.14356412295, 9676.48103411560},
145 { 0.00000004318, 4.38289970585, 316.39186965660},
146 { 0.00000003642, 6.11733531450, 3128.38876509580},
147 { 0.00000003238, 5.39551036769, 419.48464387520},
148 { 0.00000003909, 4.05263635330, 9690.70812811720},
149 { 0.00000003173, 0.74132026653, 16496.36139620240},
150 { 0.00000003496, 0.72415151509, 3723.50895892300},
151 { 0.00000003755, 3.80208523566, 19786.67380610799},
152 { 0.00000003016, 1.57249073681, 17277.40693183380},
153 { 0.00000002858, 3.31246198673, 32217.20018108080},
154 { 0.00000003825, 0.19612307327, 426.59819087600},
155 { 0.00000003798, 0.45524571743, 10316.37832042960},
156 { 0.00000002570, 1.20813798183, 13936.79450513400},
157 { 0.00000002796, 3.65128969074, 206.18554843720},
158 { 0.00000002466, 3.61988425580, 1551.04522264800},
159 { 0.00000003108, 1.50324979041, 43232.30665841560},
160 { 0.00000002976, 4.79414174980, 29088.81141598500},
161 { 0.00000002196, 3.57357339264, 24356.78078864160},
162 { 0.00000002227, 4.96059090976, 536.80451209540},
163 { 0.00000002397, 3.45249688427, 19374.30270923360},
164 { 0.00000002462, 0.53295346740, 19360.07561523199},
165 { 0.00000002205, 2.70398708223, 12592.45001978260},
166 { 0.00000002230, 3.01413989795, 18875.52586977400},
167 { 0.00000001858, 4.06129093893, 2379.16447357160},
168 { 0.00000001807, 3.15086244011, 9573.38825989700},
169 { 0.00000002238, 5.52216925076, 10138.50394764370},
170 { 0.00000002195, 2.32046407873, 8094.52168583260},
171 { 0.00000002101, 2.90421302974, 9967.45389998160},
172 { 0.00000001916, 4.56513913980, 2218.75710418680},
173 { 0.00000001467, 2.42640162464, 10234.06094170340},
174 { 0.00000001726, 5.59790615295, 20452.86941222180},
175 { 0.00000001455, 2.44757225671, 1589.07289528380},
176 { 0.00000001991, 4.04623282256, 31749.23519072640},
177 { 0.00000001406, 2.71737807375, 16983.99614745660},
178 { 0.00000001658, 0.11252373292, 153.77881048480},
179 { 0.00000001851, 2.92897863746, 47162.51635463520},
180 { 0.00000001492, 1.07515446511, 9103.90699411760},
181 { 0.00000001247, 2.48433636140, 17778.11626694899},
182 { 0.00000001549, 4.20555105766, 3442.57494496540},
183 { 0.00000001243, 3.95452438599, 170.67287061920},
184 { 0.00000001694, 6.20691533902, 33019.02111220460},
185 { 0.00000001221, 4.77932060567, 30110.16567353840},
186 { 0.00000001206, 0.30531254531, 29864.33402730900},
187 { 0.00000001238, 5.05581030425, 20213.27199698400},
188 { 0.00000001152, 3.26229919481, 11.72935283600},
189 { 0.00000001179, 1.69491078238, 20400.27277262220},
190 { 0.00000001165, 2.88995128147, 574.34479833480},
191 { 0.00000001306, 0.14519568603, 9146.79006902100},
192 { 0.00000001113, 1.52599723495, 10426.58464164900},
193 { 0.00000001045, 0.57538516899, 15874.61759536320},
194 { 0.00000001105, 2.54593760294, 18849.22754997420},
195 { 0.00000001360, 2.41974967161, 38734.37832446560},
196 { 0.00000000981, 4.37930757970, 110.20632121940},
197 { 0.00000001146, 4.54241415687, 10220.39909321180},
198 { 0.00000001091, 0.48630333703, 51066.42773105500},
199 { 0.00000000981, 1.65915064734, 10103.07922499160},
200 { 0.00000001270, 4.69374306132, 9050.81084180320},
201 { 0.00000001065, 4.41646204804, 22805.73556599360},
202 { 0.00000000854, 2.34437927295, 6681.22485339960},
203 { 0.00000001104, 0.49781459714, 1.48447270830},
204 { 0.00000001075, 1.09857593161, 377.37360791580},
205 { 0.00000001114, 4.35024212108, 51092.72605085480},
206 { 0.00000000829, 5.41196376472, 27991.40181316000},
207 { 0.00000000900, 2.74195213638, 41962.52073693740},
208 { 0.00000001010, 2.96092073452, 135.62532501000},
209 { 0.00000000768, 3.98260860494, 18844.61174413899},
210 { 0.00000001018, 1.36889990282, 36949.23080842420},
211 { 0.00000000725, 1.67729445754, 21202.09370374600},
212 { 0.00000000727, 0.89048212541, 467.96499035440},
213 { 0.00000000869, 2.93235455158, 10192.51015071860},
214 { 0.00000000696, 5.35698039414, 10063.72234907640},
215 { 0.00000000920, 4.17128923588, 18734.40542291960},
216 { 0.00000000691, 1.50594847085, 27197.28169366760},
217 { 0.00000000835, 0.48049677664, 20618.01935853360},
218 { 0.00000000711, 0.19750098222, 18830.38465013739},
219 { 0.00000000811, 0.16685071959, 12432.04265039780},
220 { 0.00000000756, 3.79022449760, 9161.01716302260},
221 { 0.00000000622, 5.33660452826, 9411.46461508720},
222 { 0.00000000862, 5.72705356405, 10175.15251057320},
223 { 0.00000000853, 0.10404194066, 2107.03450754240},
224 { 0.00000000742, 3.96365892051, 813.55028395980},
225 { 0.00000000705, 0.71229660616, 220.41264243880},
226 { 0.00000000584, 1.71900692700, 36.02786667740},
227 { 0.00000000612, 0.36418385449, 949.17560896980},
228 { 0.00000000587, 1.58648949290, 6.62855890001},
229 { 0.00000000581, 5.49288908804, 6309.37416979120},
230 { 0.00000000581, 4.80362317972, 24150.08005134500},
231 { 0.00000000516, 6.07328802561, 38.13303563780},
232 { 0.00000000627, 5.47281424955, 9580.50180689780},
233 { 0.00000000601, 1.40500080384, 1162.47470440780},
234 { 0.00000000620, 4.00681042667, 9992.87290377220},
235 { 0.00000000611, 3.62010998629, 7255.56965173440},
236 { 0.00000000697, 2.22359630727, 348.92442044800},
237 { 0.00000000569, 0.23482601786, 37410.56723987860},
238 { 0.00000000693, 5.77432072851, 55022.93574707440},
239 { 0.00000000494, 0.29762226375, 7058.59846131540},
240 { 0.00000000487, 5.86917216517, 10137.01947493540},
241 { 0.00000000493, 2.04534833854, 735.87651353180},
242 { 0.00000000636, 2.79707415908, 40879.44050464380},
243 { 0.00000000519, 4.13931655130, 16522.65971600220},
244 { 0.00000000535, 4.60569597820, 19573.37471066999},
245 { 0.00000000555, 5.88120469821, 26735.94526221320},
246 { 0.00000000440, 5.61490952812, 23958.63178523340},
247 { 0.00000000541, 0.62494922735, 10007.09999777380},
248 { 0.00000000427, 4.02335620501, 14.22709400160},
249 { 0.00000000434, 0.29028429049, 9264.10993724120},
250 { 0.00000000451, 1.66321968415, 26087.90314157420},
251 { 0.00000000422, 3.38413582674, 10787.63034454580},
252 { 0.00000000568, 5.14001584538, 27490.69247804480},
253 { 0.00000000421, 4.23407420790, 39793.76025465480},
254 { 0.00000000458, 5.28786368820, 49.75702547180},
255 { 0.00000000418, 5.69090817000, 14765.23904326980},
256 { 0.00000000475, 0.97544690438, 1052.26838318840},
257 { 0.00000000387, 4.41665162999, 21.85082932640},
258 { 0.00000000523, 2.90512729055, 20235.12282631040},
259 { 0.00000000506, 5.26999240626, 29999.95935231900},
260 { 0.00000000530, 0.71374608018, 33794.54372352860},
261 { 0.00000000434, 2.49892103222, 20956.26205751660},
262 { 0.00000000382, 1.92119365480, 3.93215326310},
263 { 0.00000000365, 3.81713155389, 20419.45754542119},
264 { 0.00000000426, 2.06384189772, 38204.68735937100},
265 { 0.00000000496, 0.44077356179, 9835.91193829520},
266 { 0.00000000410, 4.93346330078, 19264.09638801420},
267 { 0.00000000380, 3.79573339943, 8521.11987670860},
268 { 0.00000000334, 5.51158557800, 10251.31321884680},
269 { 0.00000000412, 2.56129670728, 77.67377042800},
270 { 0.00000000418, 2.37865963521, 32.53255079140},
271 { 0.00000000325, 6.03020523465, 18947.70451835760},
272 { 0.00000000400, 0.91999360201, 227.47613278900},
273 { 0.00000000437, 0.91420135162, 58953.14544329400},
274 { 0.00000000360, 0.82477639126, 22.77520145080},
275 { 0.00000000413, 4.22381925464, 44809.65020086340},
276 { 0.00000000375, 3.15657291896, 19992.85935454519},
277 { 0.00000000371, 6.05370874275, 20007.08644854680},
278 { 0.00000000361, 5.44371227904, 19470.28193645139},
279 { 0.00000000386, 5.28104804025, 47623.85278608960},
280 { 0.00000000389, 0.73216672240, 19050.79729257620},
281 { 0.00000000320, 2.84811591194, 10199.05845220940},
282 { 0.00000000386, 3.88754165531, 1975.49254585600},
283 { 0.00000000279, 0.50274101065, 9830.38901398780},
284 { 0.00000000276, 4.33978638152, 20809.46762464520},
285 { 0.00000000309, 3.79299100668, 18204.71445782499},
286 { 0.00000000377, 0.73768790585, 11506.76976979360},
287 { 0.00000000322, 0.96113438814, 30666.15495843280},
288 { 0.00000000363, 1.30472406690, 9367.20271145980},
289 { 0.00000000366, 2.79974205585, 11272.66747640020},
290 { 0.00000000271, 4.66141338193, 846.08283475120},
291 { 0.00000000259, 0.42024142711, 39264.06928956020},
292 { 0.00000000285, 0.40546033634, 30.91412563500},
293 { 0.00000000247, 4.80676152850, 36147.40987730040},
294 { 0.00000000264, 2.71608177583, 11.04570026390},
295 { 0.00000000233, 2.76423842887, 187.92514776260},
296 { 0.00000000248, 1.60765612335, 10497.14486507620},
297 { 0.00000000271, 0.82348919630, 19793.78735310880},
298 { 0.00000000225, 3.80080911298, 8631.32619792800},
299 { 0.00000000263, 1.92319161528, 37724.75341974820},
300 { 0.00000000214, 5.01663561403, 639.89728631400},
301 { 0.00000000289, 0.12342601246, 20277.00789528740},
302 { 0.00000000210, 0.12771800254, 29.82143814880},
303 { 0.00000000227, 4.18036609801, 17468.85519794540},
304 { 0.00000000200, 3.67516531895, 30213.25844775700},
305 { 0.00000000274, 2.34929343000, 62883.35513951360},
306 { 0.00000000260, 5.65254501655, 48739.85989708300},
307 { 0.00000000271, 4.95325404028, 4214.06901508480},
308 { 0.00000000219, 2.08775228014, 194.97138446060},
309 { 0.00000000191, 2.49267248333, 568.82187402740},
310 { 0.00000000231, 0.85116556400, 52670.06959330260},
311 { 0.00000000250, 1.52909737354, 6037.24420376200},
312 { 0.00000000231, 5.23674429498, 491.66329245880},
313 { 0.00000000182, 4.98046042571, 18418.01355326299},
314 { 0.00000000188, 2.82273639603, 1385.89527633620},
315 { 0.00000000204, 4.09938646222, 14919.01785375460},
316 { 0.00000000176, 3.82400982460, 9360.08916445900},
317 { 0.00000000198, 2.76491873243, 10217.21769947410},
318 { 0.00000000168, 5.19268690225, 1066.49547719000},
319 { 0.00000000199, 1.95274291865, 7564.83072073800},
320 { 0.00000000172, 5.29332134227, 11764.33076885900},
321 { 0.00000000164, 3.25435371801, 3914.95722503460},
322 { 0.00000000200, 3.82443218090, 18314.92077904440},
323 { 0.00000000203, 5.93253927885, 8617.09910392640},
324 { 0.00000000169, 1.78341902846, 31022.75317085620},
325 { 0.00000000160, 2.84901702400, 10207.76262190360},
326 { 0.00000000159, 2.09236390117, 17248.42530185440},
327 { 0.00000000179, 0.90840065587, 7880.08915333899},
328 { 0.00000000163, 2.79665037814, 41.55079098480},
329 { 0.00000000153, 0.07463240782, 28528.20632525540},
330 { 0.00000000199, 2.48348609726, 34596.36465465240},
331 { 0.00000000149, 2.59213969874, 43071.89928903080},
332 { 0.00000000149, 2.17259986337, 9929.42622734580},
333 { 0.00000000156, 5.20953676299, 22645.32819660879},
334 { 0.00000000148, 2.94331271107, 41654.96311596780},
335 { 0.00000000149, 4.49800344900, 30831.30490474460},
336 { 0.00000000159, 2.11138069179, 19317.19254032860},
337 { 0.00000000154, 2.76536164654, 28513.97923125379},
338 { 0.00000000140, 4.94595038686, 9256.99639024040},
339 { 0.00000000141, 2.57248608474, 13553.89797291080},
340 { 0.00000000137, 1.66482327575, 2636.72547263700},
341 { 0.00000000136, 4.14497573316, 2333.19639287200},
342 { 0.00000000133, 3.91457156721, 32858.61374281979},
343 { 0.00000000140, 2.90644630691, 48947.66387067660},
344 { 0.00000000156, 6.01143377008, 29057.89729034999},
345 { 0.00000000134, 5.75241675118, 68050.42387851159},
346 { 0.00000000154, 3.66827363753, 276.74577186440},
347 { 0.00000000176, 3.77298381177, 66813.56483573320},
348 { 0.00000000126, 5.00217740223, 27461.71084806540},
349 { 0.00000000135, 1.34807013920, 53285.18483524180},
350 { 0.00000000150, 0.25029475344, 290.97286586600},
351 { 0.00000000152, 3.13035647340, 29043.67019634839},
352 { 0.00000000169, 5.04348109430, 73.29712585900},
353 { 0.00000000166, 5.39219948035, 41236.03871706720},
354 { 0.00000000115, 2.02657557658, 37674.99639427640},
355 { 0.00000000163, 5.59796070948, 7576.56007357400},
356 { 0.00000000126, 0.77391784606, 49.99662190420},
357 { 0.00000000163, 0.44241846674, 20350.30502114640},
358 { 0.00000000136, 3.09066368912, 418.92439890060},
359 { 0.00000000154, 0.47086190960, 28418.00000403600},
360 { 0.00000000125, 5.46344374133, 22779.43724619380},
361 { 0.00000000136, 4.17495174196, 42430.48572729180},
362 { 0.00000000120, 0.88537349448, 29573.36116144300},
363 { 0.00000000132, 1.48003093721, 17085.95866572220},
364 { 0.00000000126, 1.39497760964, 966.97087743560},
365 { 0.00000000126, 0.16302255819, 67589.08744705719},
366 { 0.00000000111, 2.50223464050, 20405.79569692960},
367 { 0.00000000143, 3.84026797958, 14128.24277124560},
368 { 0.00000000108, 4.57687521213, 30426.55754319500},
369 { 0.00000000147, 2.11609860260, 34363.36559755600},
370 { 0.00000000133, 1.07792835035, 20639.87018786000},
371 { 0.00000000106, 1.43873202489, 27682.14074415640},
372 { 0.00000000149, 0.09286508794, 8144.27871130440},
373 { 0.00000000103, 0.01992041470, 18300.69368504279},
374 { 0.00000000116, 5.27605692179, 8734.41897214660},
375 { 0.00000000121, 3.57602835443, 45.14121963660},
376 { 0.00000000125, 0.11630302078, 149.56319713460},
377 { 0.00000000108, 5.23732413902, 14169.79356223040},
378 { 0.00000000113, 4.57267032764, 20447.34648791440},
379 { 0.00000000099, 1.51324741656, 10419.47109464820},
380 { 0.00000000105, 1.70350302928, 19580.48825767080},
381 { 0.00000000133, 3.02183293676, 76251.32777062019},
382 { 0.00000000136, 4.17517197268, 3646.35037735440},
383 { 0.00000000097, 6.25332492425, 10198.03307502600},
384 { 0.00000000123, 0.44045588682, 515.46387109300},
385 { 0.00000000129, 3.95296865191, 38526.57435087200},
386 { 0.00000000113, 5.69261397722, 10110.19277199240},
387 { 0.00000000098, 6.23797900467, 202.25339517410},
388 { 0.00000000099, 3.75627530197, 59728.66805461800},
389 { 0.00000000101, 4.62832512136, 65236.22129328540},
390 { 0.00000000111, 1.25947267592, 10846.06928552420},
391 { 0.00000000126, 4.45075374981, 80181.53746683979},
392 { 0.00000000110, 5.87454529350, 38500.27603107220},
393 { 0.00000000093, 0.03768705119, 90695.75207512038},
394 { 0.00000000128, 6.01024562160, 90394.82301305079},
395 { 0.00000000091, 1.77665981007, 1539.31586981200},
396 { 0.00000000092, 0.99804571578, 95.97922721780},
397 { 0.00000000117, 2.24143299549, 56600.27928952220},
398 { 0.00000000118, 6.09121325940, 29786.66025688100},
399 { 0.00000000098, 4.60938156207, 11787.10597030980},
400 { 0.00000000097, 3.92727733144, 11794.15220700780},
401 { 0.00000000085, 5.30575031807, 19624.75016129820},
402 { 0.00000000106, 0.82812501368, 24383.07910844140},
403 { 0.00000000085, 5.69642646462, 37703.97802425580},
404 { 0.00000000114, 5.19676285428, 70743.77453195279},
405 { 0.00000000081, 5.51324815184, 412.37109687440},
406 { 0.00000000080, 5.77520799089, 10632.77019008620},
407 { 0.00000000089, 2.13409771828, 44768.09940987860},
408 { 0.00000000094, 2.18120919704, 28313.28880466100},
409 { 0.00000000088, 0.57046254096, 3956.50801601940},
410 { 0.00000000078, 4.47358603432, 114.43928868521},
411 { 0.00000000104, 4.94045302010, 45585.17281218740},
412 { 0.00000000097, 4.02223363553, 10218.80847051840},
413 { 0.00000000094, 5.81137122373, 69166.43098950500},
414 { 0.00000000076, 0.78247116213, 9793.80090233580},
415 { 0.00000000079, 4.73339536112, 24978.52458948080},
416 { 0.00000000101, 4.81437377872, 58177.62283197000},
417 { 0.00000000097, 3.61746670975, 60530.48898574180},
418 { 0.00000000088, 4.87010387338, 63658.87775083760},
419 { 0.00000000088, 5.17408120336, 48417.97290558199},
420 { 0.00000000078, 5.81927313665, 567.71863773040},
421 { 0.00000000077, 6.16012067704, 1573.82042409880},
422 { 0.00000000084, 0.62512782571, 18100.00325845000},
423 { 0.00000000076, 5.12867208321, 49515.38250840700},
424 { 0.00000000067, 0.24541021814, 17271.88400752640},
425 { 0.00000000069, 0.29569499496, 10175.25787357520},
426 { 0.00000000088, 5.43871184563, 42456.78404709160},
427 { 0.00000000079, 0.30211728530, 63498.47038145279},
428 { 0.00000000080, 2.69571879625, 3149.16416058820},
429 { 0.00000000061, 4.80385228047, 19889.76658032659},
430 { 0.00000000084, 0.22956807093, 88817.47947060299},
431 { 0.00000000060, 0.46406912136, 36301.18868778519},
432 { 0.00000000071, 0.76007659495, 57837.13833230060},
433 { 0.00000000081, 5.24314123043, 36173.70819710020},
434 { 0.00000000057, 3.07470109636, 2118.76386037840},
435 { 0.00000000075, 0.66947402578, 10735.86296430480},
436 { 0.00000000058, 4.94877232192, 47888.28194048740},
437 { 0.00000000068, 0.96147256965, 24341.52831745660},
438 { 0.00000000076, 0.15485592669, 68390.90837818099},
439 { 0.00000000064, 3.61826420613, 32243.49850088060},
440 { 0.00000000062, 1.59487827272, 39999.94580309200},
441 { 0.00000000063, 0.16823121009, 53445.59220462660},
442 { 0.00000000052, 2.85553976522, 10323.49186743040},
443 { 0.00000000058, 1.07613515145, 11692.15212027540},
444 { 0.00000000052, 2.34807495268, 26709.64694241340},
445 { 0.00000000062, 4.09802218900, 34554.81386366760},
446 { 0.00000000048, 0.76057327599, 44783.35188106360},
447 { 0.00000000067, 0.07870600216, 47964.33728575900},
448 { 0.00000000048, 5.30855519348, 48733.23133818299},
449 { 0.00000000047, 3.09314000663, 70269.18098269838},
450 { 0.00000000053, 5.53372176617, 19903.99367432819},
451 { 0.00000000057, 2.43412854215, 10228.53801739600},
452 { 0.00000000043, 6.00071261364, 47938.03896595920},
453 { 0.00000000058, 1.23233304711, 59754.96637441780},
454 { 0.00000000055, 0.99068063794, 21000.91589075680},
455 { 0.00000000060, 5.94539126752, 69968.25192062880},
456 { 0.00000000049, 3.83996757537, 38631.28555024700},
457 { 0.00000000042, 4.73460925987, 37895.42629036740},
458 { 0.00000000044, 1.75905995399, 71519.29714327680},
459 { 0.00000000043, 6.08746206685, 2957.71589447660},
460 { 0.00000000040, 1.31794872194, 20529.66386664059},
461 { 0.00000000046, 4.41749158726, 34570.06633485260},
462 { 0.00000000045, 2.60413561993, 58101.56748669840},
463 { 0.00000000037, 4.69673401538, 44007.82926973960},
464 { 0.00000000039, 2.32823034676, 55798.45835839840},
465 { 0.00000000051, 1.76846419002, 78604.19392439199},
466 { 0.00000000038, 1.28879356308, 73096.64068572459},
467 { 0.00000000048, 1.18664500846, 28306.66024576099},
468 { 0.00000000036, 0.64770877031, 1478.86657406440},
469 { 0.00000000048, 0.40666475573, 40103.91789331980},
470 };
471
472
473 static const struct ln_vsop venus_longitude_l1[LONG_L1] = {
474 { 10213.28554621638, 0.00000000000, 0.00000000000},
475 { 0.00095617813, 2.46406511110, 10213.28554621100},
476 { 0.00007787201, 0.62478482220, 20426.57109242200},
477 { 0.00000151666, 6.10638559291, 1577.34354244780},
478 { 0.00000141694, 2.12362986036, 30639.85663863300},
479 { 0.00000173908, 2.65539499463, 26.29831979980},
480 { 0.00000082235, 5.70231469551, 191.44826611160},
481 { 0.00000069732, 2.68128549229, 9437.76293488700},
482 { 0.00000052292, 3.60270736876, 775.52261132400},
483 { 0.00000038313, 1.03371309443, 529.69096509460},
484 { 0.00000029630, 1.25050823203, 5507.55323866740},
485 { 0.00000025056, 6.10650638660, 10404.73381232260},
486 { 0.00000017772, 6.19369679929, 1109.37855209340},
487 { 0.00000016510, 2.64360813203, 7.11354700080},
488 { 0.00000014231, 5.45125927817, 9153.90361602180},
489 { 0.00000011627, 4.97604433638, 213.29909543800},
490 { 0.00000012563, 1.88122194951, 382.89653222320},
491 { 0.00000008877, 0.95245393457, 13367.97263110660},
492 { 0.00000007374, 4.39476352550, 10206.17199921020},
493 { 0.00000006550, 2.28168331756, 2352.86615377180},
494 { 0.00000006444, 1.41156299643, 40853.14218484400},
495 { 0.00000006269, 4.08365791523, 3154.68708489560},
496 { 0.00000006702, 5.05916048534, 801.82093112380},
497 { 0.00000004099, 4.12235848112, 18837.49819713819},
498 { 0.00000004883, 3.44513438224, 11015.10647733480},
499 { 0.00000003549, 6.19934345402, 5.52292430740},
500 { 0.00000003448, 1.77404222413, 11322.66409830440},
501 { 0.00000004290, 0.08136342862, 6283.07584999140},
502 { 0.00000003699, 2.48455675849, 5661.33204915220},
503 { 0.00000003671, 1.48751015918, 1059.38193018920},
504 { 0.00000003018, 2.23849523296, 18073.70493865020},
505 { 0.00000003000, 0.39169917698, 15.25247118500},
506 { 0.00000002776, 1.45644767378, 10239.58386601080},
507 { 0.00000002463, 0.36768007007, 22003.91463486980},
508 { 0.00000002954, 5.34806371393, 7084.89678111520},
509 { 0.00000002350, 2.36543900882, 17298.18232732620},
510 { 0.00000002405, 2.36085521516, 10596.18207843420},
511 { 0.00000002471, 2.11327686375, 8635.94200376320},
512 { 0.00000001717, 4.72125604095, 10186.98722641120},
513 { 0.00000002135, 4.46350370275, 8624.21265092720},
514 { 0.00000001626, 0.86147271429, 12566.15169998280},
515 { 0.00000001523, 0.67189933187, 14143.49524243060},
516 { 0.00000001473, 2.59350470099, 7064.12138562280},
517 { 0.00000001474, 5.92233777117, 9786.68735533500},
518 { 0.00000001237, 2.59741927942, 4551.95349705880},
519 { 0.00000001219, 2.83617320089, 9676.48103411560},
520 { 0.00000001242, 0.82080840456, 10742.97651130560},
521 { 0.00000001007, 4.25205211647, 426.59819087600},
522 { 0.00000001097, 3.84455455465, 21228.39202354580},
523 { 0.00000001150, 2.35531987378, 9690.70812811720},
524 { 0.00000001219, 2.27326005102, 522.57741809380},
525 { 0.00000001101, 3.74248862749, 18307.80723204360},
526 { 0.00000001031, 2.03889374176, 38.02767263580},
527 { 0.00000000971, 6.10589743884, 3532.06069281140},
528 { 0.00000000887, 4.72636674421, 10988.80815753500},
529 { 0.00000000927, 1.05402087347, 10021.83728009940},
530 { 0.00000000821, 2.60456032773, 19.66976089979},
531 { 0.00000000780, 0.18364413336, 4705.73230754360},
532 { 0.00000000810, 1.32033186808, 19896.88012732740},
533 { 0.00000000744, 3.33129743110, 536.80451209540},
534 { 0.00000000797, 2.23891817601, 3723.50895892300},
535 { 0.00000000709, 5.95126881058, 20.77539549240},
536 { 0.00000000894, 1.08522968560, 11790.62908865880},
537 { 0.00000000660, 0.29717009501, 7860.41939243920},
538 { 0.00000000733, 2.22147883292, 19360.07561523199},
539 { 0.00000000702, 1.76206343944, 19374.30270923360},
540 { 0.00000000633, 2.15202166788, 16496.36139620240},
541 { 0.00000000575, 2.38792087791, 6770.71060124560},
542 { 0.00000000532, 4.41576130890, 574.34479833480},
543 { 0.00000000518, 1.52546538858, 25934.12433108940},
544 { 0.00000000479, 0.30473233584, 28286.99048486120},
545 { 0.00000000576, 5.41170044566, 206.18554843720},
546 { 0.00000000482, 0.40816741074, 3340.61242669980},
547 { 0.00000000537, 0.22055767322, 19367.18916223280},
548 { 0.00000000574, 4.07672246337, 19651.04848109800},
549 { 0.00000000501, 3.08578363577, 245.83164622940},
550 { 0.00000000488, 5.22318430105, 25158.60171976540},
551 { 0.00000000450, 0.21279844600, 11.72935283600},
552 { 0.00000000432, 1.32004964493, 103.09277421860},
553 { 0.00000000434, 5.91094755233, 19786.67380610799},
554 { 0.00000000421, 2.71057839701, 13936.79450513400},
555 { 0.00000000564, 6.13266504618, 3930.20969621960},
556 { 0.00000000478, 4.70225377704, 14945.31617355440},
557 { 0.00000000408, 2.93857115699, 10220.39909321180},
558 { 0.00000000359, 0.72354778897, 419.48464387520},
559 { 0.00000000449, 1.44520508753, 8662.24032356300},
560 { 0.00000000353, 2.85616596224, 29864.33402730900},
561 { 0.00000000333, 1.41991315364, 29580.47470844380},
562 { 0.00000000443, 1.93864343247, 9146.79006902100},
563 { 0.00000000310, 1.08363376581, 20618.01935853360},
564 { 0.00000000324, 1.80146948625, 18830.38465013739},
565 { 0.00000000370, 6.16895004656, 2218.75710418680},
566 { 0.00000000278, 2.20429108375, 18844.61174413899},
567 { 0.00000000286, 3.08458231517, 17277.40693183380},
568 { 0.00000000383, 0.13900678695, 4732.03062734340},
569 { 0.00000000292, 0.43530118043, 29088.81141598500},
570 { 0.00000000273, 5.84415383782, 9573.38825989700},
571 { 0.00000000324, 2.14135439540, 9999.98645077300},
572 { 0.00000000264, 5.20407029554, 220.41264243880},
573 { 0.00000000254, 0.34417665274, 28521.09277825460},
574 { 0.00000000300, 3.76015126903, 8094.52168583260},
575 { 0.00000000303, 1.85088655195, 1589.07289528380},
576 { 0.00000000206, 2.49682541324, 51066.42773105500},
577 { 0.00000000206, 0.97144383633, 10234.06094170340},
578 { 0.00000000212, 0.24173677600, 36.02786667740},
579 { 0.00000000208, 5.19345603406, 24356.78078864160},
580 { 0.00000000216, 5.88607943223, 18875.52586977400},
581 { 0.00000000258, 6.27611237676, 1551.04522264800},
582 { 0.00000000200, 2.09314510849, 9683.59458111640},
583 { 0.00000000217, 5.79530885159, 9103.90699411760},
584 { 0.00000000188, 0.39123199129, 19573.37471066999},
585 { 0.00000000187, 5.49670351645, 170.67287061920},
586 { 0.00000000233, 3.85755192539, 20400.27277262220},
587 { 0.00000000178, 4.90042854659, 10787.63034454580},
588 { 0.00000000188, 1.62614657498, 9161.01716302260},
589 { 0.00000000177, 1.88170417337, 33019.02111220460},
590 { 0.00000000209, 2.66033526608, 3442.57494496540},
591 { 0.00000000164, 5.04773317971, 32217.20018108080},
592 { 0.00000000162, 4.92736966968, 10426.58464164900},
593 { 0.00000000186, 5.13678812068, 7255.56965173440},
594 { 0.00000000177, 5.70206821967, 9992.87290377220},
595 { 0.00000000177, 2.40042123486, 20452.86941222180},
596 { 0.00000000212, 2.73881400176, 3128.38876509580},
597 { 0.00000000208, 3.38876526854, 17778.11626694899},
598 { 0.00000000173, 4.09215943674, 33794.54372352860},
599 { 0.00000000147, 4.25008910034, 16983.99614745660},
600 { 0.00000000189, 1.43553862242, 2379.16447357160},
601 { 0.00000000139, 2.99154379541, 110.20632121940},
602 { 0.00000000159, 5.23851679605, 10007.09999777380},
603 { 0.00000000169, 2.67970563071, 15720.83878487840},
604 { 0.00000000136, 0.88942869764, 22805.73556599360},
605 { 0.00000000155, 5.90500835975, 12592.45001978260},
606 { 0.00000000151, 0.03422618975, 27991.40181316000},
607 { 0.00000000111, 0.77661072477, 6681.22485339960},
608 { 0.00000000109, 2.25388616761, 26735.94526221320},
609 { 0.00000000122, 4.84805105466, 19992.85935454519},
610 { 0.00000000112, 3.31796669604, 36949.23080842420},
611 { 0.00000000106, 3.34507236765, 10103.07922499160},
612 { 0.00000000114, 4.36384000196, 20007.08644854680},
613 { 0.00000000121, 5.42385293514, 37724.75341974820},
614 { 0.00000000100, 0.05731448574, 30110.16567353840},
615 { 0.00000000098, 5.07711736751, 135.62532501000},
616 { 0.00000000109, 0.54849921587, 21535.94964451540},
617 { 0.00000000104, 3.67555714699, 21202.09370374600},
618 { 0.00000000103, 2.65873403125, 20213.27199698400},
619 { 0.00000000087, 5.04316754485, 9830.38901398780},
620 { 0.00000000103, 2.01542881355, 45585.17281218740},
621 { 0.00000000088, 2.62613816931, 21.85082932640},
622 { 0.00000000084, 3.50355880173, 639.89728631400},
623 { 0.00000000099, 0.61072730211, 41654.96311596780},
624 { 0.00000000081, 0.46468679835, 77.67377042800},
625 { 0.00000000092, 4.82530051729, 29043.67019634839},
626 { 0.00000000090, 4.34075776744, 29057.89729034999},
627 { 0.00000000081, 0.01915973453, 24150.08005134500},
628 { 0.00000000095, 2.42613786510, 23581.25817731760},
629 { 0.00000000101, 4.27032438869, 15874.61759536320},
630 { 0.00000000093, 1.79250830018, 12432.04265039780},
631 { 0.00000000087, 5.25157021446, 14128.24277124560},
632 { 0.00000000089, 5.65756996753, 377.37360791580},
633 { 0.00000000076, 1.32618111784, 18300.69368504279},
634 { 0.00000000097, 5.67942873241, 227.47613278900},
635 { 0.00000000076, 2.93363913259, 38204.68735937100},
636 { 0.00000000091, 2.60544242067, 1052.26838318840},
637 { 0.00000000084, 5.65355105405, 17468.85519794540},
638 { 0.00000000082, 0.14972353998, 29050.78374334920},
639 { 0.00000000086, 1.42751065635, 11272.66747640020},
640 { 0.00000000073, 4.75280755154, 40879.44050464380},
641 { 0.00000000068, 3.56578829793, 30666.15495843280},
642 { 0.00000000068, 5.80655405181, 20809.46762464520},
643 { 0.00000000079, 3.84440385450, 27511.46787353720},
644 { 0.00000000067, 3.74236733721, 49515.38250840700},
645 { 0.00000000064, 4.24772678145, 153.77881048480},
646 { 0.00000000064, 2.99454749109, 27197.28169366760},
647 { 0.00000000070, 4.03868009742, 56600.27928952220},
648 { 0.00000000069, 1.73648747605, 37410.56723987860},
649 { 0.00000000065, 1.08206062736, 68050.42387851159},
650 { 0.00000000062, 4.77698454650, 3914.95722503460},
651 { 0.00000000068, 4.28465793234, 39264.06928956020},
652 { 0.00000000061, 4.96121014691, 34596.36465465240},
653 { 0.00000000058, 3.74010494151, 1066.49547719000},
654 { 0.00000000063, 0.15331622244, 57375.80190084620},
655 { 0.00000000057, 5.42590958930, 20419.45754542119},
656 { 0.00000000057, 3.59399518494, 735.87651353180},
657 { 0.00000000065, 2.10322000074, 74.78159856730},
658 { 0.00000000065, 4.21150522641, 49.75702547180},
659 { 0.00000000052, 0.03409255574, 18849.22754997420},
660 { 0.00000000052, 1.95168272115, 18314.92077904440},
661 { 0.00000000055, 2.63906959481, 52670.06959330260},
662 { 0.00000000057, 1.25081330234, 10218.80847051840},
663 { 0.00000000053, 2.14346912907, 13745.34623902240},
664 { 0.00000000049, 0.77417108584, 35371.88726597640},
665 { 0.00000000048, 6.00565977593, 283.85931886520},
666 { 0.00000000050, 4.45949921607, 40077.61957352000},
667 { 0.00000000047, 2.63299859494, 51868.24866217880},
668 { 0.00000000046, 0.05105081843, 38526.57435087200},
669 { 0.00000000050, 4.37549274002, 28513.97923125379},
670 { 0.00000000046, 2.93422086586, 27682.14074415640},
671 { 0.00000000062, 0.41777498261, 30831.30490474460},
672 { 0.00000000053, 1.55276873128, 36301.18868778519},
673 { 0.00000000051, 5.45979584751, 60530.48898574180},
674 { 0.00000000051, 2.02307685593, 59728.66805461800},
675 { 0.00000000045, 5.59492908223, 467.96499035440},
676 { 0.00000000046, 5.16141298965, 53445.59220462660},
677 { 0.00000000045, 5.79863400674, 39793.76025465480},
678 { 0.00000000044, 2.35499883188, 9411.46461508720},
679 { 0.00000000043, 5.62725673544, 14.22709400160},
680 { 0.00000000047, 3.73567275749, 64460.69868196140},
681 { 0.00000000041, 4.11417818861, 14765.23904326980},
682 { 0.00000000039, 0.99375127466, 94138.32702008578},
683 { 0.00000000040, 3.06358586355, 813.55028395980},
684 { 0.00000000039, 6.21378797479, 44809.65020086340},
685 { 0.00000000038, 5.90441887648, 14919.01785375460},
686 { 0.00000000037, 1.08711907413, 17085.95866572220},
687 { 0.00000000039, 1.31034025695, 48739.85989708300},
688 { 0.00000000047, 1.46478876042, 38500.27603107220},
689 { 0.00000000045, 5.84053368365, 37674.99639427640},
690 { 0.00000000036, 1.43280677914, 42456.78404709160},
691 { 0.00000000039, 0.94257393865, 16522.65971600220},
692 { 0.00000000035, 3.00235738584, 36147.40987730040},
693 { 0.00000000031, 1.04908493403, 20235.12282631040},
694 { 0.00000000029, 2.40482238520, 22779.43724619380},
695 { 0.00000000032, 0.41152109043, 10207.76262190360},
696 { 0.00000000028, 4.55982574192, 69166.43098950500},
697 { 0.00000000026, 5.74236795898, 31441.67756975680},
698 { 0.00000000027, 0.29541194003, 19999.97290154599},
699 { 0.00000000033, 4.76470012256, 32858.61374281979},
700 { 0.00000000032, 2.73060531796, 42430.48572729180},
701 { 0.00000000031, 6.16859793641, 10192.51015071860},
702 { 0.00000000022, 5.00575021321, 38741.49187146640},
703 { 0.00000000023, 1.31610007722, 41962.52073693740},
704 { 0.00000000025, 3.71847476472, 55798.45835839840},
705 { 0.00000000020, 3.45607652624, 51092.72605085480},
706 { 0.00000000022, 4.07064236572, 77026.85038194420},
707 { 0.00000000020, 3.00992711288, 24383.07910844140},
708 { 0.00000000023, 2.62973172963, 17248.42530185440},
709 };
710
711
712 static const struct ln_vsop venus_longitude_l2[LONG_L2] = {
713 { 0.00003894209, 0.34823650721, 10213.28554621100},
714 { 0.00000595403, 2.01456107998, 20426.57109242200},
715 { 0.00000287868, 0.00000000000, 0.00000000000},
716 { 0.00000023838, 2.04588223604, 26.29831979980},
717 { 0.00000009964, 3.97089333901, 775.52261132400},
718 { 0.00000007196, 3.65730119531, 30639.85663863300},
719 { 0.00000007043, 1.52107808192, 1577.34354244780},
720 { 0.00000006014, 1.00039990357, 191.44826611160},
721 { 0.00000003167, 4.36138169912, 9437.76293488700},
722 { 0.00000001934, 3.39260216059, 382.89653222320},
723 { 0.00000001459, 6.05311371882, 529.69096509460},
724 { 0.00000001345, 2.94746266562, 5507.55323866740},
725 { 0.00000001024, 1.40825326249, 10404.73381232260},
726 { 0.00000001224, 3.73276078401, 3154.68708489560},
727 { 0.00000001033, 3.52850062173, 11015.10647733480},
728 { 0.00000000767, 2.69606070058, 40853.14218484400},
729 { 0.00000000954, 5.11160150203, 801.82093112380},
730 { 0.00000000742, 1.49195106907, 1109.37855209340},
731 { 0.00000000525, 3.31953730020, 213.29909543800},
732 { 0.00000000574, 0.92286899335, 10239.58386601080},
733 { 0.00000000602, 5.19233174414, 7084.89678111520},
734 { 0.00000000430, 2.67149013569, 13367.97263110660},
735 { 0.00000000414, 4.12761290944, 8635.94200376320},
736 { 0.00000000354, 1.12184896586, 9153.90361602180},
737 { 0.00000000301, 3.90093359463, 10596.18207843420},
738 { 0.00000000212, 5.32697962605, 18837.49819713819},
739 { 0.00000000260, 0.22263894789, 2352.86615377180},
740 { 0.00000000238, 4.67681098719, 6283.07584999140},
741 { 0.00000000201, 4.08110855678, 11790.62908865880},
742 { 0.00000000194, 6.02724392286, 7860.41939243920},
743 { 0.00000000142, 2.26680009846, 12566.15169998280},
744 { 0.00000000134, 4.10542992676, 17298.18232732620},
745 { 0.00000000132, 4.94076356419, 14143.49524243060},
746 { 0.00000000120, 3.39720208207, 11322.66409830440},
747 { 0.00000000122, 5.92478855457, 574.34479833480},
748 { 0.00000000123, 0.09583563880, 18073.70493865020},
749 { 0.00000000093, 0.40064005550, 1059.38193018920},
750 { 0.00000000092, 5.49232517605, 10021.83728009940},
751 { 0.00000000084, 4.89826807621, 18307.80723204360},
752 { 0.00000000074, 2.35249523388, 426.59819087600},
753 { 0.00000000093, 4.99308589840, 14945.31617355440},
754 { 0.00000000082, 5.40423993574, 10186.98722641120},
755 { 0.00000000077, 3.75197709593, 3723.50895892300},
756 { 0.00000000073, 4.51758491759, 22003.91463486980},
757 { 0.00000000063, 5.40172448808, 21228.39202354580},
758 { 0.00000000056, 4.11553639116, 7064.12138562280},
759 { 0.00000000060, 4.93370008569, 19367.18916223280},
760 { 0.00000000049, 3.25379905760, 4705.73230754360},
761 { 0.00000000050, 3.77184609210, 16496.36139620240},
762 { 0.00000000046, 3.47336429841, 24356.78078864160},
763 { 0.00000000039, 4.90344944830, 10988.80815753500},
764 { 0.00000000043, 5.95093813100, 15720.83878487840},
765 { 0.00000000046, 0.17122496786, 18875.52586977400},
766 { 0.00000000036, 0.01596424782, 32217.20018108080},
767 { 0.00000000034, 4.09532663146, 51066.42773105500},
768 { 0.00000000035, 5.21393402819, 29088.81141598500},
769 { 0.00000000038, 5.09836948659, 20400.27277262220},
770 { 0.00000000031, 4.74821153380, 28521.09277825460},
771 { 0.00000000034, 0.23500259595, 1551.04522264800},
772 { 0.00000000028, 6.22734256170, 19896.88012732740},
773 { 0.00000000027, 2.91232520372, 20452.86941222180},
774 { 0.00000000024, 0.49535690639, 21202.09370374600},
775 { 0.00000000022, 0.66358494216, 25158.60171976540},
776 { 0.00000000021, 4.95420122738, 28286.99048486120},
777 { 0.00000000023, 2.15949646745, 20618.01935853360},
778 { 0.00000000017, 5.75476455324, 19651.04848109800},
779 { 0.00000000014, 4.88424354153, 10742.97651130560},
780 { 0.00000000016, 1.22245134655, 9683.59458111640},
781 { 0.00000000012, 3.40005378661, 9830.38901398780},
782 { 0.00000000012, 6.06704683094, 25934.12433108940},
783 { 0.00000000011, 3.73596829532, 4732.03062734340},
784 { 0.00000000010, 5.50483756065, 29580.47470844380},
785 };
786
787
788 static const struct ln_vsop venus_longitude_l3[LONG_L3] = {
789 { 0.00000136328, 4.79698723753, 10213.28554621100},
790 { 0.00000030661, 3.71663788064, 20426.57109242200},
791 { 0.00000003041, 3.14159265359, 0.00000000000},
792 { 0.00000000506, 5.34186957078, 30639.85663863300},
793 { 0.00000000071, 4.27707588774, 40853.14218484400},
794 { 0.00000000008, 1.76653383282, 10186.98722641120},
795 { 0.00000000006, 5.61707828538, 10239.58386601080},
796 };
797
798
799 static const struct ln_vsop venus_longitude_l4[LONG_L4] = {
800 { 0.00000001636, 2.50540811485, 10213.28554621100},
801 { 0.00000001080, 5.10106236574, 20426.57109242200},
802 { 0.00000000018, 0.88315856739, 30639.85663863300},
803 { 0.00000000005, 5.76650226003, 40853.14218484400},
804 };
805
806
807 static const struct ln_vsop venus_longitude_l5[LONG_L5] = {
808 { 0.00000000122, 1.88711724630, 10213.28554621100},
809 { 0.00000000043, 0.42125909290, 20426.57109242200},
810 };
811
812
813 static const struct ln_vsop venus_latitude_b0[LAT_B0] = {
814 { 0.05923638472, 0.26702775812, 10213.28554621100},
815 { 0.00040107978, 1.14737178112, 20426.57109242200},
816 { 0.00032814918, 3.14159265359, 0.00000000000},
817 { 0.00001011392, 1.08946119730, 30639.85663863300},
818 { 0.00000149458, 6.25390268112, 18073.70493865020},
819 { 0.00000137788, 0.86020095586, 1577.34354244780},
820 { 0.00000129973, 3.67152480061, 9437.76293488700},
821 { 0.00000119507, 3.70468787104, 2352.86615377180},
822 { 0.00000107971, 4.53903678347, 22003.91463486980},
823 { 0.00000092029, 1.53954519783, 9153.90361602180},
824 { 0.00000052982, 2.28138198002, 5507.55323866740},
825 { 0.00000045617, 0.72319646289, 10239.58386601080},
826 { 0.00000038855, 2.93437865147, 10186.98722641120},
827 { 0.00000043491, 6.14015779106, 11790.62908865880},
828 { 0.00000041700, 5.99126840013, 19896.88012732740},
829 { 0.00000039644, 3.86842103668, 8635.94200376320},
830 { 0.00000039175, 3.94960158566, 529.69096509460},
831 { 0.00000033320, 4.83194901518, 14143.49524243060},
832 { 0.00000023711, 2.90647469167, 10988.80815753500},
833 { 0.00000023501, 2.00771051056, 13367.97263110660},
834 { 0.00000021809, 2.69701690731, 19651.04848109800},
835 { 0.00000020653, 0.98666980431, 775.52261132400},
836 { 0.00000016976, 4.13711781587, 10021.83728009940},
837 { 0.00000017835, 5.96267283261, 25934.12433108940},
838 { 0.00000014949, 5.61073907363, 10404.73381232260},
839 { 0.00000018579, 1.80529274878, 40853.14218484400},
840 { 0.00000015408, 3.29564350192, 11015.10647733480},
841 { 0.00000012936, 5.42651380854, 29580.47470844380},
842 { 0.00000011961, 3.57602108535, 10742.97651130560},
843 { 0.00000011827, 1.19069755007, 8624.21265092720},
844 { 0.00000011466, 5.12780356163, 6283.07584999140},
845 { 0.00000009485, 2.75168410372, 191.44826611160},
846 { 0.00000013129, 5.70734244216, 9683.59458111640},
847 { 0.00000008583, 0.43182249198, 9786.68735533500},
848 { 0.00000009762, 0.14614751233, 20618.01935853360},
849 { 0.00000008149, 1.30548940012, 15720.83878487840},
850 { 0.00000006050, 6.26541666310, 11322.66409830440},
851 { 0.00000005955, 4.92234246004, 1059.38193018920},
852 { 0.00000006983, 3.44922389028, 17298.18232732620},
853 { 0.00000006228, 1.13312066423, 29864.33402730900},
854 { 0.00000006186, 4.92496803755, 19367.18916223280},
855 { 0.00000006155, 2.42413936688, 4705.73230754360},
856 { 0.00000005204, 3.42528894645, 9103.90699411760},
857 { 0.00000006000, 3.57638441137, 3154.68708489560},
858 { 0.00000004795, 3.86669268805, 7860.41939243920},
859 { 0.00000005290, 4.99182440452, 7084.89678111520},
860 { 0.00000004070, 5.58794939725, 12566.15169998280},
861 { 0.00000003942, 5.68758787835, 10206.17199921020},
862 { 0.00000003797, 3.89520601076, 10192.51015071860},
863 { 0.00000003798, 6.06410995916, 10234.06094170340},
864 { 0.00000003579, 0.73789669232, 4551.95349705880},
865 { 0.00000003641, 2.61501257209, 15874.61759536320},
866 { 0.00000003266, 0.97519046577, 23581.25817731760},
867 { 0.00000002813, 0.29952168976, 9411.46461508720},
868 { 0.00000003048, 2.51084795752, 33794.54372352860},
869 { 0.00000002559, 4.58049120677, 801.82093112380},
870 { 0.00000002462, 5.05797190589, 29050.78374334920},
871 { 0.00000002593, 5.73113176750, 20213.27199698400},
872 { 0.00000002625, 4.24272906572, 213.29909543800},
873 { 0.00000002246, 0.82114581737, 28286.99048486120},
874 { 0.00000002229, 2.22457598233, 10426.58464164900},
875 { 0.00000001742, 1.48397982399, 7058.59846131540},
876 { 0.00000001660, 5.42775872173, 32217.20018108080},
877 { 0.00000001491, 4.64880136152, 1109.37855209340},
878 { 0.00000002010, 0.75702888130, 9999.98645077300},
879 { 0.00000001563, 3.93962296253, 37724.75341974820},
880 { 0.00000001538, 2.17314207854, 21535.94964451540},
881 { 0.00000001546, 4.70759129230, 14945.31617355440},
882 { 0.00000001200, 1.48266337604, 9830.38901398780},
883 { 0.00000001224, 5.55090394425, 5661.33204915220},
884 { 0.00000001111, 1.20281402179, 9573.38825989700},
885 { 0.00000001064, 1.98891375551, 26.29831979980},
886 { 0.00000001041, 5.38535116069, 7.11354700080},
887 { 0.00000001036, 1.16727012915, 8662.24032356300},
888 { 0.00000001143, 3.20596958339, 3532.06069281140},
889 { 0.00000001201, 0.81922498884, 8094.52168583260},
890 { 0.00000001005, 2.38430401606, 27511.46787353720},
891 { 0.00000001047, 4.56525030764, 20419.45754542119},
892 { 0.00000000968, 6.18496285828, 25158.60171976540},
893 { 0.00000001044, 1.98033274400, 10596.18207843420},
894 { 0.00000000962, 0.48573513747, 23958.63178523340},
895 { 0.00000000846, 0.01577122167, 3128.38876509580},
896 { 0.00000000792, 5.39683788914, 24356.78078864160},
897 { 0.00000000858, 5.34721623594, 41654.96311596780},
898 { 0.00000000758, 6.25923864937, 20452.86941222180},
899 { 0.00000000801, 4.62406152514, 9929.42622734580},
900 { 0.00000000802, 5.37234892520, 10497.14486507620},
901 { 0.00000000750, 3.85221291360, 21228.39202354580},
902 { 0.00000000701, 1.98087454891, 3930.20969621960},
903 { 0.00000000719, 6.11596800207, 10218.80847051840},
904 { 0.00000000672, 6.23429601211, 14765.23904326980},
905 { 0.00000000639, 5.37595576896, 1589.07289528380},
906 { 0.00000000605, 2.42330391120, 10251.31321884680},
907 { 0.00000000726, 6.16679714176, 18875.52586977400},
908 { 0.00000000613, 5.99731180692, 4732.03062734340},
909 { 0.00000000720, 3.84286345199, 10207.76262190360},
910 { 0.00000000637, 6.17053891151, 10220.39909321180},
911 { 0.00000000515, 1.03004255543, 22779.43724619380},
912 { 0.00000000574, 0.43826866390, 17085.95866572220},
913 { 0.00000000510, 1.41066951048, 9161.01716302260},
914 { 0.00000000569, 3.34606383399, 3340.61242669980},
915 { 0.00000000608, 1.25236241968, 10175.25787357520},
916 { 0.00000000524, 2.39794248664, 26087.90314157420},
917 { 0.00000000543, 1.34669062643, 29088.81141598500},
918 { 0.00000000527, 4.02005650673, 18849.22754997420},
919 { 0.00000000568, 1.65449906239, 39264.06928956020},
920 { 0.00000000518, 4.96996115441, 30213.25844775700},
921 { 0.00000000515, 5.78424359731, 12592.45001978260},
922 { 0.00000000538, 4.56198503482, 10063.72234907640},
923 { 0.00000000484, 4.18570967634, 14919.01785375460},
924 { 0.00000000493, 4.79953014808, 9146.79006902100},
925 { 0.00000000427, 3.76882042266, 11272.66747640020},
926 { 0.00000000495, 0.49176119118, 45585.17281218740},
927 { 0.00000000495, 3.74294537743, 31441.67756975680},
928 { 0.00000000524, 0.97969838972, 30110.16567353840},
929 { 0.00000000483, 1.87898083461, 51066.42773105500},
930 { 0.00000000505, 3.70047474052, 20400.27277262220},
931 { 0.00000000351, 4.34026574490, 10137.01947493540},
932 { 0.00000000356, 5.56743301907, 18837.49819713819},
933 { 0.00000000328, 3.78427378911, 6681.22485339960},
934 { 0.00000000349, 4.20513745358, 20956.26205751660},
935 { 0.00000000333, 4.44934899983, 28521.09277825460},
936 { 0.00000000296, 2.83205515647, 17277.40693183380},
937 { 0.00000000311, 2.57313811169, 20809.46762464520},
938 { 0.00000000294, 0.75089224483, 3149.16416058820},
939 { 0.00000000377, 3.98143310344, 21202.09370374600},
940 { 0.00000000272, 5.56146064111, 16496.36139620240},
941 { 0.00000000314, 0.02584607106, 13745.34623902240},
942 { 0.00000000263, 0.55359290511, 36147.40987730040},
943 { 0.00000000286, 5.16408902152, 426.59819087600},
944 { 0.00000000279, 4.29871616015, 19999.97290154599},
945 { 0.00000000280, 1.92923790310, 49515.38250840700},
946 { 0.00000000265, 4.81161712090, 20235.12282631040},
947 { 0.00000000273, 5.12739677980, 35371.88726597640},
948 { 0.00000000307, 5.28914601501, 382.89653222320},
949 { 0.00000000223, 2.50591295336, 26709.64694241340},
950 { 0.00000000235, 5.96522395118, 10198.03307502600},
951 { 0.00000000234, 3.52866583267, 10228.53801739600},
952 { 0.00000000224, 6.24561979791, 7064.12138562280},
953 { 0.00000000251, 2.84752569358, 33019.02111220460},
954 { 0.00000000196, 1.50610823821, 31749.23519072640},
955 { 0.00000000192, 1.69322019350, 13341.67431130680},
956 { 0.00000000180, 6.19353102835, 39793.76025465480},
957 { 0.00000000199, 1.16466425386, 22805.73556599360},
958 { 0.00000000180, 3.72630445822, 1551.04522264800},
959 { 0.00000000172, 3.35254224852, 53445.59220462660},
960 { 0.00000000195, 1.51901264133, 43232.30665841560},
961 { 0.00000000174, 2.84049662693, 9967.45389998160},
962 { 0.00000000163, 4.29008955007, 36949.23080842420},
963 { 0.00000000169, 0.37000676558, 10459.11719244040},
964 { 0.00000000137, 5.61149803116, 10529.67741586760},
965 { 0.00000000139, 0.87990954673, 16522.65971600220},
966 { 0.00000000139, 4.12576475412, 36301.18868778519},
967 { 0.00000000127, 5.14447758617, 5481.25491886760},
968 { 0.00000000131, 3.11317801589, 9896.89367655440},
969 { 0.00000000131, 0.89697384734, 3442.57494496540},
970 { 0.00000000121, 1.32914080245, 38734.37832446560},
971 { 0.00000000122, 1.59017183044, 10110.19277199240},
972 { 0.00000000123, 2.33714216061, 10316.37832042960},
973 { 0.00000000133, 2.90682399304, 9793.80090233580},
974 { 0.00000000111, 2.51956905782, 13936.79450513400},
975 { 0.00000000120, 0.36015902371, 536.80451209540},
976 { 0.00000000115, 2.53305863643, 26735.94526221320},
977 { 0.00000000108, 2.65839634325, 10232.95530711079},
978 { 0.00000000108, 0.55230439694, 10193.61578531121},
979 { 0.00000000138, 1.06919239242, 65236.22129328540},
980 { 0.00000000101, 3.17003240566, 19317.19254032860},
981 { 0.00000000127, 5.63110477712, 10288.06714477830},
982 { 0.00000000127, 3.86278127025, 10138.50394764370},
983 { 0.00000000137, 2.93350659462, 47162.51635463520},
984 { 0.00000000095, 5.03917884339, 52175.80628314840},
985 { 0.00000000094, 0.71305001399, 38500.27603107220},
986 { 0.00000000093, 5.46196838829, 11764.33076885900},
987 { 0.00000000096, 1.52914774412, 9690.70812811720},
988 { 0.00000000101, 0.83318284424, 6489.77658728800},
989 { 0.00000000115, 3.76443612240, 522.57741809380},
990 { 0.00000000089, 2.53312656681, 10735.86296430480},
991 { 0.00000000082, 0.85729618993, 2379.16447357160},
992 { 0.00000000103, 5.22683237626, 103.09277421860},
993 { 0.00000000090, 2.12423586627, 28313.28880466100},
994 { 0.00000000090, 0.39668501734, 9580.50180689780},
995 { 0.00000000074, 6.02798429860, 3723.50895892300},
996 { 0.00000000081, 5.25045057985, 10419.47109464820},
997 { 0.00000000080, 4.23724598221, 10007.09999777380},
998 { 0.00000000091, 2.48874147948, 10846.06928552420},
999 { 0.00000000085, 3.82491067322, 51868.24866217880},
1000 { 0.00000000081, 2.26186773193, 3903.91137641980},
1001 { 0.00000000097, 0.77436917916, 18307.80723204360},
1002 { 0.00000000094, 0.17064745052, 6872.67311951120},
1003 { 0.00000000080, 5.62388508292, 29999.95935231900},
1004 { 0.00000000068, 2.71544542018, 16983.99614745660},
1005 { 0.00000000076, 0.36189761470, 39302.09696219600},
1006 { 0.00000000066, 0.76731351843, 20.77539549240},
1007 { 0.00000000075, 2.27327165974, 8521.11987670860},
1008 { 0.00000000058, 2.14482855875, 8631.32619792800},
1009 { 0.00000000064, 5.83567991327, 2118.76386037840},
1010 { 0.00000000058, 2.98359709521, 19889.76658032659},
1011 { 0.00000000054, 1.78252843890, 40077.61957352000},
1012 { 0.00000000055, 4.70485939801, 639.89728631400},
1013 { 0.00000000060, 5.89548057045, 41962.52073693740},
1014 { 0.00000000066, 2.24746237992, 74.78159856730},
1015 { 0.00000000061, 3.40726181591, 27490.69247804480},
1016 { 0.00000000051, 3.07546032535, 24150.08005134500},
1017 { 0.00000000057, 2.30081371235, 20529.66386664059},
1018 { 0.00000000051, 2.37255859198, 29573.36116144300},
1019 { 0.00000000052, 4.76676085839, 57375.80190084620},
1020 { 0.00000000054, 5.89684197257, 19903.99367432819},
1021 { 0.00000000047, 1.61776744350, 30831.30490474460},
1022 { 0.00000000040, 5.32238959879, 42430.48572729180},
1023 { 0.00000000051, 5.29366964725, 29587.58825544460},
1024 };
1025
1026
1027 static const struct ln_vsop venus_latitude_b1[LAT_B1] = {
1028 { 0.00287821243, 1.88964962838, 10213.28554621100},
1029 { 0.00003499578, 3.71117560516, 20426.57109242200},
1030 { 0.00001257844, 0.00000000000, 0.00000000000},
1031 { 0.00000096152, 2.74240664188, 30639.85663863300},
1032 { 0.00000013051, 2.27549606211, 9437.76293488700},
1033 { 0.00000008052, 5.55049163175, 1577.34354244780},
1034 { 0.00000006792, 1.60704519868, 18073.70493865020},
1035 { 0.00000007521, 0.28931916342, 9153.90361602180},
1036 { 0.00000005612, 1.59167143282, 11790.62908865880},
1037 { 0.00000006460, 5.23429470615, 10186.98722641120},
1038 { 0.00000005405, 6.15384515120, 22003.91463486980},
1039 { 0.00000004194, 5.40627767662, 2352.86615377180},
1040 { 0.00000005097, 4.17404177420, 10239.58386601080},
1041 { 0.00000004085, 0.73618047930, 5507.55323866740},
1042 { 0.00000003349, 1.34464128958, 10404.73381232260},
1043 { 0.00000002941, 4.40460505149, 19651.04848109800},
1044 { 0.00000002670, 3.92292198547, 40853.14218484400},
1045 { 0.00000002746, 5.04771993757, 10988.80815753500},
1046 { 0.00000002216, 1.74777661827, 8635.94200376320},
1047 { 0.00000001934, 1.35730576040, 19896.88012732740},
1048 { 0.00000001960, 0.38471810829, 13367.97263110660},
1049 { 0.00000001859, 5.60931743743, 529.69096509460},
1050 { 0.00000001586, 2.31959766692, 10021.83728009940},
1051 { 0.00000001733, 3.34619758004, 6283.07584999140},
1052 { 0.00000001227, 1.71667580691, 20618.01935853360},
1053 { 0.00000001223, 6.18665596267, 7860.41939243920},
1054 { 0.00000000980, 2.99089645869, 15720.83878487840},
1055 { 0.00000000961, 5.06770207004, 775.52261132400},
1056 { 0.00000000976, 1.28004342015, 25934.12433108940},
1057 { 0.00000000785, 1.77460186481, 11322.66409830440},
1058 { 0.00000000727, 0.60317628984, 8624.21265092720},
1059 { 0.00000000756, 0.68622306427, 19367.18916223280},
1060 { 0.00000000625, 0.74326657001, 29580.47470844380},
1061 { 0.00000000525, 5.08155157418, 9786.68735533500},
1062 { 0.00000000553, 1.74144182497, 17298.18232732620},
1063 { 0.00000000503, 2.68460156951, 23581.25817731760},
1064 { 0.00000000467, 0.17554338129, 11015.10647733480},
1065 { 0.00000000400, 0.33304670031, 4705.73230754360},
1066 { 0.00000000438, 2.30926644329, 10742.97651130560},
1067 { 0.00000000356, 1.05880387658, 14143.49524243060},
1068 { 0.00000000359, 4.84089408623, 3930.20969621960},
1069 { 0.00000000431, 3.73519308368, 10596.18207843420},
1070 { 0.00000000312, 6.24028343022, 9830.38901398780},
1071 { 0.00000000321, 3.83963668925, 21228.39202354580},
1072 { 0.00000000329, 2.71641787634, 29864.33402730900},
1073 { 0.00000000267, 1.90575325749, 9103.90699411760},
1074 { 0.00000000256, 4.22499119257, 191.44826611160},
1075 { 0.00000000259, 1.81366693404, 1059.38193018920},
1076 { 0.00000000348, 2.27789745461, 9999.98645077300},
1077 { 0.00000000258, 2.61400704653, 9411.46461508720},
1078 { 0.00000000242, 3.18580218709, 12566.15169998280},
1079 { 0.00000000294, 4.38485988087, 15874.61759536320},
1080 { 0.00000000274, 4.80172249298, 10206.17199921020},
1081 { 0.00000000243, 6.15371511696, 20419.45754542119},
1082 { 0.00000000216, 2.14070499134, 801.82093112380},
1083 { 0.00000000195, 3.43788708589, 28286.99048486120},
1084 { 0.00000000203, 4.40417469081, 10220.39909321180},
1085 { 0.00000000204, 1.39050905939, 10234.06094170340},
1086 { 0.00000000177, 6.13411796219, 10426.58464164900},
1087 { 0.00000000174, 6.13034607143, 9161.01716302260},
1088 { 0.00000000186, 3.77010906124, 7058.59846131540},
1089 { 0.00000000167, 5.56979067201, 10192.51015071860},
1090 { 0.00000000197, 0.07905532678, 29050.78374334920},
1091 { 0.00000000186, 4.07019341948, 33794.54372352860},
1092 { 0.00000000155, 3.66480557020, 7.11354700080},
1093 { 0.00000000138, 5.96011224678, 3154.68708489560},
1094 { 0.00000000158, 5.50203206635, 37724.75341974820},
1095 { 0.00000000147, 3.62347099998, 21535.94964451540},
1096 { 0.00000000141, 1.64907514042, 32217.20018108080},
1097 { 0.00000000168, 6.17942898657, 18837.49819713819},
1098 { 0.00000000149, 4.71613322834, 25158.60171976540},
1099 { 0.00000000124, 4.14558329896, 27511.46787353720},
1100 { 0.00000000117, 1.26060116043, 7084.89678111520},
1101 { 0.00000000112, 2.64211360535, 22779.43724619380},
1102 { 0.00000000111, 1.56882986044, 9683.59458111640},
1103 { 0.00000000125, 5.85773130047, 213.29909543800},
1104 { 0.00000000106, 1.60206102260, 10207.76262190360},
1105 { 0.00000000106, 1.60857575234, 10218.80847051840},
1106 { 0.00000000107, 0.06029270673, 20400.27277262220},
1107 { 0.00000000105, 5.17582412260, 8662.24032356300},
1108 { 0.00000000115, 0.14229628995, 9146.79006902100},
1109 { 0.00000000118, 0.93060644045, 20213.27199698400},
1110 { 0.00000000134, 5.76506264779, 26.29831979980},
1111 { 0.00000000100, 0.63855627551, 41654.96311596780},
1112 { 0.00000000093, 2.39421056035, 3128.38876509580},
1113 { 0.00000000083, 0.24054840895, 14919.01785375460},
1114 { 0.00000000086, 1.99704954707, 10228.53801739600},
1115 { 0.00000000086, 1.21365119312, 10198.03307502600},
1116 { 0.00000000076, 6.15164147653, 21202.09370374600},
1117 { 0.00000000076, 2.50538996449, 4551.95349705880},
1118 { 0.00000000081, 3.54317093055, 51066.42773105500},
1119 { 0.00000000070, 3.62977580498, 20452.86941222180},
1120 { 0.00000000069, 3.33801158730, 11272.66747640020},
1121 { 0.00000000066, 2.40044362019, 16496.36139620240},
1122 { 0.00000000074, 0.81937069238, 382.89653222320},
1123 { 0.00000000084, 1.84615505638, 45585.17281218740},
1124 { 0.00000000058, 5.54500123157, 5661.33204915220},
1125 { 0.00000000062, 6.22847666967, 29088.81141598500},
1126 { 0.00000000048, 5.23337244147, 3149.16416058820},
1127 { 0.00000000045, 4.23847970134, 20809.46762464520},
1128 { 0.00000000043, 3.13312030807, 30110.16567353840},
1129 { 0.00000000042, 2.05265738782, 24356.78078864160},
1130 { 0.00000000048, 1.26595147651, 33019.02111220460},
1131 { 0.00000000056, 3.26535945634, 49515.38250840700},
1132 { 0.00000000049, 4.20217286778, 13341.67431130680},
1133 { 0.00000000042, 2.07085732347, 426.59819087600},
1134 { 0.00000000044, 1.20392434392, 12592.45001978260},
1135 { 0.00000000036, 5.57938191798, 31441.67756975680},
1136 { 0.00000000038, 4.98083686092, 536.80451209540},
1137 { 0.00000000043, 1.90863602359, 3532.06069281140},
1138 { 0.00000000035, 3.83053326183, 18849.22754997420},
1139 { 0.00000000032, 5.81052626816, 28521.09277825460},
1140 { 0.00000000028, 3.80386218448, 4732.03062734340},
1141 { 0.00000000031, 5.41631373906, 522.57741809380},
1142 { 0.00000000026, 2.11998839024, 23958.63178523340},
1143 { 0.00000000023, 4.45861699215, 17277.40693183380},
1144 { 0.00000000022, 1.46296031303, 8094.52168583260},
1145 { 0.00000000024, 6.20898418337, 26087.90314157420},
1146 { 0.00000000020, 4.66182643911, 19889.76658032659},
1147 { 0.00000000020, 0.98405518609, 19999.97290154599},
1148 { 0.00000000023, 3.22003976882, 39264.06928956020},
1149 };
1150
1151
1152 static const struct ln_vsop venus_latitude_b2[LAT_B2] = {
1153 { 0.00012657745, 3.34796457029, 10213.28554621100},
1154 { 0.00000151225, 0.00000000000, 0.00000000000},
1155 { 0.00000037476, 5.34638962141, 20426.57109242200},
1156 { 0.00000010627, 3.81894300538, 30639.85663863300},
1157 { 0.00000000942, 0.01311905561, 10186.98722641120},
1158 { 0.00000000747, 4.13620174126, 10239.58386601080},
1159 { 0.00000000434, 3.26791015348, 11790.62908865880},
1160 { 0.00000000439, 6.04066783494, 10988.80815753500},
1161 { 0.00000000331, 6.20632270120, 9437.76293488700},
1162 { 0.00000000332, 2.82983937642, 10404.73381232260},
1163 { 0.00000000340, 5.14190117554, 9153.90361602180},
1164 { 0.00000000244, 6.07029755311, 19651.04848109800},
1165 { 0.00000000274, 0.56238407651, 2352.86615377180},
1166 { 0.00000000273, 3.09551287480, 18073.70493865020},
1167 { 0.00000000268, 4.02642385642, 1577.34354244780},
1168 { 0.00000000217, 5.37498456751, 40853.14218484400},
1169 { 0.00000000213, 1.22633958472, 22003.91463486980},
1170 { 0.00000000141, 5.42727181668, 5507.55323866740},
1171 { 0.00000000130, 5.26806549972, 13367.97263110660},
1172 { 0.00000000101, 4.64089661780, 15720.83878487840},
1173 { 0.00000000097, 0.79512785540, 10021.83728009940},
1174 { 0.00000000095, 0.22330149810, 8635.94200376320},
1175 { 0.00000000090, 2.70556129424, 19896.88012732740},
1176 { 0.00000000090, 0.51306700906, 529.69096509460},
1177 { 0.00000000084, 2.50344831127, 9683.59458111640},
1178 { 0.00000000070, 3.27104614873, 20618.01935853360},
1179 { 0.00000000058, 3.30656672462, 11322.66409830440},
1180 { 0.00000000075, 5.25593390437, 10596.18207843420},
1181 { 0.00000000045, 4.74613910444, 7058.59846131540},
1182 { 0.00000000039, 4.73196017252, 9830.38901398780},
1183 { 0.00000000046, 3.81232018036, 775.52261132400},
1184 { 0.00000000034, 3.64209909537, 14143.49524243060},
1185 { 0.00000000031, 4.03554572158, 6283.07584999140},
1186 { 0.00000000036, 2.08483265333, 801.82093112380},
1187 { 0.00000000034, 2.85714821360, 9411.46461508720},
1188 { 0.00000000023, 0.53259218563, 10206.17199921020},
1189 { 0.00000000023, 5.81970120815, 10220.39909321180},
1190 { 0.00000000029, 0.34238212730, 11015.10647733480},
1191 { 0.00000000021, 4.61555386478, 9999.98645077300},
1192 { 0.00000000020, 4.88064054230, 10426.58464164900},
1193 { 0.00000000026, 2.20763733076, 18849.22754997420},
1194 { 0.00000000022, 3.98619109775, 10742.97651130560},
1195 { 0.00000000019, 4.86026864659, 4705.73230754360},
1196 { 0.00000000018, 4.37664030659, 23581.25817731760},
1197 { 0.00000000018, 2.57254812330, 19367.18916223280},
1198 { 0.00000000018, 5.52181260638, 21228.39202354580},
1199 { 0.00000000021, 2.75902377111, 25934.12433108940},
1200 { 0.00000000019, 2.22080338031, 29580.47470844380},
1201 { 0.00000000017, 2.48643394548, 3128.38876509580},
1202 { 0.00000000014, 6.20079529340, 191.44826611160},
1203 { 0.00000000015, 5.74322714868, 26.29831979980},
1204 };
1205
1206
1207 static const struct ln_vsop venus_latitude_b3[LAT_B3] = {
1208 { 0.00000376505, 4.87650249694, 10213.28554621100},
1209 { 0.00000012587, 3.14159265359, 0.00000000000},
1210 { 0.00000004809, 0.43423918018, 20426.57109242200},
1211 { 0.00000000835, 5.57179521329, 30639.85663863300},
1212 { 0.00000000046, 1.54914240166, 10186.98722641120},
1213 { 0.00000000034, 5.78743368814, 10239.58386601080},
1214 { 0.00000000019, 0.76227312580, 40853.14218484400},
1215 { 0.00000000013, 4.63920619996, 11790.62908865880},
1216 { 0.00000000014, 5.47124304598, 9437.76293488700},
1217 { 0.00000000014, 0.87652853636, 10988.80815753500},
1218 { 0.00000000010, 1.84595947891, 2352.86615377180},
1219 { 0.00000000005, 1.36825703657, 19651.04848109800},
1220 };
1221
1222
1223 static const struct ln_vsop venus_latitude_b4[LAT_B4] = {
1224 { 0.00000008558, 0.17181972054, 10213.28554621100},
1225 { 0.00000000114, 2.50366130090, 20426.57109242200},
1226 { 0.00000000115, 3.14159265359, 0.00000000000},
1227 { 0.00000000041, 0.74061432691, 30639.85663863300},
1228 };
1229
1230
1231 static const struct ln_vsop venus_latitude_b5[LAT_B5] = {
1232 { 0.00000000149, 1.67437168506, 10213.28554621100},
1233 { 0.00000000023, 0.00000000000, 0.00000000000},
1234 { 0.00000000008, 3.73924477319, 20426.57109242200},
1235 { 0.00000000002, 2.28783748701, 30639.85663863300},
1236 };
1237
1238
1239 static const struct ln_vsop venus_radius_r0[RADIUS_R0] = {
1240 { 0.72334820891, 0.00000000000, 0.00000000000},
1241 { 0.00489824182, 4.02151831717, 10213.28554621100},
1242 { 0.00001658058, 4.90206728031, 20426.57109242200},
1243 { 0.00001632096, 2.84548795207, 7860.41939243920},
1244 { 0.00001378043, 1.12846591367, 11790.62908865880},
1245 { 0.00000498395, 2.58682193892, 9683.59458111640},
1246 { 0.00000373958, 1.42314832858, 3930.20969621960},
1247 { 0.00000263615, 5.52938716941, 9437.76293488700},
1248 { 0.00000237454, 2.55136053886, 15720.83878487840},
1249 { 0.00000221985, 2.01346696541, 19367.18916223280},
1250 { 0.00000119466, 3.01975080538, 10404.73381232260},
1251 { 0.00000125896, 2.72769850819, 1577.34354244780},
1252 { 0.00000076176, 1.59574968674, 9153.90361602180},
1253 { 0.00000085337, 3.98598666191, 19651.04848109800},
1254 { 0.00000074347, 4.11957779786, 5507.55323866740},
1255 { 0.00000041902, 1.64282225331, 18837.49819713819},
1256 { 0.00000042494, 3.81864493274, 13367.97263110660},
1257 { 0.00000039437, 5.39018702243, 23581.25817731760},
1258 { 0.00000029042, 5.67739528728, 5661.33204915220},
1259 { 0.00000027555, 5.72392434415, 775.52261132400},
1260 { 0.00000027288, 4.82140494620, 11015.10647733480},
1261 { 0.00000031274, 2.31806719544, 9999.98645077300},
1262 { 0.00000019700, 4.96157560246, 11322.66409830440},
1263 { 0.00000019811, 0.53189302682, 27511.46787353720},
1264 { 0.00000013569, 3.75536825122, 18073.70493865020},
1265 { 0.00000012921, 1.13381083556, 10206.17199921020},
1266 { 0.00000016214, 0.56446585474, 529.69096509460},
1267 { 0.00000011828, 5.09037966560, 3154.68708489560},
1268 { 0.00000011729, 0.23450811362, 7084.89678111520},
1269 { 0.00000013066, 5.24354222739, 17298.18232732620},
1270 { 0.00000013180, 3.37207825651, 13745.34623902240},
1271 { 0.00000009097, 3.07004839111, 1109.37855209340},
1272 { 0.00000010818, 2.45024714924, 10239.58386601080},
1273 { 0.00000011434, 4.56780914249, 29050.78374334920},
1274 { 0.00000008377, 5.78327641089, 30639.85663863300},
1275 { 0.00000008193, 1.95023341446, 22003.91463486980},
1276 { 0.00000009319, 1.61646997033, 2352.86615377180},
1277 { 0.00000010653, 1.95585283247, 31441.67756975680},
1278 { 0.00000010357, 1.20234990063, 15874.61759536320},
1279 { 0.00000009585, 1.46639856227, 19999.97290154599},
1280 { 0.00000006504, 2.17386891309, 14143.49524243060},
1281 { 0.00000007555, 1.13845893425, 8624.21265092720},
1282 { 0.00000006438, 0.84494385894, 6283.07584999140},
1283 { 0.00000005895, 0.01147034372, 8635.94200376320},
1284 { 0.00000005633, 3.94955705099, 12566.15169998280},
1285 { 0.00000005521, 1.27351436322, 18307.80723204360},
1286 { 0.00000004488, 2.47835713175, 191.44826611160},
1287 { 0.00000004524, 4.73049812703, 19896.88012732740},
1288 { 0.00000006182, 3.25901855473, 6872.67311951120},
1289 { 0.00000006076, 0.35368446866, 21228.39202354580},
1290 { 0.00000004315, 2.59737099527, 4551.95349705880},
1291 { 0.00000006001, 3.37877140835, 35371.88726597640},
1292 { 0.00000003852, 1.01162850363, 9786.68735533500},
1293 { 0.00000004033, 0.00058119465, 801.82093112380},
1294 { 0.00000003913, 5.56523869375, 10596.18207843420},
1295 { 0.00000002709, 5.80195530113, 7064.12138562280},
1296 { 0.00000003216, 0.39767254849, 10186.98722641120},
1297 { 0.00000003089, 6.26174762875, 14945.31617355440},
1298 { 0.00000002983, 4.21306731485, 28521.09277825460},
1299 { 0.00000003280, 0.70603484350, 10742.97651130560},
1300 { 0.00000003495, 4.79876624499, 39302.09696219600},
1301 { 0.00000003172, 1.80518718365, 25158.60171976540},
1302 { 0.00000002463, 0.68708155159, 10988.80815753500},
1303 { 0.00000002374, 3.77948972590, 21535.94964451540},
1304 { 0.00000002199, 2.82965458882, 8662.24032356300},
1305 { 0.00000001958, 5.41763443097, 16496.36139620240},
1306 { 0.00000001876, 2.63426835834, 29580.47470844380},
1307 { 0.00000001902, 2.85782199151, 3532.06069281140},
1308 { 0.00000001706, 3.67573010387, 26.29831979980},
1309 { 0.00000001820, 0.41906719561, 4705.73230754360},
1310 { 0.00000001857, 1.50350423721, 10021.83728009940},
1311 { 0.00000002086, 6.22149960504, 43232.30665841560},
1312 { 0.00000001945, 2.21581377123, 19786.67380610799},
1313 { 0.00000001497, 0.00134773818, 17277.40693183380},
1314 { 0.00000001831, 3.23180044003, 29088.81141598500},
1315 { 0.00000001422, 5.85815118404, 9676.48103411560},
1316 { 0.00000001223, 5.55818994329, 6770.71060124560},
1317 { 0.00000001135, 5.91731919731, 13936.79450513400},
1318 { 0.00000001483, 2.47551114520, 31749.23519072640},
1319 { 0.00000001185, 1.42087628352, 4732.03062734340},
1320 { 0.00000001323, 2.48821075422, 9690.70812811720},
1321 { 0.00000001237, 1.88503842890, 19374.30270923360},
1322 { 0.00000001402, 5.17536780118, 10316.37832042960},
1323 { 0.00000001257, 5.24711268081, 19360.07561523199},
1324 { 0.00000001041, 3.05620764519, 25934.12433108940},
1325 { 0.00000001174, 1.42916822908, 18875.52586977400},
1326 { 0.00000001277, 1.35812964004, 47162.51635463520},
1327 { 0.00000000919, 6.26767378713, 20618.01935853360},
1328 { 0.00000000907, 1.12515741342, 12592.45001978260},
1329 { 0.00000001093, 4.64451665343, 33019.02111220460},
1330 { 0.00000001012, 1.09063299331, 1059.38193018920},
1331 { 0.00000000783, 2.02117411797, 24356.78078864160},
1332 { 0.00000000779, 0.41587370509, 3340.61242669980},
1333 { 0.00000000702, 1.15494723276, 16983.99614745660},
1334 { 0.00000000878, 0.87851267907, 38734.37832446560},
1335 { 0.00000000620, 0.90736173080, 17778.11626694899},
1336 { 0.00000000608, 1.58478313439, 9573.38825989700},
1337 { 0.00000000800, 3.94213003073, 10138.50394764370},
1338 { 0.00000000758, 1.31882722638, 9967.45389998160},
1339 { 0.00000000802, 2.78173370208, 51092.72605085480},
1340 { 0.00000000664, 4.45866629009, 3128.38876509580},
1341 { 0.00000000668, 5.10542540579, 382.89653222320},
1342 { 0.00000000530, 0.85392938403, 10234.06094170340},
1343 { 0.00000000509, 3.56810277681, 28286.99048486120},
1344 { 0.00000000600, 4.25927697166, 41962.52073693740},
1345 { 0.00000000601, 5.78144137927, 213.29909543800},
1346 { 0.00000000595, 2.83043640070, 22805.73556599360},
1347 { 0.00000000673, 6.06080293558, 36949.23080842420},
1348 { 0.00000000537, 5.85435364687, 9103.90699411760},
1349 { 0.00000000544, 5.44804869552, 3723.50895892300},
1350 { 0.00000000493, 3.84940583750, 27991.40181316000},
1351 { 0.00000000635, 0.76493226364, 8094.52168583260},
1352 { 0.00000000435, 6.21370952619, 27197.28169366760},
1353 { 0.00000000459, 3.55062885409, 20213.27199698400},
1354 { 0.00000000398, 6.16269975784, 10426.58464164900},
1355 { 0.00000000378, 2.41665947591, 18844.61174413899},
1356 { 0.00000000421, 4.86558476805, 9146.79006902100},
1357 { 0.00000000500, 4.20351458644, 55022.93574707440},
1358 { 0.00000000404, 4.96112893536, 37410.56723987860},
1359 { 0.00000000402, 2.97963246945, 10220.39909321180},
1360 { 0.00000000464, 2.59869499733, 18734.40542291960},
1361 { 0.00000000353, 0.08229680434, 10103.07922499160},
1362 { 0.00000000348, 4.90260339364, 18830.38465013739},
1363 { 0.00000000339, 3.23485348169, 24150.08005134500},
1364 { 0.00000000431, 1.21298886779, 40879.44050464380},
1365 { 0.00000000375, 6.17532088119, 26087.90314157420},
1366 { 0.00000000409, 3.12070020561, 9050.81084180320},
1367 { 0.00000000385, 1.94284690176, 283.85931886520},
1368 { 0.00000000331, 4.89790702632, 12432.04265039780},
1369 { 0.00000000330, 4.29239717956, 26735.94526221320},
1370 { 0.00000000310, 0.50879975679, 38204.68735937100},
1371 { 0.00000000329, 3.88427322515, 29864.33402730900},
1372 { 0.00000000313, 1.36138752543, 10192.51015071860},
1373 { 0.00000000347, 3.58439807220, 27490.69247804480},
1374 { 0.00000000251, 3.78618457047, 10063.72234907640},
1375 { 0.00000000245, 3.84553750369, 9411.46461508720},
1376 { 0.00000000281, 4.50895217144, 32217.20018108080},
1377 { 0.00000000237, 0.87748812264, 6681.22485339960},
1378 { 0.00000000315, 5.62657778233, 58953.14544329400},
1379 { 0.00000000311, 4.15626121491, 10175.15251057320},
1380 { 0.00000000251, 2.53793253681, 16522.65971600220},
1381 { 0.00000000218, 5.08472965959, 7058.59846131540},
1382 { 0.00000000291, 3.72573045764, 29999.95935231900},
1383 { 0.00000000267, 2.97685503991, 19573.37471066999},
1384 { 0.00000000280, 3.70200084294, 47623.85278608960},
1385 { 0.00000000239, 3.94545782067, 9580.50180689780},
1386 { 0.00000000246, 2.18261064090, 9161.01716302260},
1387 { 0.00000000269, 2.62767323960, 44809.65020086340},
1388 { 0.00000000254, 2.69185768875, 3442.57494496540},
1389 { 0.00000000194, 4.79747763686, 33794.54372352860},
1390 { 0.00000000203, 2.54900468678, 2379.16447357160},
1391 { 0.00000000210, 1.90935455520, 1551.04522264800},
1392 { 0.00000000187, 3.65645008095, 20452.86941222180},
1393 { 0.00000000224, 2.43601863127, 9992.87290377220},
1394 { 0.00000000190, 6.19594324465, 36147.40987730040},
1395 { 0.00000000176, 4.29837616553, 10137.01947493540},
1396 { 0.00000000175, 2.71993327300, 20809.46762464520},
1397 { 0.00000000186, 2.55096983527, 14919.01785375460},
1398 { 0.00000000161, 4.13272566951, 23958.63178523340},
1399 { 0.00000000197, 5.70241397428, 30666.15495843280},
1400 { 0.00000000160, 4.46270605493, 18947.70451835760},
1401 { 0.00000000156, 1.80543158863, 10787.63034454580},
1402 { 0.00000000192, 5.34144333446, 10007.09999777380},
1403 { 0.00000000190, 2.99208130371, 2218.75710418680},
1404 { 0.00000000209, 4.83588196833, 20277.00789528740},
1405 { 0.00000000145, 5.92559556225, 37724.75341974820},
1406 { 0.00000000198, 0.77846666692, 62883.35513951360},
1407 { 0.00000000144, 5.00261963924, 9264.10993724120},
1408 { 0.00000000171, 2.05212624568, 7255.56965173440},
1409 { 0.00000000188, 4.08173534559, 48739.85989708300},
1410 { 0.00000000146, 3.93370103580, 6309.37416979120},
1411 { 0.00000000145, 5.06295543750, 39264.06928956020},
1412 { 0.00000000139, 2.81266025896, 20.77539549240},
1413 { 0.00000000177, 5.16224804657, 9835.91193829520},
1414 { 0.00000000120, 0.21443767468, 31022.75317085620},
1415 { 0.00000000118, 1.36333433479, 40077.61957352000},
1416 { 0.00000000128, 2.92458887987, 7.11354700080},
1417 { 0.00000000109, 5.19050570589, 9830.38901398780},
1418 { 0.00000000150, 5.73646272556, 632.78373931320},
1419 { 0.00000000106, 0.62215793949, 11272.66747640020},
1420 { 0.00000000114, 2.63301326520, 17468.85519794540},
1421 { 0.00000000123, 6.22518843711, 53285.18483524180},
1422 { 0.00000000107, 1.17258978900, 43071.89928903080},
1423 { 0.00000000116, 2.20934021321, 8521.11987670860},
1424 { 0.00000000104, 1.01322416672, 41654.96311596780},
1425 { 0.00000000109, 2.01412666864, 20419.45754542119},
1426 { 0.00000000102, 4.23406964348, 10251.31321884680},
1427 { 0.00000000116, 1.27731728606, 10199.05845220940},
1428 { 0.00000000112, 2.24436894064, 18204.71445782499},
1429 { 0.00000000118, 0.23754207200, 10497.14486507620},
1430 { 0.00000000123, 0.88054816668, 34596.36465465240},
1431 { 0.00000000102, 4.39438646620, 18300.69368504279},
1432 { 0.00000000131, 6.01711652115, 9367.20271145980},
1433 { 0.00000000100, 5.00532389609, 10175.25787357520},
1434 { 0.00000000107, 0.41270205378, 40853.14218484400},
1435 { 0.00000000132, 5.45008342761, 11506.76976979360},
1436 { 0.00000000098, 1.07722950958, 13553.89797291080},
1437 { 0.00000000094, 2.91719764259, 44007.82926973960},
1438 { 0.00000000097, 1.04004223634, 68050.42387851159},
1439 { 0.00000000127, 2.20215372683, 66813.56483573320},
1440 { 0.00000000111, 1.57823839032, 29043.67019634839},
1441 { 0.00000000118, 2.33268176890, 18314.92077904440},
1442 { 0.00000000090, 2.42353056125, 32858.61374281979},
1443 { 0.00000000109, 3.82796787296, 19470.28193645139},
1444 { 0.00000000111, 4.47666957576, 29057.89729034999},
1445 { 0.00000000101, 3.41528493660, 19264.09638801420},
1446 { 0.00000000092, 3.66289799512, 22645.32819660879},
1447 { 0.00000000094, 6.07530805791, 10846.06928552420},
1448 { 0.00000000114, 4.02718653431, 7576.56007357400},
1449 { 0.00000000087, 6.01880724674, 17085.95866572220},
1450 { 0.00000000109, 5.46886607309, 52670.06959330260},
1451 { 0.00000000108, 5.44460610707, 19050.79729257620},
1452 { 0.00000000106, 0.55746535085, 34363.36559755600},
1453 { 0.00000000076, 6.15177368654, 27682.14074415640},
1454 { 0.00000000107, 4.80525404063, 8144.27871130440},
1455 { 0.00000000071, 2.26530392323, 8631.32619792800},
1456 { 0.00000000097, 5.13538849186, 22779.43724619380},
1457 { 0.00000000095, 5.25816059997, 522.57741809380},
1458 { 0.00000000069, 1.57003462107, 20956.26205751660},
1459 { 0.00000000068, 6.22807515295, 10419.47109464820},
1460 { 0.00000000091, 4.28652743953, 10110.19277199240},
1461 { 0.00000000089, 1.79703857734, 45585.17281218740},
1462 { 0.00000000067, 2.25900071584, 9360.08916445900},
1463 { 0.00000000085, 0.67062144972, 56600.27928952220},
1464 { 0.00000000080, 1.58278081077, 19992.85935454519},
1465 { 0.00000000085, 4.52011215904, 29786.66025688100},
1466 { 0.00000000068, 4.48235266554, 10632.77019008620},
1467 { 0.00000000063, 0.36743160711, 17248.42530185440},
1468 { 0.00000000064, 4.33495700921, 47938.03896595920},
1469 { 0.00000000071, 3.03858484137, 11787.10597030980},
1470 { 0.00000000067, 3.64786869696, 11764.33076885900},
1471 { 0.00000000087, 4.81823064076, 2107.03450754240},
1472 { 0.00000000070, 2.35648061034, 11794.15220700780},
1473 { 0.00000000080, 2.33248094128, 38526.57435087200},
1474 { 0.00000000070, 3.70454061100, 8734.41897214660},
1475 { 0.00000000077, 4.49569185467, 20007.08644854680},
1476 { 0.00000000072, 1.19410424468, 10217.21769947410},
1477 { 0.00000000068, 2.01841060183, 14128.24277124560},
1478 { 0.00000000064, 5.39293951654, 7880.08915333899},
1479 { 0.00000000066, 3.20467070973, 14765.23904326980},
1480 { 0.00000000080, 3.41620457770, 48417.97290558199},
1481 { 0.00000000066, 5.85414440204, 9793.80090233580},
1482 { 0.00000000082, 3.62592908644, 70743.77453195279},
1483 { 0.00000000058, 4.95163459260, 30110.16567353840},
1484 { 0.00000000079, 6.24161471033, 6037.24420376200},
1485 { 0.00000000069, 5.50183658445, 19793.78735310880},
1486 { 0.00000000076, 3.40005875207, 245.83164622940},
1487 { 0.00000000056, 1.24148350566, 10207.76262190360},
1488 { 0.00000000070, 2.45123308846, 10218.80847051840},
1489 { 0.00000000064, 5.53983104501, 10735.86296430480},
1490 { 0.00000000054, 3.62259713240, 27461.71084806540},
1491 { 0.00000000073, 1.75920522146, 1589.07289528380},
1492 { 0.00000000075, 3.38244819846, 4214.06901508480},
1493 { 0.00000000054, 0.64971567468, 9929.42622734580},
1494 { 0.00000000054, 3.40959637230, 18418.01355326299},
1495 { 0.00000000056, 3.65815006538, 14169.79356223040},
1496 { 0.00000000056, 0.71243223808, 9896.89367655440},
1497 { 0.00000000052, 1.33348131832, 20400.27277262220},
1498 { 0.00000000067, 3.12806595410, 5481.25491886760},
1499 { 0.00000000058, 0.54482893546, 28313.28880466100},
1500 { 0.00000000054, 0.15603935681, 19580.48825767080},
1501 { 0.00000000051, 3.37515473510, 9256.99639024040},
1502 { 0.00000000063, 3.38894120617, 49515.38250840700},
1503 { 0.00000000069, 4.90917651401, 63498.47038145279},
1504 { 0.00000000057, 5.07437742030, 18521.10632748160},
1505 { 0.00000000050, 1.59156823654, 18631.31264870099},
1506 { 0.00000000054, 6.25816208666, 37674.99639427640},
1507 { 0.00000000057, 5.48066346720, 24383.07910844140},
1508 { 0.00000000045, 1.10466490660, 10408.25693067160},
1509 { 0.00000000051, 3.61196470338, 426.59819087600},
1510 { 0.00000000058, 4.40545155507, 8617.09910392640},
1511 { 0.00000000057, 2.09567711267, 60530.48898574180},
1512 { 0.00000000060, 5.94659889997, 13897.66359620120},
1513 { 0.00000000051, 5.47238517720, 57837.13833230060},
1514 { 0.00000000051, 2.32438478428, 19779.56025910719},
1515 { 0.00000000052, 3.23766328818, 18940.59097135679},
1516 { 0.00000000048, 1.12206254877, 9779.57380833420},
1517 { 0.00000000058, 3.08646083897, 12074.48840752400},
1518 { 0.00000000046, 4.07536026888, 7863.94251078820},
1519 { 0.00000000045, 4.75746520642, 7856.89627409019},
1520 { 0.00000000050, 3.70569982975, 42456.78404709160},
1521 { 0.00000000044, 1.29248911155, 69166.43098950500},
1522 { 0.00000000046, 0.41229872114, 7564.83072073800},
1523 { 0.00000000039, 1.25238820180, 10323.49186743040},
1524 { 0.00000000044, 6.17937388307, 13341.67431130680},
1525 { 0.00000000053, 4.71379706388, 53445.59220462660},
1526 { 0.00000000041, 3.48003037828, 37895.42629036740},
1527 { 0.00000000040, 1.23305546260, 10228.53801739600},
1528 { 0.00000000053, 5.04979874661, 74673.98422817240},
1529 { 0.00000000039, 2.15376025201, 8947.71806758460},
1530 { 0.00000000039, 0.70253732683, 18093.37469954999},
1531 { 0.00000000052, 1.18164377451, 10211.80107350270},
1532 { 0.00000000047, 1.78672260794, 10401.21069397360},
1533 { 0.00000000040, 3.66961416802, 10198.03307502600},
1534 { 0.00000000051, 2.71698589018, 94325.03270927040},
1535 { 0.00000000038, 1.36497153223, 21202.09370374600},
1536 { 0.00000000049, 1.21335959420, 9721.62225375220},
1537 { 0.00000000042, 6.05968230173, 105460.99111839019},
1538 { 0.00000000040, 1.97642764685, 32243.49850088060},
1539 { 0.00000000036, 4.96702216961, 36301.18868778519},
1540 { 0.00000000037, 5.29642935562, 38.02767263580},
1541 { 0.00000000035, 2.34112124655, 58946.51688439399},
1542 { 0.00000000034, 5.77533382849, 51868.24866217880},
1543 { 0.00000000034, 1.82989750626, 17675.02349273040},
1544 { 0.00000000034, 0.76493664110, 55798.45835839840},
1545 { 0.00000000035, 1.09353675147, 69159.80243060499},
1546 { 0.00000000032, 3.32960781870, 71519.29714327680},
1547 { 0.00000000031, 0.68615213145, 10202.23984594710},
1548 { 0.00000000030, 4.42039942947, 10459.11719244040},
1549 { 0.00000000029, 1.30367701539, 20103.06567576459},
1550 { 0.00000000031, 4.51793347997, 2957.71589447660},
1551 { 0.00000000036, 5.67202610552, 24341.52831745660},
1552 { 0.00000000029, 3.36506645849, 10288.06714477830},
1553 { 0.00000000029, 1.40019042576, 9988.94075050910},
1554 { 0.00000000039, 5.15481059724, 20350.30502114640},
1555 { 0.00000000034, 5.22945947227, 8673.96967639900},
1556 { 0.00000000039, 4.50883171158, 16004.69810374360},
1557 { 0.00000000028, 2.32945945641, 11392.48008525060},
1558 { 0.00000000032, 5.46972716255, 64607.84893354619},
1559 { 0.00000000029, 0.59723613788, 26709.64694241340},
1560 { 0.00000000029, 6.16476830510, 65236.22129328540},
1561 { 0.00000000026, 5.36096904409, 1478.86657406440},
1562 { 0.00000000036, 1.29565084626, 90394.82301305079},
1563 };
1564
1565
1566 static const struct ln_vsop venus_radius_r1[RADIUS_R1] = {
1567 { 0.00034551041, 0.89198706276, 10213.28554621100},
1568 { 0.00000234203, 1.77224942363, 20426.57109242200},
1569 { 0.00000233998, 3.14159265359, 0.00000000000},
1570 { 0.00000023867, 1.11270233944, 9437.76293488700},
1571 { 0.00000010571, 4.59152848465, 1577.34354244780},
1572 { 0.00000009124, 4.53540895241, 10404.73381232260},
1573 { 0.00000006600, 5.97725159435, 5507.55323866740},
1574 { 0.00000004665, 3.87732289579, 9153.90361602180},
1575 { 0.00000003840, 5.66215379445, 13367.97263110660},
1576 { 0.00000002662, 2.82393816664, 10206.17199921020},
1577 { 0.00000002194, 2.05324060020, 775.52261132400},
1578 { 0.00000002093, 2.54944827541, 18837.49819713819},
1579 { 0.00000001781, 2.64889239766, 30639.85663863300},
1580 { 0.00000001844, 1.87568236008, 11015.10647733480},
1581 { 0.00000001303, 0.20613045604, 11322.66409830440},
1582 { 0.00000001168, 0.79442892853, 17298.18232732620},
1583 { 0.00000001002, 6.16544615317, 10239.58386601080},
1584 { 0.00000000915, 4.59854496963, 1109.37855209340},
1585 { 0.00000000882, 0.66800567417, 18073.70493865020},
1586 { 0.00000000846, 5.58765716729, 12566.15169998280},
1587 { 0.00000001080, 4.94678408464, 6283.07584999140},
1588 { 0.00000000888, 2.47876529003, 3154.68708489560},
1589 { 0.00000000904, 0.81413053841, 10596.18207843420},
1590 { 0.00000000820, 0.89897968675, 5661.33204915220},
1591 { 0.00000000845, 5.48503535862, 529.69096509460},
1592 { 0.00000000824, 3.74890493484, 7084.89678111520},
1593 { 0.00000000655, 5.06545516257, 22003.91463486980},
1594 { 0.00000000847, 0.44120492340, 8635.94200376320},
1595 { 0.00000000638, 4.10125783744, 191.44826611160},
1596 { 0.00000000618, 3.15185635462, 10186.98722641120},
1597 { 0.00000000530, 5.86995223147, 2352.86615377180},
1598 { 0.00000000576, 2.25211985760, 21228.39202354580},
1599 { 0.00000000517, 5.33412478409, 14143.49524243060},
1600 { 0.00000000664, 2.86641799035, 8624.21265092720},
1601 { 0.00000000552, 2.16807468414, 18307.80723204360},
1602 { 0.00000000518, 4.34059510806, 9786.68735533500},
1603 { 0.00000000501, 5.56479595613, 10742.97651130560},
1604 { 0.00000000426, 1.02161443120, 7064.12138562280},
1605 { 0.00000000416, 1.26242491254, 9676.48103411560},
1606 { 0.00000000393, 0.78006660798, 9690.70812811720},
1607 { 0.00000000336, 3.17756997609, 10988.80815753500},
1608 { 0.00000000375, 0.66142254036, 19360.07561523199},
1609 { 0.00000000361, 0.19448210327, 19374.30270923360},
1610 { 0.00000000314, 1.09753065455, 4551.95349705880},
1611 { 0.00000000329, 0.58926282996, 16496.36139620240},
1612 { 0.00000000339, 5.76768761424, 10021.83728009940},
1613 { 0.00000000289, 3.67224020150, 25158.60171976540},
1614 { 0.00000000223, 4.33581625553, 19786.67380610799},
1615 { 0.00000000266, 3.57410277687, 801.82093112380},
1616 { 0.00000000273, 5.72814567551, 11790.62908865880},
1617 { 0.00000000275, 5.65863344812, 19896.88012732740},
1618 { 0.00000000212, 4.27040662743, 4705.73230754360},
1619 { 0.00000000230, 6.13409928801, 1059.38193018920},
1620 { 0.00000000203, 4.88193121349, 7860.41939243920},
1621 { 0.00000000241, 1.12684737375, 26.29831979980},
1622 { 0.00000000215, 3.13976767933, 14945.31617355440},
1623 { 0.00000000206, 0.32759945446, 382.89653222320},
1624 { 0.00000000216, 2.54929765288, 19651.04848109800},
1625 { 0.00000000160, 1.13642774778, 13936.79450513400},
1626 { 0.00000000153, 0.81251420624, 6770.71060124560},
1627 { 0.00000000150, 5.11133177708, 28521.09277825460},
1628 { 0.00000000150, 1.35720240642, 10220.39909321180},
1629 { 0.00000000149, 5.03755185727, 29088.81141598500},
1630 { 0.00000000127, 4.49298610266, 3532.06069281140},
1631 { 0.00000000121, 6.27033352540, 29580.47470844380},
1632 { 0.00000000146, 6.16157870651, 8662.24032356300},
1633 { 0.00000000117, 3.56101830556, 24356.78078864160},
1634 { 0.00000000114, 0.00568663739, 25934.12433108940},
1635 { 0.00000000127, 0.66789441339, 3723.50895892300},
1636 { 0.00000000148, 0.36877913428, 9146.79006902100},
1637 { 0.00000000106, 4.26220077003, 9573.38825989700},
1638 { 0.00000000136, 5.09588289539, 19367.18916223280},
1639 { 0.00000000099, 1.51389536350, 17277.40693183380},
1640 { 0.00000000117, 0.57647358272, 9999.98645077300},
1641 { 0.00000000097, 3.71741720558, 213.29909543800},
1642 { 0.00000000092, 0.22936081655, 18830.38465013739},
1643 { 0.00000000112, 4.04771058126, 9103.90699411760},
1644 { 0.00000000083, 5.86195695833, 10234.06094170340},
1645 { 0.00000000079, 0.64440357793, 18844.61174413899},
1646 { 0.00000000084, 0.62796944327, 9683.59458111640},
1647 { 0.00000000107, 1.77067111589, 17778.11626694899},
1648 { 0.00000000081, 6.19048048769, 20618.01935853360},
1649 { 0.00000000087, 0.15771136594, 33019.02111220460},
1650 { 0.00000000085, 4.77733091614, 3930.20969621960},
1651 { 0.00000000086, 2.21506820700, 8094.52168583260},
1652 { 0.00000000074, 0.82723399048, 3128.38876509580},
1653 { 0.00000000063, 2.70493265779, 16983.99614745660},
1654 { 0.00000000059, 3.32160695003, 10787.63034454580},
1655 { 0.00000000061, 0.04044699966, 9161.01716302260},
1656 { 0.00000000064, 4.13127333938, 9992.87290377220},
1657 { 0.00000000063, 4.47517295578, 18875.52586977400},
1658 { 0.00000000060, 6.24567706571, 32217.20018108080},
1659 { 0.00000000076, 4.84321073833, 4732.03062734340},
1660 { 0.00000000054, 3.38449893196, 10426.58464164900},
1661 { 0.00000000054, 5.15928227000, 28286.99048486120},
1662 { 0.00000000063, 4.32344259630, 12592.45001978260},
1663 { 0.00000000059, 3.65953929456, 10007.09999777380},
1664 { 0.00000000049, 5.10267262491, 19573.37471066999},
1665 { 0.00000000047, 5.79444960738, 68050.42387851159},
1666 { 0.00000000052, 3.56658420552, 7255.56965173440},
1667 { 0.00000000050, 1.61783309819, 36949.23080842420},
1668 { 0.00000000053, 2.64129868542, 15874.61759536320},
1669 { 0.00000000042, 2.02654328254, 7058.59846131540},
1670 { 0.00000000051, 0.80486467278, 23581.25817731760},
1671 { 0.00000000040, 3.89322312104, 20419.45754542119},
1672 { 0.00000000050, 1.07461899460, 3442.57494496540},
1673 { 0.00000000038, 1.77428239418, 10103.07922499160},
1674 { 0.00000000040, 5.22873972349, 21535.94964451540},
1675 { 0.00000000038, 0.10029856174, 11272.66747640020},
1676 { 0.00000000038, 1.16414419860, 7.11354700080},
1677 { 0.00000000044, 4.54118898535, 10192.51015071860},
1678 { 0.00000000047, 0.05589432390, 12432.04265039780},
1679 { 0.00000000034, 3.45481114998, 9830.38901398780},
1680 { 0.00000000037, 4.97010610007, 3340.61242669980},
1681 { 0.00000000044, 0.70533597362, 20213.27199698400},
1682 { 0.00000000034, 2.16487642765, 64460.69868196140},
1683 { 0.00000000031, 1.57612397319, 36147.40987730040},
1684 { 0.00000000034, 1.06669952696, 29864.33402730900},
1685 { 0.00000000028, 2.56454760402, 94138.32702008578},
1686 { 0.00000000029, 0.59718407064, 59728.66805461800},
1687 { 0.00000000031, 3.27727318906, 19992.85935454519},
1688 { 0.00000000027, 5.68943276986, 17085.95866572220},
1689 { 0.00000000030, 3.03241502538, 40879.44050464380},
1690 { 0.00000000032, 2.64260788260, 41962.52073693740},
1691 { 0.00000000035, 0.26995532429, 1589.07289528380},
1692 { 0.00000000028, 4.93395364921, 29050.78374334920},
1693 { 0.00000000028, 3.58869616799, 40853.14218484400},
1694 { 0.00000000029, 2.79705093386, 20007.08644854680},
1695 { 0.00000000033, 0.93875241519, 15720.83878487840},
1696 { 0.00000000024, 2.74970637101, 18947.70451835760},
1697 { 0.00000000024, 4.38966861409, 46386.99374331120},
1698 { 0.00000000024, 0.73362177921, 9411.46461508720},
1699 { 0.00000000028, 4.19559784013, 37674.99639427640},
1700 { 0.00000000024, 1.18299920855, 426.59819087600},
1701 { 0.00000000025, 4.14802726798, 14919.01785375460},
1702 { 0.00000000030, 1.24986033487, 27461.71084806540},
1703 { 0.00000000022, 2.95789824506, 40077.61957352000},
1704 { 0.00000000027, 3.94986823486, 17468.85519794540},
1705 { 0.00000000025, 4.75875623888, 27991.40181316000},
1706 { 0.00000000022, 4.11184201321, 19779.56025910719},
1707 { 0.00000000027, 3.72446446080, 19793.78735310880},
1708 { 0.00000000027, 6.12859780299, 38500.27603107220},
1709 { 0.00000000022, 4.99040169444, 31022.75317085620},
1710 { 0.00000000021, 0.63975130342, 13745.34623902240},
1711 { 0.00000000023, 1.33505132122, 65236.22129328540},
1712 { 0.00000000020, 0.91294578294, 22779.43724619380},
1713 { 0.00000000021, 4.46897353468, 53285.18483524180},
1714 { 0.00000000020, 4.15140915983, 2218.75710418680},
1715 { 0.00000000019, 1.43653410349, 27197.28169366760},
1716 { 0.00000000027, 1.22597317413, 42430.48572729180},
1717 { 0.00000000024, 4.66952456612, 1551.04522264800},
1718 { 0.00000000021, 4.16155332491, 44007.82926973960},
1719 { 0.00000000018, 5.45345109729, 6681.22485339960},
1720 { 0.00000000023, 2.19259117717, 27511.46787353720},
1721 { 0.00000000018, 4.24146756742, 31441.67756975680},
1722 { 0.00000000019, 3.65054338893, 49515.38250840700},
1723 { 0.00000000018, 2.29853355765, 19264.09638801420},
1724 { 0.00000000020, 3.68116637773, 14128.24277124560},
1725 { 0.00000000021, 4.30316190532, 44809.65020086340},
1726 { 0.00000000017, 3.02735393984, 28528.20632525540},
1727 { 0.00000000019, 5.92656850674, 22805.73556599360},
1728 { 0.00000000020, 5.80568617231, 10218.80847051840},
1729 { 0.00000000020, 0.75829381378, 18314.92077904440},
1730 { 0.00000000017, 5.63315744126, 16522.65971600220},
1731 { 0.00000000015, 5.27016880041, 53445.59220462660},
1732 { 0.00000000015, 6.06411037636, 18300.69368504279},
1733 { 0.00000000020, 5.38470522864, 10207.76262190360},
1734 { 0.00000000015, 5.81110284451, 43071.89928903080},
1735 { 0.00000000015, 5.98462571207, 10228.53801739600},
1736 { 0.00000000014, 1.44966591677, 536.80451209540},
1737 { 0.00000000015, 5.20122735812, 10198.03307502600},
1738 { 0.00000000014, 3.48144272414, 29786.66025688100},
1739 { 0.00000000018, 1.99790369768, 30831.30490474460},
1740 { 0.00000000017, 2.36905439219, 33794.54372352860},
1741 };
1742
1743
1744 static const struct ln_vsop venus_radius_r2[RADIUS_R2] = {
1745 { 0.00001406587, 5.06366395112, 10213.28554621100},
1746 { 0.00000015529, 5.47321056992, 20426.57109242200},
1747 { 0.00000013059, 0.00000000000, 0.00000000000},
1748 { 0.00000001096, 2.78919545899, 9437.76293488700},
1749 { 0.00000000487, 6.27655636902, 1577.34354244780},
1750 { 0.00000000361, 6.11959389556, 10404.73381232260},
1751 { 0.00000000310, 1.39073645837, 5507.55323866740},
1752 { 0.00000000385, 1.95564555688, 11015.10647733480},
1753 { 0.00000000371, 2.33232050485, 775.52261132400},
1754 { 0.00000000207, 5.63406721595, 10239.58386601080},
1755 { 0.00000000167, 1.11639732890, 13367.97263110660},
1756 { 0.00000000175, 6.16674649733, 30639.85663863300},
1757 { 0.00000000168, 3.64042170990, 7084.89678111520},
1758 { 0.00000000120, 5.85861348966, 9153.90361602180},
1759 { 0.00000000161, 2.21564443685, 3154.68708489560},
1760 { 0.00000000118, 2.62362056521, 8635.94200376320},
1761 { 0.00000000112, 2.36235956804, 10596.18207843420},
1762 { 0.00000000093, 0.74251193058, 12566.15169998280},
1763 { 0.00000000067, 3.76089669118, 18837.49819713819},
1764 { 0.00000000065, 2.47990173302, 11790.62908865880},
1765 { 0.00000000048, 4.26821029269, 2352.86615377180},
1766 { 0.00000000049, 5.51819305769, 191.44826611160},
1767 { 0.00000000048, 2.51039041484, 17298.18232732620},
1768 { 0.00000000046, 3.40293459332, 14143.49524243060},
1769 { 0.00000000041, 1.84035920887, 11322.66409830440},
1770 { 0.00000000035, 6.20303344591, 1109.37855209340},
1771 { 0.00000000039, 4.76600160325, 18073.70493865020},
1772 { 0.00000000034, 3.14302158146, 4705.73230754360},
1773 { 0.00000000034, 0.47584552790, 26.29831979980},
1774 { 0.00000000046, 3.30090415967, 6283.07584999140},
1775 { 0.00000000034, 3.92299418240, 10021.83728009940},
1776 { 0.00000000034, 3.23795065286, 22003.91463486980},
1777 { 0.00000000042, 3.39360926939, 14945.31617355440},
1778 { 0.00000000044, 4.39723735555, 7860.41939243920},
1779 { 0.00000000037, 3.63183908790, 801.82093112380},
1780 { 0.00000000034, 2.16381407025, 16496.36139620240},
1781 { 0.00000000034, 1.82177984232, 382.89653222320},
1782 { 0.00000000025, 3.32908650295, 18307.80723204360},
1783 { 0.00000000026, 3.64313769818, 29088.81141598500},
1784 { 0.00000000029, 3.82967178810, 10186.98722641120},
1785 { 0.00000000022, 3.17741520378, 28521.09277825460},
1786 { 0.00000000025, 5.71510731610, 21202.09370374600},
1787 { 0.00000000021, 5.30608699641, 19896.88012732740},
1788 { 0.00000000019, 4.65302013202, 19651.04848109800},
1789 { 0.00000000022, 2.42894070342, 529.69096509460},
1790 { 0.00000000021, 3.82207126131, 21228.39202354580},
1791 { 0.00000000016, 2.96175040524, 19367.18916223280},
1792 { 0.00000000016, 3.36250300274, 28286.99048486120},
1793 { 0.00000000015, 5.05571633205, 33019.02111220460},
1794 { 0.00000000014, 2.83786355803, 19786.67380610799},
1795 { 0.00000000014, 1.79922718553, 9830.38901398780},
1796 { 0.00000000014, 3.49994470578, 10988.80815753500},
1797 { 0.00000000013, 3.06303088617, 10742.97651130560},
1798 { 0.00000000013, 5.43981998532, 25158.60171976540},
1799 { 0.00000000015, 4.83166312889, 18875.52586977400},
1800 { 0.00000000012, 2.54141086214, 7064.12138562280},
1801 { 0.00000000010, 1.87933121728, 24356.78078864160},
1802 { 0.00000000011, 4.26593805644, 15720.83878487840},
1803 { 0.00000000010, 2.17901309900, 3723.50895892300},
1804 { 0.00000000010, 2.50084772448, 9103.90699411760},
1805 { 0.00000000007, 3.48063149205, 1059.38193018920},
1806 { 0.00000000007, 2.38734958588, 20618.01935853360},
1807 };
1808
1809
1810 static const struct ln_vsop venus_radius_r3[RADIUS_R3] = {
1811 { 0.00000049582, 3.22264415899, 10213.28554621100},
1812 { 0.00000000831, 3.21255590531, 20426.57109242200},
1813 { 0.00000000112, 3.14159265359, 0.00000000000},
1814 { 0.00000000013, 3.77454760284, 30639.85663863300},
1815 { 0.00000000008, 4.29674209391, 10239.58386601080},
1816 { 0.00000000006, 0.39133521368, 10186.98722641120},
1817 { 0.00000000004, 4.77456526708, 9437.76293488700},
1818 { 0.00000000003, 0.14604782945, 10988.80815753500},
1819 };
1820
1821
1822 static const struct ln_vsop venus_radius_r4[RADIUS_R4] = {
1823 { 0.00000000573, 0.92253525592, 10213.28554621100},
1824 { 0.00000000039, 0.95696787303, 20426.57109242200},
1825 { 0.00000000006, 3.14159265359, 0.00000000000},
1826 };
1827
1828
1829 static const struct ln_vsop venus_radius_r5[RADIUS_R5] = {
1830 { 0.00000000045, 0.30037014808, 10213.28554621100},
1831 { 0.00000000002, 5.33215705373, 20426.57109242200},
1832 };
1833
1834 /*! \fn void ln_get_venus_equ_coords (double JD, struct ln_equ_posn * position);
1835 * \param JD Julian Day
1836 * \param position Pointer to store position
1837 *
1838 * Calculates Venus's equatorial position for given julian day.
1839 * This function includes calculations for planetary aberration and refers
1840 * to the FK5 reference frame.
1841 *
1842 * To get the complete equatorial coordinates, corrections for nutation
1843 * have to be applied.
1844 *
1845 * The position returned is accurate to within 0.1 arcsecs..
1846 */
ln_get_venus_equ_coords(double JD,struct ln_equ_posn * position)1847 void ln_get_venus_equ_coords (double JD, struct ln_equ_posn * position)
1848 {
1849 struct ln_helio_posn h_sol, h_venus;
1850 struct ln_rect_posn g_sol, g_venus;
1851 double a,b,c;
1852 double ra, dec, delta, diff, last, t = 0;
1853
1854 /* need typdef for solar heliocentric coords */
1855 ln_get_solar_geom_coords (JD, &h_sol);
1856 ln_get_rect_from_helio (&h_sol, &g_sol);
1857
1858 do {
1859 last = t;
1860 ln_get_venus_helio_coords (JD - t, &h_venus);
1861 ln_get_rect_from_helio (&h_venus, &g_venus);
1862
1863 /* equ 33.10 pg 229 */
1864 a = g_sol.X + g_venus.X;
1865 b = g_sol.Y + g_venus.Y;
1866 c = g_sol.Z + g_venus.Z;
1867
1868 delta = a*a + b*b + c*c;
1869 delta = sqrt (delta);
1870 t = delta * 0.0057755183;
1871 diff = t - last;
1872 } while (diff > 0.0001 || diff < -0.0001);
1873
1874 ra = atan2 (b,a);
1875 dec = c / delta;
1876 dec = asin (dec);
1877
1878 /* back to hours, degrees */
1879 position->ra = ln_range_degrees(ln_rad_to_deg (ra));
1880 position->dec = ln_rad_to_deg (dec);
1881 }
1882
1883 /*! \fn void ln_get_venus_helio_coords (double JD, struct ln_helio_posn * position)
1884 * \param JD Julian Day
1885 * \param position Pointer to store new heliocentric position
1886 *
1887 * Calculate Venus heliocentric (referred to the centre of the Sun) coordinates
1888 * in the FK5 reference frame for the given julian day.
1889 * Longitude and Latitude are in degrees, whilst radius vector is in AU.
1890 */
1891 /* Chapter 31 Pg 206-207 Equ 31.1 31.2 , 31.3 using VSOP 87
1892 */
ln_get_venus_helio_coords(double JD,struct ln_helio_posn * position)1893 void ln_get_venus_helio_coords (double JD, struct ln_helio_posn * position)
1894 {
1895 double t, t2, t3, t4, t5;
1896 double L0, L1, L2, L3, L4, L5;
1897 double B0, B1, B2, B3, B4, B5;
1898 double R0, R1, R2, R3, R4, R5;
1899
1900 /* check cache first */
1901 if (JD == cJD) {
1902 /* cache hit */
1903 position->L = cL;
1904 position->B = cB;
1905 position->R = cR;
1906 return;
1907 }
1908
1909 /* get julian ephemeris day */
1910 t = (JD - 2451545.0) / 365250.0;
1911 t2 = t * t;
1912 t3 = t2 * t;
1913 t4 = t3 * t;
1914 t5 = t4 * t;
1915
1916 /* calc L series */
1917 L0 = ln_calc_series (venus_longitude_l0, LONG_L0, t);
1918 L1 = ln_calc_series (venus_longitude_l1, LONG_L1, t);
1919 L2 = ln_calc_series (venus_longitude_l2, LONG_L2, t);
1920 L3 = ln_calc_series (venus_longitude_l3, LONG_L3, t);
1921 L4 = ln_calc_series (venus_longitude_l4, LONG_L4, t);
1922 L5 = ln_calc_series (venus_longitude_l5, LONG_L5, t);
1923 position->L = (L0 + L1 * t + L2 * t2 + L3 * t3 + L4 * t4 + L5 * t5);
1924
1925 /* calc B series */
1926 B0 = ln_calc_series (venus_latitude_b0, LAT_B0, t);
1927 B1 = ln_calc_series (venus_latitude_b1, LAT_B1, t);
1928 B2 = ln_calc_series (venus_latitude_b2, LAT_B2, t);
1929 B3 = ln_calc_series (venus_latitude_b3, LAT_B3, t);
1930 B4 = ln_calc_series (venus_latitude_b4, LAT_B4, t);
1931 B5 = ln_calc_series (venus_latitude_b5, LAT_B5, t);
1932 position->B = (B0 + B1 * t + B2 * t2 + B3 * t3 + B4 * t4 + B5 * t5);
1933
1934
1935 /* calc R series */
1936 R0 = ln_calc_series (venus_radius_r0, RADIUS_R0, t);
1937 R1 = ln_calc_series (venus_radius_r1, RADIUS_R1, t);
1938 R2 = ln_calc_series (venus_radius_r2, RADIUS_R2, t);
1939 R3 = ln_calc_series (venus_radius_r3, RADIUS_R3, t);
1940 R4 = ln_calc_series (venus_radius_r4, RADIUS_R4, t);
1941 R5 = ln_calc_series (venus_radius_r5, RADIUS_R5, t);
1942 position->R = (R0 + R1 * t + R2 * t2 + R3 * t3 + R4 * t4 + R5 * t5);
1943
1944 /* change to degrees in correct quadrant */
1945 position->L = ln_rad_to_deg(position->L);
1946 position->B = ln_rad_to_deg(position->B);
1947 position->L = ln_range_degrees(position->L);
1948
1949 /* change to fk5 reference frame */
1950 ln_vsop87_to_fk5 (position, JD);
1951
1952 /* save cache */
1953 cJD = JD;
1954 cL = position->L;
1955 cB = position->B;
1956 cR = position->R;
1957 }
1958
1959 /*! \fn double ln_get_venus_earth_dist (double JD);
1960 * \param JD Julian day
1961 * \brief Calculate the distance between Venus and the Earth in AU
1962 * \return Distance in AU
1963 *
1964 * Calculates the distance in AU between the Earth and Venus for the
1965 * given julian day.
1966 */
ln_get_venus_earth_dist(double JD)1967 double ln_get_venus_earth_dist (double JD)
1968 {
1969 struct ln_helio_posn h_venus, h_earth;
1970 struct ln_rect_posn g_venus, g_earth;
1971 double x, y, z;
1972
1973 /* get heliocentric positions */
1974 ln_get_venus_helio_coords (JD, &h_venus);
1975 ln_get_earth_helio_coords (JD, &h_earth);
1976
1977 /* get geocentric coords */
1978 ln_get_rect_from_helio (&h_venus, &g_venus);
1979 ln_get_rect_from_helio (&h_earth, &g_earth);
1980
1981 /* use pythag */
1982 x = g_venus.X - g_earth.X;
1983 y = g_venus.Y - g_earth.Y;
1984 z = g_venus.Z - g_earth.Z;
1985
1986 x = x * x;
1987 y = y * y;
1988 z = z * z;
1989 return sqrt (x + y + z);
1990 }
1991
1992 /*! \fn double ln_get_venus_solar_dist (double JD);
1993 * \param JD Julian day
1994 * \brief Calculate the distance between Venus and the Sun in AU
1995 * \return Distance in AU
1996 *
1997 * Calculates the distance in AU between the Sun and Venus for
1998 * the given julian day.
1999 */
ln_get_venus_solar_dist(double JD)2000 double ln_get_venus_solar_dist (double JD)
2001 {
2002 struct ln_helio_posn h_venus;
2003
2004 /* get heliocentric position */
2005 ln_get_venus_helio_coords (JD, &h_venus);
2006
2007 return h_venus.R;
2008 }
2009
2010 /*! \fn double ln_get_venus_magnitude (double JD);
2011 * \param JD Julian day
2012 * \brief Calculate the visible magnitude of Venus
2013 * \return Visible magnitude of venus
2014 *
2015 * Calculate the visible magnitude of Venus for the
2016 * given julian day.
2017 */
ln_get_venus_magnitude(double JD)2018 double ln_get_venus_magnitude (double JD)
2019 {
2020 double delta, r, i, i2, i3;
2021
2022 /* get distances */
2023 r = ln_get_venus_solar_dist (JD);
2024 delta = ln_get_venus_earth_dist (JD);
2025
2026 /* get phase */
2027 i = ln_get_venus_phase (JD);
2028 i2 = i * i;
2029 i3 = i2 * i;
2030
2031 return -4.40 + 5 * log10 (r * delta) + 0.0009 * i + 0.000239 * i2 - 0.00000065 * i3;
2032 }
2033
2034 /*! \fn double ln_get_venus_disk (double JD);
2035 * \param JD Julian day
2036 * \brief Calculate the illuminated fraction of Venus disk
2037 * \return Illuminated fraction of venus disk
2038 *
2039 * Calculate the illuminated fraction of Venus's disk for the given Julian
2040 * day
2041 */
2042 /* Chapter 41 */
ln_get_venus_disk(double JD)2043 double ln_get_venus_disk (double JD)
2044 {
2045 double r,delta,R;
2046
2047 /* get distances */
2048 R = ln_get_earth_solar_dist (JD);
2049 r = ln_get_venus_solar_dist (JD);
2050 delta = ln_get_venus_earth_dist (JD);
2051
2052 /* calc fraction angle */
2053 return (((r + delta) * (r + delta)) - R * R) / (4 * r * delta);
2054 }
2055
2056 /*! \fn double ln_get_venus_phase (double JD);
2057 * \param JD Julian day
2058 * \brief Calculate the phase angle of Venus (Sun - Venus - Earth)
2059 * \return Phase angle of Venus (degrees)
2060 *
2061 * Calculates the phase angle of Venus, that is, the angle Sun -
2062 * Venus - Earth for the given Julian day.
2063 */
2064 /* Chapter 41 */
ln_get_venus_phase(double JD)2065 double ln_get_venus_phase (double JD)
2066 {
2067 double i,r,delta,R;
2068
2069 /* get distances */
2070 R = ln_get_earth_solar_dist (JD);
2071 r = ln_get_venus_solar_dist (JD);
2072 delta = ln_get_venus_earth_dist (JD);
2073
2074 /* calc phase */
2075 i = (r * r + delta * delta - R * R) / (2 * r * delta);
2076 i = acos (i);
2077 return ln_rad_to_deg (i);
2078 }
2079
2080
2081 /*! \fn double ln_get_venus_rst (double JD, struct ln_lnlat_posn * observer, struct ln_rst_time * rst);
2082 * \param JD Julian day
2083 * \param observer Observers position
2084 * \param rst Pointer to store Rise, Set and Transit time in JD
2085 * \return 0 for success, else 1 for circumpolar.
2086 *
2087 * Calculate the time the rise, set and transit (crosses the local meridian at upper culmination)
2088 * time of Venus for the given Julian day.
2089 *
2090 * Note: this functions returns 1 if Venus is circumpolar, that is it remains the whole
2091 * day either above or below the horizon.
2092 */
ln_get_venus_rst(double JD,struct ln_lnlat_posn * observer,struct ln_rst_time * rst)2093 int ln_get_venus_rst (double JD, struct ln_lnlat_posn * observer, struct ln_rst_time * rst)
2094 {
2095 return ln_get_body_rst_horizon (JD, observer, ln_get_venus_equ_coords, LN_STAR_STANDART_HORIZON, rst);
2096 }
2097
2098
2099 /*! \fn double ln_get_venus_sdiam (double JD)
2100 * \param JD Julian day
2101 * \return Semidiameter in arc seconds
2102 *
2103 * Calculate the semidiameter of Venus in arc seconds for the
2104 * given julian day.
2105 */
ln_get_venus_sdiam(double JD)2106 double ln_get_venus_sdiam (double JD)
2107 {
2108 double So = 8.41; /* at 1 AU, using atmosphere value, not crust (8.34) */
2109 double dist;
2110
2111 dist = ln_get_venus_earth_dist (JD);
2112 return So / dist;
2113 }
2114
2115 /*! \fn void ln_get_venus_rect_helio (double JD, struct ln_rect_posn * position)
2116 * \param JD Julian day.
2117 * \param position pointer to return position
2118 *
2119 * Calculate Venus rectangular heliocentric coordinates for the
2120 * given Julian day. Coordinates are in AU.
2121 */
ln_get_venus_rect_helio(double JD,struct ln_rect_posn * position)2122 void ln_get_venus_rect_helio (double JD, struct ln_rect_posn * position)
2123 {
2124 struct ln_helio_posn venus;
2125
2126 ln_get_venus_helio_coords (JD, &venus);
2127 ln_get_rect_from_helio (&venus, position);
2128 }
2129