1
2
3
4
5
6
7
8
9
10
11
12 package org.jastronomy.jsofa;
13
14
15
16
17 import static org.jastronomy.jsofa.JSOFA.*;
18 import static org.junit.Assert.*;
19
20 import org.jastronomy.jsofa.JSOFA.CatalogCoords;
21 import org.jastronomy.jsofa.JSOFA.SphericalCoordinate;
22 import org.jastronomy.jsofa.JSOFAException;
23 import org.jastronomy.jsofa.JSOFAIllegalParameter;
24 import org.jastronomy.jsofa.JSOFAInternalError;
25 import org.junit.Before;
26 import org.junit.BeforeClass;
27 import org.junit.Test;
28
29 import static java.lang.Math.*;
30
31 public class JSOFATest {
32
33 private static boolean verbose;
34
35 @BeforeClass
36 public static void setUpBeforeClass() throws Exception {
37 }
38
39 @Before
40 public void setUp() throws Exception {
41 }
42
43 @Test
44 public void testversion() throws JSOFAIllegalParameter
45 {
46 assertEquals("sofa release", "2021-05-12", SOFA_RELEASE);
47 assertEquals("sofa revision", "18", SOFA_REVISION);
48 assertEquals("lastleap second", jauCal2jd(2017,1,1), lastLeapSecondDate());
49 assertEquals("last omitted leap second", jauCal2jd(2021,06,30), latestConfirmedNoLeapSecondChange);
50 assertEquals("Jsofa release", System.getProperty("SOFAVERSION"), JSOFA_RELEASE);
51
52
53 }
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90 private void viv(int ival, int ivalok, String func, String test)
91 {
92 if (ival != ivalok) {
93 System.err.printf("%s failed: %s want %d got %d\n",
94 func, test, ivalok, ival);
95 } else if (verbose) {
96 System.out.printf("%s passed: %s want %d got %d\n",
97 func, test, ivalok, ival);
98 }
99 assertEquals(func+" "+test, ivalok, ival);
100 return;
101 }
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121 private void vvd(double val, double valok, double dval,
122 String func, String test)
123 {
124 double a, f;
125
126
127 a = val - valok;
128 f = abs(valok / a);
129 String msg = String.format("%s: %s want %.20g got %.20g (1/%.3g)\n",
130 func, test, valok, val, f);
131 if (verbose && abs(a) <= dval) {
132 System.out.println("passed: " + msg);
133 }
134 assertTrue(msg, abs(a) <= dval);
135 return;
136 }
137
138 @Test
139 public void t_a2af()
140
141
142
143
144
145
146
147
148
149
150
151 {
152 int idmsf[] = new int[4];
153 char s;
154
155
156 s = jauA2af(4, 2.345, idmsf);
157
158 viv(s, '+', "jauA2af", "s");
159
160 viv(idmsf[0], 134, "jauA2af", "0");
161 viv(idmsf[1], 21, "jauA2af", "1");
162 viv(idmsf[2], 30, "jauA2af", "2");
163 viv(idmsf[3], 9706, "jauA2af", "3");
164
165 }
166
167 @Test
168 public void t_a2tf()
169
170
171
172
173
174
175
176
177
178
179
180 {
181 int ihmsf[] = new int[4];
182 char s;
183
184
185 s = jauA2tf(4, -3.01234, ihmsf);
186
187 viv((int)s, '-', "jauA2tf", "s");
188
189 viv(ihmsf[0], 11, "jauA2tf", "0");
190 viv(ihmsf[1], 30, "jauA2tf", "1");
191 viv(ihmsf[2], 22, "jauA2tf", "2");
192 viv(ihmsf[3], 6484, "jauA2tf", "3");
193
194 }
195
196 @Test
197 public void t_anp()
198
199
200
201
202
203
204
205
206
207
208
209 {
210 vvd(jauAnp(-0.1), 6.183185307179586477, 1e-12, "jauAnp", "");
211 }
212
213 @Test
214 public void t_anpm()
215
216
217
218
219
220
221
222
223
224
225
226 {
227 vvd(jauAnpm(-4.0), 2.283185307179586477, 1e-12, "jauAnpm", "");
228 }
229
230 @Test
231 public void t_bi00()
232
233
234
235
236
237
238
239
240
241
242
243 {
244
245 FrameBias ret = jauBi00();
246
247 vvd(ret.dpsibi, -0.2025309152835086613e-6, 1e-12,"jauBi00", "dpsibi");
248 vvd(ret.depsbi, -0.3306041454222147847e-7, 1e-12,"jauBi00", "depsbi");
249 vvd(ret.dra, -0.7078279744199225506e-7, 1e-12,"jauBi00", "dra");
250 }
251
252 @Test
253 public void t_bp00()
254
255
256
257
258
259
260
261
262
263
264
265 {
266 double rb[][] = new double[3][3], rp[][] = new double[3][3], rbp[][] = new double[3][3];
267
268
269 jauBp00(2400000.5, 50123.9999, rb, rp, rbp);
270
271 vvd(rb[0][0], 0.9999999999999942498, 1e-12,"jauBp00", "rb11");
272 vvd(rb[0][1], -0.7078279744199196626e-7, 1e-16,"jauBp00", "rb12");
273 vvd(rb[0][2], 0.8056217146976134152e-7, 1e-16,"jauBp00", "rb13");
274 vvd(rb[1][0], 0.7078279477857337206e-7, 1e-16,"jauBp00", "rb21");
275 vvd(rb[1][1], 0.9999999999999969484, 1e-12,"jauBp00", "rb22");
276 vvd(rb[1][2], 0.3306041454222136517e-7, 1e-16,"jauBp00", "rb23");
277 vvd(rb[2][0], -0.8056217380986972157e-7, 1e-16,"jauBp00", "rb31");
278 vvd(rb[2][1], -0.3306040883980552500e-7, 1e-16,"jauBp00", "rb32");
279 vvd(rb[2][2], 0.9999999999999962084, 1e-12,"jauBp00", "rb33");
280
281 vvd(rp[0][0], 0.9999995504864048241, 1e-12,"jauBp00", "rp11");
282 vvd(rp[0][1], 0.8696113836207084411e-3, 1e-14,"jauBp00", "rp12");
283 vvd(rp[0][2], 0.3778928813389333402e-3, 1e-14,"jauBp00", "rp13");
284 vvd(rp[1][0], -0.8696113818227265968e-3, 1e-14,"jauBp00", "rp21");
285 vvd(rp[1][1], 0.9999996218879365258, 1e-12,"jauBp00", "rp22");
286 vvd(rp[1][2], -0.1690679263009242066e-6, 1e-14,"jauBp00", "rp23");
287 vvd(rp[2][0], -0.3778928854764695214e-3, 1e-14,"jauBp00", "rp31");
288 vvd(rp[2][1], -0.1595521004195286491e-6, 1e-14,"jauBp00", "rp32");
289 vvd(rp[2][2], 0.9999999285984682756, 1e-12,"jauBp00", "rp33");
290
291 vvd(rbp[0][0], 0.9999995505175087260, 1e-12,"jauBp00", "rbp11");
292 vvd(rbp[0][1], 0.8695405883617884705e-3, 1e-14,"jauBp00", "rbp12");
293 vvd(rbp[0][2], 0.3779734722239007105e-3, 1e-14,"jauBp00", "rbp13");
294 vvd(rbp[1][0], -0.8695405990410863719e-3, 1e-14,"jauBp00", "rbp21");
295 vvd(rbp[1][1], 0.9999996219494925900, 1e-12,"jauBp00", "rbp22");
296 vvd(rbp[1][2], -0.1360775820404982209e-6, 1e-14,"jauBp00", "rbp23");
297 vvd(rbp[2][0], -0.3779734476558184991e-3, 1e-14,"jauBp00", "rbp31");
298 vvd(rbp[2][1], -0.1925857585832024058e-6, 1e-14,"jauBp00", "rbp32");
299 vvd(rbp[2][2], 0.9999999285680153377, 1e-12,"jauBp00", "rbp33");
300 }
301
302 @Test
303 public void t_bp06()
304
305
306
307
308
309
310
311
312
313
314
315 {
316 double rb[][] = new double[3][3], rp[][] = new double[3][3], rbp[][] = new double[3][3];
317
318
319 jauBp06(2400000.5, 50123.9999, rb, rp, rbp);
320
321 vvd(rb[0][0], 0.9999999999999942497, 1e-12,"jauBp06", "rb11");
322 vvd(rb[0][1], -0.7078368960971557145e-7, 1e-14,"jauBp06", "rb12");
323 vvd(rb[0][2], 0.8056213977613185606e-7, 1e-14,"jauBp06", "rb13");
324 vvd(rb[1][0], 0.7078368694637674333e-7, 1e-14,"jauBp06", "rb21");
325 vvd(rb[1][1], 0.9999999999999969484, 1e-12,"jauBp06", "rb22");
326 vvd(rb[1][2], 0.3305943742989134124e-7, 1e-14,"jauBp06", "rb23");
327 vvd(rb[2][0], -0.8056214211620056792e-7, 1e-14,"jauBp06", "rb31");
328 vvd(rb[2][1], -0.3305943172740586950e-7, 1e-14,"jauBp06", "rb32");
329 vvd(rb[2][2], 0.9999999999999962084, 1e-12,"jauBp06", "rb33");
330
331 vvd(rp[0][0], 0.9999995504864960278, 1e-12,"jauBp06", "rp11");
332 vvd(rp[0][1], 0.8696112578855404832e-3, 1e-14,"jauBp06", "rp12");
333 vvd(rp[0][2], 0.3778929293341390127e-3, 1e-14,"jauBp06", "rp13");
334 vvd(rp[1][0], -0.8696112560510186244e-3, 1e-14,"jauBp06", "rp21");
335 vvd(rp[1][1], 0.9999996218880458820, 1e-12,"jauBp06", "rp22");
336 vvd(rp[1][2], -0.1691646168941896285e-6, 1e-14,"jauBp06", "rp23");
337 vvd(rp[2][0], -0.3778929335557603418e-3, 1e-14,"jauBp06", "rp31");
338 vvd(rp[2][1], -0.1594554040786495076e-6, 1e-14,"jauBp06", "rp32");
339 vvd(rp[2][2], 0.9999999285984501222, 1e-12,"jauBp06", "rp33");
340
341 vvd(rbp[0][0], 0.9999995505176007047, 1e-12,"jauBp06", "rbp11");
342 vvd(rbp[0][1], 0.8695404617348208406e-3, 1e-14,"jauBp06", "rbp12");
343 vvd(rbp[0][2], 0.3779735201865589104e-3, 1e-14,"jauBp06", "rbp13");
344 vvd(rbp[1][0], -0.8695404723772031414e-3, 1e-14,"jauBp06", "rbp21");
345 vvd(rbp[1][1], 0.9999996219496027161, 1e-12,"jauBp06", "rbp22");
346 vvd(rbp[1][2], -0.1361752497080270143e-6, 1e-14,"jauBp06", "rbp23");
347 vvd(rbp[2][0], -0.3779734957034089490e-3, 1e-14,"jauBp06", "rbp31");
348 vvd(rbp[2][1], -0.1924880847894457113e-6, 1e-14,"jauBp06", "rbp32");
349 vvd(rbp[2][2], 0.9999999285679971958, 1e-12,"jauBp06", "rbp33");
350 }
351
352 @Test
353 public void t_bpn2xy()
354
355
356
357
358
359
360
361
362
363
364
365 {
366 double rbpn[][] = new double[3][3];
367
368
369 rbpn[0][0] = 9.999962358680738e-1;
370 rbpn[0][1] = -2.516417057665452e-3;
371 rbpn[0][2] = -1.093569785342370e-3;
372
373 rbpn[1][0] = 2.516462370370876e-3;
374 rbpn[1][1] = 9.999968329010883e-1;
375 rbpn[1][2] = 4.006159587358310e-5;
376
377 rbpn[2][0] = 1.093465510215479e-3;
378 rbpn[2][1] = -4.281337229063151e-5;
379 rbpn[2][2] = 9.999994012499173e-1;
380
381 CelestialIntermediatePole ret = jauBpn2xy(rbpn);
382
383 vvd(ret.x, 1.093465510215479e-3, 1e-12, "jauBpn2xy", "x");
384 vvd(ret.y, -4.281337229063151e-5, 1e-12, "jauBpn2xy", "y");
385
386 }
387
388 @Test
389 public void t_c2i00a()
390
391
392
393
394
395
396
397
398
399
400
401 {
402 double rc2i[][];
403
404
405 rc2i = jauC2i00a(2400000.5, 53736.0);
406
407 vvd(rc2i[0][0], 0.9999998323037165557, 1e-12,"jauC2i00a", "11");
408 vvd(rc2i[0][1], 0.5581526348992140183e-9, 1e-12,"jauC2i00a", "12");
409 vvd(rc2i[0][2], -0.5791308477073443415e-3, 1e-12,"jauC2i00a", "13");
410
411 vvd(rc2i[1][0], -0.2384266227870752452e-7, 1e-12,"jauC2i00a", "21");
412 vvd(rc2i[1][1], 0.9999999991917405258, 1e-12,"jauC2i00a", "22");
413 vvd(rc2i[1][2], -0.4020594955028209745e-4, 1e-12,"jauC2i00a", "23");
414
415 vvd(rc2i[2][0], 0.5791308472168152904e-3, 1e-12,"jauC2i00a", "31");
416 vvd(rc2i[2][1], 0.4020595661591500259e-4, 1e-12,"jauC2i00a", "32");
417 vvd(rc2i[2][2], 0.9999998314954572304, 1e-12,"jauC2i00a", "33");
418
419 }
420
421 @Test
422 public void t_c2i00b()
423
424
425
426
427
428
429
430
431
432
433
434 {
435 double rc2i[][] = new double[3][3];
436
437
438 rc2i = jauC2i00b(2400000.5, 53736.0 );
439
440 vvd(rc2i[0][0], 0.9999998323040954356, 1e-12,"jauC2i00b", "11");
441 vvd(rc2i[0][1], 0.5581526349131823372e-9, 1e-12,"jauC2i00b", "12");
442 vvd(rc2i[0][2], -0.5791301934855394005e-3, 1e-12,"jauC2i00b", "13");
443
444 vvd(rc2i[1][0], -0.2384239285499175543e-7, 1e-12,"jauC2i00b", "21");
445 vvd(rc2i[1][1], 0.9999999991917574043, 1e-12,"jauC2i00b", "22");
446 vvd(rc2i[1][2], -0.4020552974819030066e-4, 1e-12,"jauC2i00b", "23");
447
448 vvd(rc2i[2][0], 0.5791301929950208873e-3, 1e-12,"jauC2i00b", "31");
449 vvd(rc2i[2][1], 0.4020553681373720832e-4, 1e-12,"jauC2i00b", "32");
450 vvd(rc2i[2][2], 0.9999998314958529887, 1e-12,"jauC2i00b", "33");
451
452 }
453
454 @Test
455 public void t_c2i06a()
456
457
458
459
460
461
462
463
464
465
466
467 {
468 double rc2i[][] = new double[3][3];
469
470
471 rc2i = jauC2i06a(2400000.5, 53736.0);
472
473 vvd(rc2i[0][0], 0.9999998323037159379, 1e-12,"jauC2i06a", "11");
474 vvd(rc2i[0][1], 0.5581121329587613787e-9, 1e-12,"jauC2i06a", "12");
475 vvd(rc2i[0][2], -0.5791308487740529749e-3, 1e-12,"jauC2i06a", "13");
476
477 vvd(rc2i[1][0], -0.2384253169452306581e-7, 1e-12,"jauC2i06a", "21");
478 vvd(rc2i[1][1], 0.9999999991917467827, 1e-12,"jauC2i06a", "22");
479 vvd(rc2i[1][2], -0.4020579392895682558e-4, 1e-12,"jauC2i06a", "23");
480
481 vvd(rc2i[2][0], 0.5791308482835292617e-3, 1e-12,"jauC2i06a", "31");
482 vvd(rc2i[2][1], 0.4020580099454020310e-4, 1e-12,"jauC2i06a", "32");
483 vvd(rc2i[2][2], 0.9999998314954628695, 1e-12,"jauC2i06a", "33");
484
485 }
486
487 @Test
488 public void t_c2ibpn()
489
490
491
492
493
494
495
496
497
498
499
500 {
501 double rbpn[][] = new double[3][3], rc2i[][] = new double[3][3];
502
503
504 rbpn[0][0] = 9.999962358680738e-1;
505 rbpn[0][1] = -2.516417057665452e-3;
506 rbpn[0][2] = -1.093569785342370e-3;
507
508 rbpn[1][0] = 2.516462370370876e-3;
509 rbpn[1][1] = 9.999968329010883e-1;
510 rbpn[1][2] = 4.006159587358310e-5;
511
512 rbpn[2][0] = 1.093465510215479e-3;
513 rbpn[2][1] = -4.281337229063151e-5;
514 rbpn[2][2] = 9.999994012499173e-1;
515
516 rc2i = jauC2ibpn(2400000.5, 50123.9999, rbpn );
517
518 vvd(rc2i[0][0], 0.9999994021664089977, 1e-12,"jauC2ibpn", "11");
519 vvd(rc2i[0][1], -0.3869195948017503664e-8, 1e-12,"jauC2ibpn", "12");
520 vvd(rc2i[0][2], -0.1093465511383285076e-2, 1e-12,"jauC2ibpn", "13");
521
522 vvd(rc2i[1][0], 0.5068413965715446111e-7, 1e-12,"jauC2ibpn", "21");
523 vvd(rc2i[1][1], 0.9999999990835075686, 1e-12,"jauC2ibpn", "22");
524 vvd(rc2i[1][2], 0.4281334246452708915e-4, 1e-12,"jauC2ibpn", "23");
525
526 vvd(rc2i[2][0], 0.1093465510215479000e-2, 1e-12,"jauC2ibpn", "31");
527 vvd(rc2i[2][1], -0.4281337229063151000e-4, 1e-12,"jauC2ibpn", "32");
528 vvd(rc2i[2][2], 0.9999994012499173103, 1e-12,"jauC2ibpn", "33");
529
530 }
531
532 @Test
533 public void t_c2ixy()
534
535
536
537
538
539
540
541
542
543
544
545 {
546 double x, y, rc2i[][] = new double[3][3];
547
548
549 x = 0.5791308486706011000e-3;
550 y = 0.4020579816732961219e-4;
551
552 rc2i = jauC2ixy(2400000.5, 53736, x, y);
553
554 vvd(rc2i[0][0], 0.9999998323037157138, 1e-12,"jauC2ixy", "11");
555 vvd(rc2i[0][1], 0.5581526349032241205e-9, 1e-12,"jauC2ixy", "12");
556 vvd(rc2i[0][2], -0.5791308491611263745e-3, 1e-12,"jauC2ixy", "13");
557
558 vvd(rc2i[1][0], -0.2384257057469842953e-7, 1e-12,"jauC2ixy", "21");
559 vvd(rc2i[1][1], 0.9999999991917468964, 1e-12,"jauC2ixy", "22");
560 vvd(rc2i[1][2], -0.4020579110172324363e-4, 1e-12,"jauC2ixy", "23");
561
562 vvd(rc2i[2][0], 0.5791308486706011000e-3, 1e-12,"jauC2ixy", "31");
563 vvd(rc2i[2][1], 0.4020579816732961219e-4, 1e-12,"jauC2ixy", "32");
564 vvd(rc2i[2][2], 0.9999998314954627590, 1e-12,"jauC2ixy", "33");
565
566 }
567
568 @Test
569 public void t_c2ixys()
570
571
572
573
574
575
576
577
578
579
580
581 {
582 double x, y, s, rc2i[][] = new double[3][3];
583
584
585 x = 0.5791308486706011000e-3;
586 y = 0.4020579816732961219e-4;
587 s = -0.1220040848472271978e-7;
588
589 rc2i = jauC2ixys(x, y, s);
590
591 vvd(rc2i[0][0], 0.9999998323037157138, 1e-12,"jauC2ixys", "11");
592 vvd(rc2i[0][1], 0.5581984869168499149e-9, 1e-12,"jauC2ixys", "12");
593 vvd(rc2i[0][2], -0.5791308491611282180e-3, 1e-12,"jauC2ixys", "13");
594
595 vvd(rc2i[1][0], -0.2384261642670440317e-7, 1e-12,"jauC2ixys", "21");
596 vvd(rc2i[1][1], 0.9999999991917468964, 1e-12,"jauC2ixys", "22");
597 vvd(rc2i[1][2], -0.4020579110169668931e-4, 1e-12,"jauC2ixys", "23");
598
599 vvd(rc2i[2][0], 0.5791308486706011000e-3, 1e-12,"jauC2ixys", "31");
600 vvd(rc2i[2][1], 0.4020579816732961219e-4, 1e-12,"jauC2ixys", "32");
601 vvd(rc2i[2][2], 0.9999998314954627590, 1e-12,"jauC2ixys", "33");
602
603 }
604
605 @Test
606 public void t_c2s()
607
608
609
610
611
612
613
614
615
616
617
618 {
619 double p[] = new double[3];
620
621
622 p[0] = 100.0;
623 p[1] = -50.0;
624 p[2] = 25.0;
625
626 SphericalCoordinate ret = jauC2s(p);
627
628 vvd(ret.alpha, -0.4636476090008061162, 1e-14, "jauC2s", "theta");
629 vvd(ret.delta, 0.2199879773954594463, 1e-14, "jauC2s", "phi");
630
631 }
632
633 @Test
634 public void t_c2t00a()
635
636
637
638
639
640
641
642
643
644
645
646 {
647 double tta, ttb, uta, utb, xp, yp, rc2t[][] = new double[3][3];
648
649
650 tta = 2400000.5;
651 uta = 2400000.5;
652 ttb = 53736.0;
653 utb = 53736.0;
654 xp = 2.55060238e-7;
655 yp = 1.860359247e-6;
656
657 rc2t = jauC2t00a(tta, ttb, uta, utb, xp, yp);
658
659 vvd(rc2t[0][0], -0.1810332128307182668, 1e-12,"jauC2t00a", "11");
660 vvd(rc2t[0][1], 0.9834769806938457836, 1e-12,"jauC2t00a", "12");
661 vvd(rc2t[0][2], 0.6555535638688341725e-4, 1e-12,"jauC2t00a", "13");
662
663 vvd(rc2t[1][0], -0.9834768134135984552, 1e-12,"jauC2t00a", "21");
664 vvd(rc2t[1][1], -0.1810332203649520727, 1e-12,"jauC2t00a", "22");
665 vvd(rc2t[1][2], 0.5749801116141056317e-3, 1e-12,"jauC2t00a", "23");
666
667 vvd(rc2t[2][0], 0.5773474014081406921e-3, 1e-12,"jauC2t00a", "31");
668 vvd(rc2t[2][1], 0.3961832391770163647e-4, 1e-12,"jauC2t00a", "32");
669 vvd(rc2t[2][2], 0.9999998325501692289, 1e-12,"jauC2t00a", "33");
670
671 }
672
673 @Test
674 public void t_c2t00b()
675
676
677
678
679
680
681
682
683
684
685
686 {
687 double tta, ttb, uta, utb, xp, yp, rc2t[][] = new double[3][3];
688
689
690 tta = 2400000.5;
691 uta = 2400000.5;
692 ttb = 53736.0;
693 utb = 53736.0;
694 xp = 2.55060238e-7;
695 yp = 1.860359247e-6;
696
697 rc2t = jauC2t00b(tta, ttb, uta, utb, xp, yp);
698
699 vvd(rc2t[0][0], -0.1810332128439678965, 1e-12,"jauC2t00b", "11");
700 vvd(rc2t[0][1], 0.9834769806913872359, 1e-12,"jauC2t00b", "12");
701 vvd(rc2t[0][2], 0.6555565082458415611e-4, 1e-12,"jauC2t00b", "13");
702
703 vvd(rc2t[1][0], -0.9834768134115435923, 1e-12,"jauC2t00b", "21");
704 vvd(rc2t[1][1], -0.1810332203784001946, 1e-12,"jauC2t00b", "22");
705 vvd(rc2t[1][2], 0.5749793922030017230e-3, 1e-12,"jauC2t00b", "23");
706
707 vvd(rc2t[2][0], 0.5773467471863534901e-3, 1e-12,"jauC2t00b", "31");
708 vvd(rc2t[2][1], 0.3961790411549945020e-4, 1e-12,"jauC2t00b", "32");
709 vvd(rc2t[2][2], 0.9999998325505635738, 1e-12,"jauC2t00b", "33");
710
711 }
712
713 @Test
714 public void t_c2t06a()
715
716
717
718
719
720
721
722
723
724
725
726 {
727 double tta, ttb, uta, utb, xp, yp, rc2t[][] = new double[3][3];
728
729
730 tta = 2400000.5;
731 uta = 2400000.5;
732 ttb = 53736.0;
733 utb = 53736.0;
734 xp = 2.55060238e-7;
735 yp = 1.860359247e-6;
736
737 rc2t = jauC2t06a(tta, ttb, uta, utb, xp, yp);
738
739 vvd(rc2t[0][0], -0.1810332128305897282, 1e-12,"jauC2t06a", "11");
740 vvd(rc2t[0][1], 0.9834769806938592296, 1e-12,"jauC2t06a", "12");
741 vvd(rc2t[0][2], 0.6555550962998436505e-4, 1e-12,"jauC2t06a", "13");
742
743 vvd(rc2t[1][0], -0.9834768134136214897, 1e-12,"jauC2t06a", "21");
744 vvd(rc2t[1][1], -0.1810332203649130832, 1e-12,"jauC2t06a", "22");
745 vvd(rc2t[1][2], 0.5749800844905594110e-3, 1e-12,"jauC2t06a", "23");
746
747 vvd(rc2t[2][0], 0.5773474024748545878e-3, 1e-12,"jauC2t06a", "31");
748 vvd(rc2t[2][1], 0.3961816829632690581e-4, 1e-12,"jauC2t06a", "32");
749 vvd(rc2t[2][2], 0.9999998325501747785, 1e-12,"jauC2t06a", "33");
750
751 }
752
753 @Test
754 public void t_c2tcio()
755
756
757
758
759
760
761
762
763
764
765
766 {
767 double rc2i[][] = new double[3][3], era, rpom[][] = new double[3][3], rc2t[][] = new double[3][3];
768
769
770 rc2i[0][0] = 0.9999998323037164738;
771 rc2i[0][1] = 0.5581526271714303683e-9;
772 rc2i[0][2] = -0.5791308477073443903e-3;
773
774 rc2i[1][0] = -0.2384266227524722273e-7;
775 rc2i[1][1] = 0.9999999991917404296;
776 rc2i[1][2] = -0.4020594955030704125e-4;
777
778 rc2i[2][0] = 0.5791308472168153320e-3;
779 rc2i[2][1] = 0.4020595661593994396e-4;
780 rc2i[2][2] = 0.9999998314954572365;
781
782 era = 1.75283325530307;
783
784 rpom[0][0] = 0.9999999999999674705;
785 rpom[0][1] = -0.1367174580728847031e-10;
786 rpom[0][2] = 0.2550602379999972723e-6;
787
788 rpom[1][0] = 0.1414624947957029721e-10;
789 rpom[1][1] = 0.9999999999982694954;
790 rpom[1][2] = -0.1860359246998866338e-5;
791
792 rpom[2][0] = -0.2550602379741215275e-6;
793 rpom[2][1] = 0.1860359247002413923e-5;
794 rpom[2][2] = 0.9999999999982369658;
795
796
797 rc2t = jauC2tcio(rc2i, era, rpom);
798
799 vvd(rc2t[0][0], -0.1810332128307110439, 1e-12,"jauC2tcio", "11");
800 vvd(rc2t[0][1], 0.9834769806938470149, 1e-12,"jauC2tcio", "12");
801 vvd(rc2t[0][2], 0.6555535638685466874e-4, 1e-12,"jauC2tcio", "13");
802
803 vvd(rc2t[1][0], -0.9834768134135996657, 1e-12,"jauC2tcio", "21");
804 vvd(rc2t[1][1], -0.1810332203649448367, 1e-12,"jauC2tcio", "22");
805 vvd(rc2t[1][2], 0.5749801116141106528e-3, 1e-12,"jauC2tcio", "23");
806
807 vvd(rc2t[2][0], 0.5773474014081407076e-3, 1e-12,"jauC2tcio", "31");
808 vvd(rc2t[2][1], 0.3961832391772658944e-4, 1e-12,"jauC2tcio", "32");
809 vvd(rc2t[2][2], 0.9999998325501691969, 1e-12,"jauC2tcio", "33");
810
811 }
812
813 @Test
814 public void t_c2teqx()
815
816
817
818
819
820
821
822
823
824
825
826 {
827 double rbpn[][] = new double[3][3], gst, rpom[][] = new double[3][3], rc2t[][] = new double[3][3];
828
829
830 rbpn[0][0] = 0.9999989440476103608;
831 rbpn[0][1] = -0.1332881761240011518e-2;
832 rbpn[0][2] = -0.5790767434730085097e-3;
833
834 rbpn[1][0] = 0.1332858254308954453e-2;
835 rbpn[1][1] = 0.9999991109044505944;
836 rbpn[1][2] = -0.4097782710401555759e-4;
837
838 rbpn[2][0] = 0.5791308472168153320e-3;
839 rbpn[2][1] = 0.4020595661593994396e-4;
840 rbpn[2][2] = 0.9999998314954572365;
841
842 gst = 1.754166138040730516;
843
844 rpom[0][0] = 0.9999999999999674705;
845 rpom[0][1] = -0.1367174580728847031e-10;
846 rpom[0][2] = 0.2550602379999972723e-6;
847
848 rpom[1][0] = 0.1414624947957029721e-10;
849 rpom[1][1] = 0.9999999999982694954;
850 rpom[1][2] = -0.1860359246998866338e-5;
851
852 rpom[2][0] = -0.2550602379741215275e-6;
853 rpom[2][1] = 0.1860359247002413923e-5;
854 rpom[2][2] = 0.9999999999982369658;
855
856 rc2t = jauC2teqx(rbpn, gst, rpom);
857
858 vvd(rc2t[0][0], -0.1810332128528685730, 1e-12,"jauC2teqx", "11");
859 vvd(rc2t[0][1], 0.9834769806897685071, 1e-12,"jauC2teqx", "12");
860 vvd(rc2t[0][2], 0.6555535639982634449e-4, 1e-12,"jauC2teqx", "13");
861
862 vvd(rc2t[1][0], -0.9834768134095211257, 1e-12,"jauC2teqx", "21");
863 vvd(rc2t[1][1], -0.1810332203871023800, 1e-12,"jauC2teqx", "22");
864 vvd(rc2t[1][2], 0.5749801116126438962e-3, 1e-12,"jauC2teqx", "23");
865
866 vvd(rc2t[2][0], 0.5773474014081539467e-3, 1e-12,"jauC2teqx", "31");
867 vvd(rc2t[2][1], 0.3961832391768640871e-4, 1e-12,"jauC2teqx", "32");
868 vvd(rc2t[2][2], 0.9999998325501691969, 1e-12,"jauC2teqx", "33");
869
870 }
871
872 @Test
873 public void t_c2tpe()
874
875
876
877
878
879
880
881
882
883
884
885 {
886 double tta, ttb, uta, utb, dpsi, deps, xp, yp, rc2t[][] = new double[3][3];
887
888
889 tta = 2400000.5;
890 uta = 2400000.5;
891 ttb = 53736.0;
892 utb = 53736.0;
893 deps = 0.4090789763356509900;
894 dpsi = -0.9630909107115582393e-5;
895 xp = 2.55060238e-7;
896 yp = 1.860359247e-6;
897
898 rc2t = jauC2tpe(tta, ttb, uta, utb, dpsi, deps, xp, yp);
899
900 vvd(rc2t[0][0], -0.1813677995763029394, 1e-12,"jauC2tpe", "11");
901 vvd(rc2t[0][1], 0.9023482206891683275, 1e-12,"jauC2tpe", "12");
902 vvd(rc2t[0][2], -0.3909902938641085751, 1e-12,"jauC2tpe", "13");
903
904 vvd(rc2t[1][0], -0.9834147641476804807, 1e-12,"jauC2tpe", "21");
905 vvd(rc2t[1][1], -0.1659883635434995121, 1e-12,"jauC2tpe", "22");
906 vvd(rc2t[1][2], 0.7309763898042819705e-1, 1e-12,"jauC2tpe", "23");
907
908 vvd(rc2t[2][0], 0.1059685430673215247e-2, 1e-12,"jauC2tpe", "31");
909 vvd(rc2t[2][1], 0.3977631855605078674, 1e-12,"jauC2tpe", "32");
910 vvd(rc2t[2][2], 0.9174875068792735362, 1e-12,"jauC2tpe", "33");
911
912 }
913
914 @Test
915 public void t_c2txy()
916
917
918
919
920
921
922
923
924
925
926
927 {
928 double tta, ttb, uta, utb, x, y, xp, yp, rc2t[][] = new double[3][3];
929
930
931 tta = 2400000.5;
932 uta = 2400000.5;
933 ttb = 53736.0;
934 utb = 53736.0;
935 x = 0.5791308486706011000e-3;
936 y = 0.4020579816732961219e-4;
937 xp = 2.55060238e-7;
938 yp = 1.860359247e-6;
939
940 rc2t = jauC2txy(tta, ttb, uta, utb, x, y, xp, yp);
941
942 vvd(rc2t[0][0], -0.1810332128306279253, 1e-12,"jauC2txy", "11");
943 vvd(rc2t[0][1], 0.9834769806938520084, 1e-12,"jauC2txy", "12");
944 vvd(rc2t[0][2], 0.6555551248057665829e-4, 1e-12,"jauC2txy", "13");
945
946 vvd(rc2t[1][0], -0.9834768134136142314, 1e-12,"jauC2txy", "21");
947 vvd(rc2t[1][1], -0.1810332203649529312, 1e-12,"jauC2txy", "22");
948 vvd(rc2t[1][2], 0.5749800843594139912e-3, 1e-12,"jauC2txy", "23");
949
950 vvd(rc2t[2][0], 0.5773474028619264494e-3, 1e-12,"jauC2txy", "31");
951 vvd(rc2t[2][1], 0.3961816546911624260e-4, 1e-12,"jauC2txy", "32");
952 vvd(rc2t[2][2], 0.9999998325501746670, 1e-12,"jauC2txy", "33");
953
954 }
955
956 @Test
957 public void t_cal2jd()
958
959
960
961
962
963
964
965
966
967
968
969 {
970
971
972 try {
973 JulianDate jd = jauCal2jd(2003, 06, 01);
974
975 vvd(jd.djm0, 2400000.5, 0.0, "jauCal2jd", "djm0");
976 vvd(jd.djm1, 52791.0, 0.0, "jauCal2jd", "djm");
977 } catch (JSOFAIllegalParameter e) {
978 fail("jauCal2jd should not throw execption");
979 }
980
981
982
983 }
984
985 @Test
986 public void t_cp()
987
988
989
990
991
992
993
994
995
996
997
998 {
999 double p[] = new double[3], c[] = new double[3];
1000
1001
1002 p[0] = 0.3;
1003 p[1] = 1.2;
1004 p[2] = -2.5;
1005
1006 jauCp(p, c);
1007
1008 vvd(c[0], 0.3, 0.0, "jauCp", "1");
1009 vvd(c[1], 1.2, 0.0, "jauCp", "2");
1010 vvd(c[2], -2.5, 0.0, "jauCp", "3");
1011 }
1012
1013 @Test
1014 public void t_cpv()
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026 {
1027 double pv[][] = new double[2][3], c[][] = new double[2][3];
1028
1029
1030 pv[0][0] = 0.3;
1031 pv[0][1] = 1.2;
1032 pv[0][2] = -2.5;
1033
1034 pv[1][0] = -0.5;
1035 pv[1][1] = 3.1;
1036 pv[1][2] = 0.9;
1037
1038 jauCpv(pv, c);
1039
1040 vvd(c[0][0], 0.3, 0.0, "jauCpv", "p1");
1041 vvd(c[0][1], 1.2, 0.0, "jauCpv", "p2");
1042 vvd(c[0][2], -2.5, 0.0, "jauCpv", "p3");
1043
1044 vvd(c[1][0], -0.5, 0.0, "jauCpv", "v1");
1045 vvd(c[1][1], 3.1, 0.0, "jauCpv", "v2");
1046 vvd(c[1][2], 0.9, 0.0, "jauCpv", "v3");
1047
1048 }
1049
1050 @Test
1051 public void t_cr()
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063 {
1064 double r[][] = new double[3][3], c[][] = new double[3][3];
1065
1066
1067 r[0][0] = 2.0;
1068 r[0][1] = 3.0;
1069 r[0][2] = 2.0;
1070
1071 r[1][0] = 3.0;
1072 r[1][1] = 2.0;
1073 r[1][2] = 3.0;
1074
1075 r[2][0] = 3.0;
1076 r[2][1] = 4.0;
1077 r[2][2] = 5.0;
1078
1079 jauCr(r, c);
1080
1081 vvd(c[0][0], 2.0, 0.0, "jauCr", "11");
1082 vvd(c[0][1], 3.0, 0.0, "jauCr", "12");
1083 vvd(c[0][2], 2.0, 0.0, "jauCr", "13");
1084
1085 vvd(c[1][0], 3.0, 0.0, "jauCr", "21");
1086 vvd(c[1][1], 2.0, 0.0, "jauCr", "22");
1087 vvd(c[1][2], 3.0, 0.0, "jauCr", "23");
1088
1089 vvd(c[2][0], 3.0, 0.0, "jauCr", "31");
1090 vvd(c[2][1], 4.0, 0.0, "jauCr", "32");
1091 vvd(c[2][2], 5.0, 0.0, "jauCr", "33");
1092 }
1093
1094 @Test
1095 public void t_d2tf()
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107 {
1108 int ihmsf[] = new int[4];
1109 char s;
1110
1111
1112 s = jauD2tf(4, -0.987654321, ihmsf);
1113
1114 viv((int)s, '-', "jauD2tf", "s");
1115
1116 viv(ihmsf[0], 23, "jauD2tf", "0");
1117 viv(ihmsf[1], 42, "jauD2tf", "1");
1118 viv(ihmsf[2], 13, "jauD2tf", "2");
1119 viv(ihmsf[3], 3333, "jauD2tf", "3");
1120
1121 }
1122
1123 @Test
1124 public void t_dat()
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136 {
1137 double deltat;
1138 int nls = leapSeconds.length;
1139 viv(nls, 42, "jauDat", "number of leap second entries");
1140 viv(leapSeconds[nls-1].iyear, 2017, "jauDat", "year of last leap second");
1141 viv(leapSeconds[nls-1].month, 1, "jauDat", "month of last leap second");
1142 try {
1143 deltat = jauDat(2003, 6, 1, 0.0);
1144
1145 vvd(deltat, 32.0, 0.0, "jauDat", "d1");
1146 } catch (Exception e) {
1147 fail("jauDat j1");
1148 }
1149
1150 try {
1151 deltat = jauDat(2008, 1, 17, 0.0);
1152
1153 vvd(deltat, 33.0, 0.0, "jauDat", "d2");
1154 } catch (Exception e) {
1155 fail("jauDat j2");
1156 }
1157
1158 try {
1159 deltat = jauDat(2017, 9, 1, 0.0 );
1160 vvd(deltat, 37.0, 0.0, "jauDat", "d3");
1161
1162 } catch (Exception e) {
1163 fail("jauDat j3");
1164 }
1165
1166 }
1167
1168 @Test
1169 public void t_dtdb()
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181 {
1182 double dtdb;
1183
1184
1185 dtdb = jauDtdb(2448939.5, 0.123, 0.76543, 5.0123, 5525.242, 3190.0);
1186
1187 vvd(dtdb, -0.1280368005936998991e-2, 1e-15, "jauDtdb", "");
1188
1189 }
1190
1191 @Test
1192 public void t_ee00()
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204 {
1205 double epsa, dpsi, ee;
1206
1207
1208 epsa = 0.4090789763356509900;
1209 dpsi = -0.9630909107115582393e-5;
1210
1211 ee = jauEe00(2400000.5, 53736.0, epsa, dpsi);
1212
1213 vvd(ee, -0.8834193235367965479e-5, 1e-18, "jauEe00", "");
1214
1215 }
1216
1217 @Test
1218 public void t_ee00a()
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230 {
1231 double ee;
1232
1233
1234 ee = jauEe00a(2400000.5, 53736.0);
1235
1236 vvd(ee, -0.8834192459222588227e-5, 1e-18, "jauEe00a", "");
1237
1238 }
1239
1240 @Test
1241 public void t_ee00b()
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253 {
1254 double ee;
1255
1256
1257 ee = jauEe00b(2400000.5, 53736.0);
1258
1259 vvd(ee, -0.8835700060003032831e-5, 1e-18, "jauEe00b", "");
1260
1261 }
1262
1263 @Test
1264 public void t_ee06a()
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276 {
1277 double ee;
1278
1279
1280 ee = jauEe06a(2400000.5, 53736.0);
1281
1282 vvd(ee, -0.8834195072043790156e-5, 1e-15, "jauEe06a", "");
1283 }
1284
1285 @Test
1286 public void t_eect00()
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298 {
1299 double eect;
1300
1301
1302 eect = jauEect00(2400000.5, 53736.0);
1303
1304 vvd(eect, 0.2046085004885125264e-8, 1e-20, "jauEect00", "");
1305
1306 }
1307
1308 @Test
1309 public void t_eform()
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321 {
1322 ReferenceEllipsoid ef;
1323
1324 try {
1325 ef = jauEform( 0 );
1326 fail("jauEform should throw exception for illegal identifier");
1327 } catch (JSOFAIllegalParameter e) {
1328 }
1329
1330
1331 try {
1332 ef = jauEform( 1 );
1333
1334 vvd(ef.a, 6378137.0, 1e-10, "jauEform", "a");
1335 vvd(ef.f, 0.0033528106647474807, 1e-18, "jauEform", "f");
1336
1337 ef = jauEform( 2 );
1338
1339 vvd(ef.a, 6378137.0, 1e-10, "jauEform", "a");
1340 vvd(ef.f, 0.0033528106811823189, 1e-18, "jauEform", "f");
1341
1342 ef = jauEform( 3 );
1343
1344 vvd(ef.a, 6378135.0, 1e-10, "jauEform", "a");
1345 vvd(ef.f, 0.0033527794541675049, 1e-18, "jauEform", "f");
1346 } catch (JSOFAIllegalParameter e) {
1347 fail("jauEform should not throw exception for legal identifier");
1348 }
1349
1350 try {
1351 ef = jauEform( 4 );
1352 fail("jauEform should throw exception for illegal identifier");
1353 } catch (JSOFAIllegalParameter e) {
1354
1355 }
1356 }
1357
1358 @Test
1359 public void t_eo06a()
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371 {
1372 double eo;
1373
1374
1375 eo = jauEo06a(2400000.5, 53736.0);
1376
1377 vvd(eo, -0.1332882371941833644e-2, 1e-15, "jauEo06a", "");
1378
1379 }
1380
1381 @Test
1382 public void t_eors()
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394 {
1395 double rnpb[][] = new double[3][3], s, eo;
1396
1397
1398 rnpb[0][0] = 0.9999989440476103608;
1399 rnpb[0][1] = -0.1332881761240011518e-2;
1400 rnpb[0][2] = -0.5790767434730085097e-3;
1401
1402 rnpb[1][0] = 0.1332858254308954453e-2;
1403 rnpb[1][1] = 0.9999991109044505944;
1404 rnpb[1][2] = -0.4097782710401555759e-4;
1405
1406 rnpb[2][0] = 0.5791308472168153320e-3;
1407 rnpb[2][1] = 0.4020595661593994396e-4;
1408 rnpb[2][2] = 0.9999998314954572365;
1409
1410 s = -0.1220040848472271978e-7;
1411
1412 eo = jauEors(rnpb, s);
1413
1414 vvd(eo, -0.1332882715130744606e-2, 1e-14, "jauEors", "");
1415
1416 }
1417
1418 @Test
1419 public void t_epb()
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431 {
1432 double epb;
1433
1434
1435 epb = jauEpb(2415019.8135, 30103.18648);
1436
1437 vvd(epb, 1982.418424159278580, 1e-12, "jauEpb", "");
1438
1439 }
1440
1441 @Test
1442 public void t_epb2jd()
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454 {
1455 double epb;
1456
1457
1458 epb = 1957.3;
1459
1460 JulianDate jd = jauEpb2jd(epb);
1461
1462 vvd(jd.djm0, 2400000.5, 1e-9, "jauEpb2jd", "djm0");
1463 vvd(jd.djm1, 35948.1915101513, 1e-9, "jauEpb2jd", "mjd");
1464
1465 }
1466
1467 @Test
1468 public void t_epj()
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480 {
1481 double epj;
1482
1483
1484 epj = jauEpj(2451545, -7392.5);
1485
1486 vvd(epj, 1979.760438056125941, 1e-12, "jauEpj", "");
1487
1488 }
1489
1490 @Test
1491 public void t_epj2jd()
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503 {
1504 double epj;
1505
1506
1507 epj = 1996.8;
1508
1509 JulianDate jd = jauEpj2jd(epj);
1510
1511 vvd(jd.djm0, 2400000.5, 1e-9, "jauEpj2jd", "djm0");
1512 vvd(jd.djm1, 50375.7, 1e-9, "jauEpj2jd", "mjd");
1513
1514 }
1515
1516 @Test
1517 public void t_epv00()
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529 {
1530 double pvh[][] = new double[2][3], pvb[][] = new double[2][3];
1531
1532
1533
1534 int j = jauEpv00(2400000.5, 53411.52501161, pvh, pvb);
1535
1536 vvd(pvh[0][0], -0.7757238809297706813, 1e-14,
1537 "jauEpv00", "ph(x)");
1538 vvd(pvh[0][1], 0.5598052241363340596, 1e-14,
1539 "jauEpv00", "ph(y)");
1540 vvd(pvh[0][2], 0.2426998466481686993, 1e-14,
1541 "jauEpv00", "ph(z)");
1542
1543 vvd(pvh[1][0], -0.1091891824147313846e-1, 1e-15,
1544 "jauEpv00", "vh(x)");
1545 vvd(pvh[1][1], -0.1247187268440845008e-1, 1e-15,
1546 "jauEpv00", "vh(y)");
1547 vvd(pvh[1][2], -0.5407569418065039061e-2, 1e-15,
1548 "jauEpv00", "vh(z)");
1549
1550 vvd(pvb[0][0], -0.7714104440491111971, 1e-14,
1551 "jauEpv00", "pb(x)");
1552 vvd(pvb[0][1], 0.5598412061824171323, 1e-14,
1553 "jauEpv00", "pb(y)");
1554 vvd(pvb[0][2], 0.2425996277722452400, 1e-14,
1555 "jauEpv00", "pb(z)");
1556
1557 vvd(pvb[1][0], -0.1091874268116823295e-1, 1e-15,
1558 "jauEpv00", "vb(x)");
1559 vvd(pvb[1][1], -0.1246525461732861538e-1, 1e-15,
1560 "jauEpv00", "vb(y)");
1561 vvd(pvb[1][2], -0.5404773180966231279e-2, 1e-15,
1562 "jauEpv00", "vb(z)");
1563
1564 viv(j, 0, "jauEpv00", "j");
1565
1566 }
1567
1568 @Test
1569 public void t_eqeq94()
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581 {
1582 double eqeq;
1583
1584
1585 eqeq = jauEqeq94(2400000.5, 41234.0);
1586
1587 vvd(eqeq, 0.5357758254609256894e-4, 1e-17, "jauEqeq94", "");
1588
1589 }
1590
1591 @Test
1592 public void t_era00()
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604 {
1605 double era00;
1606
1607
1608 era00 = jauEra00(2400000.5, 54388.0);
1609
1610 vvd(era00, 0.4022837240028158102, 1e-12, "jauEra00", "");
1611
1612 }
1613
1614 @Test
1615 public void t_fad03()
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627 {
1628 vvd(jauFad03(0.80), 1.946709205396925672, 1e-12,
1629 "jauFad03", "");
1630 }
1631
1632 @Test
1633 public void t_fae03()
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645 {
1646 vvd(jauFae03(0.80), 1.744713738913081846, 1e-12,
1647 "jauFae03", "");
1648 }
1649
1650 @Test
1651 public void t_faf03()
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663 {
1664 vvd(jauFaf03(0.80), 0.2597711366745499518, 1e-12,
1665 "jauFaf03", "");
1666 }
1667
1668 @Test
1669 public void t_faju03()
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681 {
1682 vvd(jauFaju03(0.80), 5.275711665202481138, 1e-12,
1683 "jauFaju03", "");
1684 }
1685
1686 @Test
1687 public void t_fal03()
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699 {
1700 vvd(jauFal03(0.80), 5.132369751108684150, 1e-12,
1701 "jauFal03", "");
1702 }
1703
1704 @Test
1705 public void t_falp03()
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717 {
1718 vvd(jauFalp03(0.80), 6.226797973505507345, 1e-12,
1719 "jauFalp03", "");
1720 }
1721
1722 @Test
1723 public void t_fama03()
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735 {
1736 vvd(jauFama03(0.80), 3.275506840277781492, 1e-12,
1737 "jauFama03", "");
1738 }
1739
1740 @Test
1741 public void t_fame03()
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753 {
1754 vvd(jauFame03(0.80), 5.417338184297289661, 1e-12,
1755 "jauFame03", "");
1756 }
1757
1758 @Test
1759 public void t_fane03()
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771 {
1772 vvd(jauFane03(0.80), 2.079343830860413523, 1e-12,
1773 "jauFane03", "");
1774 }
1775
1776 @Test
1777 public void t_faom03()
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789 {
1790 vvd(jauFaom03(0.80), -5.973618440951302183, 1e-12,
1791 "jauFaom03", "");
1792 }
1793
1794 @Test
1795 public void t_fapa03()
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807 {
1808 vvd(jauFapa03(0.80), 0.1950884762240000000e-1, 1e-12,
1809 "jauFapa03", "");
1810 }
1811
1812 @Test
1813 public void t_fasa03()
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825 {
1826 vvd(jauFasa03(0.80), 5.371574539440827046, 1e-12,
1827 "jauFasa03", "");
1828 }
1829
1830 @Test
1831 public void t_faur03()
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843 {
1844 vvd(jauFaur03(0.80), 5.180636450180413523, 1e-12,
1845 "jauFaur03", "");
1846 }
1847
1848 @Test
1849 public void t_fave03()
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861 {
1862 vvd(jauFave03(0.80), 3.424900460533758000, 1e-12,
1863 "jauFave03", "");
1864 }
1865
1866 @Test
1867 public void t_fk52h()
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879 {
1880 double r5, d5, dr5, dd5, px5, rv5;
1881
1882
1883 r5 = 1.76779433;
1884 d5 = -0.2917517103;
1885 dr5 = -1.91851572e-7;
1886 dd5 = -5.8468475e-6;
1887 px5 = 0.379210;
1888 rv5 = -7.6;
1889
1890 CatalogCoords cat = jauFk52h(r5, d5, dr5, dd5, px5, rv5);
1891
1892 vvd(cat.pos.alpha, 1.767794226299947632, 1e-14,"jauFk52h", "ra");
1893 vvd(cat.pos.delta, -0.2917516070530391757, 1e-14,"jauFk52h", "dec");
1894 vvd(cat.pm.alpha, -0.1961874125605721270e-6,1e-19,"jauFk52h", "dr5");
1895 vvd(cat.pm.delta, -0.58459905176693911e-5, 1e-19,"jauFk52h", "dd5");
1896 vvd(cat.px, 0.37921, 1e-14,"jauFk52h", "px");
1897 vvd(cat.rv, -7.6000000940000254, 1e-11,"jauFk52h", "rv");
1898
1899 }
1900
1901 @Test
1902 public void t_fk5hip()
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914 {
1915 double r5h[][] = new double[3][3], s5h[] = new double[3];
1916
1917
1918 jauFk5hip(r5h, s5h);
1919
1920 vvd(r5h[0][0], 0.9999999999999928638, 1e-14,"jauFk5hip", "11");
1921 vvd(r5h[0][1], 0.1110223351022919694e-6, 1e-17,"jauFk5hip", "12");
1922 vvd(r5h[0][2], 0.4411803962536558154e-7, 1e-17,"jauFk5hip", "13");
1923 vvd(r5h[1][0], -0.1110223308458746430e-6, 1e-17,"jauFk5hip", "21");
1924 vvd(r5h[1][1], 0.9999999999999891830, 1e-14,"jauFk5hip", "22");
1925 vvd(r5h[1][2], -0.9647792498984142358e-7, 1e-17,"jauFk5hip", "23");
1926 vvd(r5h[2][0], -0.4411805033656962252e-7, 1e-17,"jauFk5hip", "31");
1927 vvd(r5h[2][1], 0.9647792009175314354e-7, 1e-17,"jauFk5hip", "32");
1928 vvd(r5h[2][2], 0.9999999999999943728, 1e-14,"jauFk5hip", "33");
1929 vvd(s5h[0], -0.1454441043328607981e-8, 1e-17,"jauFk5hip", "s1");
1930 vvd(s5h[1], 0.2908882086657215962e-8, 1e-17,"jauFk5hip", "s2");
1931 vvd(s5h[2], 0.3393695767766751955e-8, 1e-17,"jauFk5hip", "s3");
1932
1933 }
1934
1935 @Test
1936 public void t_fk5hz()
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948 {
1949 double r5, d5;
1950
1951
1952 r5 = 1.76779433;
1953 d5 = -0.2917517103;
1954
1955 SphericalCoordinate pos = jauFk5hz(r5, d5, 2400000.5, 54479.0);
1956
1957 vvd(pos.alpha, 1.767794191464423978, 1e-12, "jauFk5hz", "ra");
1958 vvd(pos.delta, -0.2917516001679884419, 1e-12, "jauFk5hz", "dec");
1959
1960 }
1961
1962 @Test
1963 public void t_fw2m()
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975 {
1976 double gamb, phib, psi, eps, r[][] = new double[3][3];
1977
1978
1979 gamb = -0.2243387670997992368e-5;
1980 phib = 0.4091014602391312982;
1981 psi = -0.9501954178013015092e-3;
1982 eps = 0.4091014316587367472;
1983
1984 r = jauFw2m(gamb, phib, psi, eps);
1985
1986 vvd(r[0][0], 0.9999995505176007047, 1e-12,"jauFw2m", "11");
1987 vvd(r[0][1], 0.8695404617348192957e-3, 1e-12,"jauFw2m", "12");
1988 vvd(r[0][2], 0.3779735201865582571e-3, 1e-12,"jauFw2m", "13");
1989
1990 vvd(r[1][0], -0.8695404723772016038e-3, 1e-12,"jauFw2m", "21");
1991 vvd(r[1][1], 0.9999996219496027161, 1e-12,"jauFw2m", "22");
1992 vvd(r[1][2], -0.1361752496887100026e-6, 1e-12,"jauFw2m", "23");
1993
1994 vvd(r[2][0], -0.3779734957034082790e-3, 1e-12,"jauFw2m", "31");
1995 vvd(r[2][1], -0.1924880848087615651e-6, 1e-12,"jauFw2m", "32");
1996 vvd(r[2][2], 0.9999999285679971958, 1e-12,"jauFw2m", "33");
1997
1998 }
1999
2000 @Test
2001 public void t_fw2xy()
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013 {
2014 double gamb, phib, psi, eps;
2015
2016
2017 gamb = -0.2243387670997992368e-5;
2018 phib = 0.4091014602391312982;
2019 psi = -0.9501954178013015092e-3;
2020 eps = 0.4091014316587367472;
2021
2022 CelestialIntermediatePole cip = jauFw2xy(gamb, phib, psi, eps);
2023
2024 vvd(cip.x, -0.3779734957034082790e-3, 1e-14, "jauFw2xy", "x");
2025 vvd(cip.y, -0.1924880848087615651e-6, 1e-14, "jauFw2xy", "y");
2026
2027 }
2028
2029 @Test
2030 public void t_gc2gd()
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042 {
2043 double xyz[] = {2e6, 3e6, 5.244e6};
2044 GeodeticCoord geo;
2045 try {
2046 geo = jauGc2gd( 0, xyz);
2047 fail("jauGc2gd should thow exception for illegal parameter");
2048 } catch (JSOFAIllegalParameter e1) {
2049
2050 }
2051 try {
2052 geo = jauGc2gd( 1, xyz );
2053
2054 vvd(geo.elong, 0.98279372324732907, 1e-14, "jauGc2gd", "e1");
2055 vvd(geo.phi, 0.97160184819075459, 1e-14, "jauGc2gd", "p1");
2056 vvd(geo.height, 331.41724614260599, 1e-8, "jauGc2gd", "h1");
2057
2058 geo = jauGc2gd( 2, xyz );
2059 vvd(geo.elong, 0.98279372324732907, 1e-14, "jauGc2gd", "e2");
2060 vvd(geo.phi, 0.97160184820607853, 1e-14, "jauGc2gd", "p2");
2061 vvd(geo.height, 331.41731754844348, 1e-8, "jauGc2gd", "h2");
2062
2063 geo = jauGc2gd( 3, xyz );
2064 vvd(geo.elong, 0.98279372324732907, 1e-14, "jauGc2gd", "e3");
2065 vvd(geo.phi, 0.97160181811015119, 1e-14, "jauGc2gd", "p3");
2066 vvd(geo.height, 333.27707261303181, 1e-8, "jauGc2gd", "h3");
2067
2068 } catch (JSOFAIllegalParameter e1) {
2069 fail("jauGc2gd should not thow exception for legal parameter");
2070 }
2071
2072 try {
2073 geo = jauGc2gd( 4, xyz );
2074 fail("jauGc2gd should thow exception for illegal parameter");
2075 } catch (JSOFAIllegalParameter e1) {
2076 }
2077
2078 }
2079
2080 @Test
2081 public void t_gc2gde()
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093 {
2094 double a = 6378136.0, f = 0.0033528;
2095 double xyz[] = {2e6, 3e6, 5.244e6};
2096
2097 try {
2098 GeodeticCoord geo = jauGc2gde( a, f, xyz);
2099
2100 vvd(geo.elong, 0.98279372324732907, 1e-14, "jauGc2gde", "e");
2101 vvd(geo.phi, 0.97160183775704115, 1e-14, "jauGc2gde", "p");
2102 vvd(geo.height, 332.36862495764397, 1e-8, "jauGc2gde", "h");
2103 } catch (JSOFAIllegalParameter e1) {
2104 fail("jauGc2gde should not thow exception for legal parameter");
2105
2106 }
2107 }
2108
2109 @Test
2110 public void t_gd2gc()
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122 {
2123 double e = 3.1, p = -0.5, h = 2500.0;
2124 double xyz[] = new double[3];
2125
2126 try {
2127 xyz = jauGd2gc( 0, e, p, h );
2128
2129 fail("jauGd2gc should thow exception for illegal parameter");
2130 } catch (JSOFAIllegalParameter e1) {
2131
2132
2133 } catch (JSOFAInternalError e1) {
2134 fail("jauGd2gc should thow exception for illegal parameter");
2135 }
2136
2137 try {
2138 xyz = jauGd2gc( 1, e, p, h );
2139
2140
2141 vvd(xyz[0], -5599000.5577049947, 1e-7, "jauGd2gc", "0/1");
2142 vvd(xyz[1], 233011.67223479203, 1e-7, "jauGd2gc", "1/1");
2143 vvd(xyz[2], -3040909.4706983363, 1e-7, "jauGd2gc", "2/1");
2144
2145 xyz = jauGd2gc( 2, e, p, h);
2146
2147 vvd(xyz[0], -5599000.5577260984, 1e-7, "jauGd2gc", "0/2");
2148 vvd(xyz[1], 233011.6722356703, 1e-7, "jauGd2gc", "1/2");
2149 vvd(xyz[2], -3040909.4706095476, 1e-7, "jauGd2gc", "2/2");
2150
2151 xyz = jauGd2gc( 3, e, p, h);
2152 vvd(xyz[0], -5598998.7626301490, 1e-7, "jauGd2gc", "0/3");
2153 vvd(xyz[1], 233011.5975297822, 1e-7, "jauGd2gc", "1/3");
2154 vvd(xyz[2], -3040908.6861467111, 1e-7, "jauGd2gc", "2/3");
2155
2156 } catch (JSOFAException e1) {
2157 fail("jauGd2gc should not thow exception ");
2158 }
2159
2160 try {
2161 xyz = jauGd2gc( 4, e, p, h );
2162 fail("jauGd2gc should thow exception for illegal parameter");
2163 } catch (JSOFAIllegalParameter e1) {
2164
2165 } catch (JSOFAInternalError e1) {
2166 fail("jauGd2gc should thow exception for illegal parameter");
2167 }
2168 }
2169
2170 @Test
2171 public void t_gd2gce() throws JSOFAInternalError
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183 {
2184 double a = 6378136.0, f = 0.0033528;
2185 double e = 3.1, p = -0.5, h = 2500.0;
2186 double xyz[] = new double[3];
2187
2188 xyz = jauGd2gce( a, f, e, p, h );
2189
2190 vvd(xyz[0], -5598999.6665116328, 1e-7, "jauGd2gce", "0");
2191 vvd(xyz[1], 233011.63514630572, 1e-7, "jauGd2gce", "1");
2192 vvd(xyz[2], -3040909.0517314132, 1e-7, "jauGd2gce", "2");
2193 }
2194
2195 @Test
2196 public void t_gmst00()
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208 {
2209 double theta;
2210
2211
2212 theta = jauGmst00(2400000.5, 53736.0, 2400000.5, 53736.0);
2213
2214 vvd(theta, 1.754174972210740592, 1e-12, "jauGmst00", "");
2215
2216 }
2217
2218 @Test
2219 public void t_gmst06()
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231 {
2232 double theta;
2233
2234
2235 theta = jauGmst06(2400000.5, 53736.0, 2400000.5, 53736.0);
2236
2237 vvd(theta, 1.754174971870091203, 1e-12, "jauGmst06", "");
2238
2239 }
2240
2241 @Test
2242 public void t_gmst82()
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254 {
2255 double theta;
2256
2257
2258 theta = jauGmst82(2400000.5, 53736.0);
2259
2260 vvd(theta, 1.754174981860675096, 1e-12, "jauGmst82", "");
2261
2262 }
2263
2264 @Test
2265 public void t_gst00a()
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277 {
2278 double theta;
2279
2280
2281 theta = jauGst00a(2400000.5, 53736.0, 2400000.5, 53736.0);
2282
2283 vvd(theta, 1.754166138018281369, 1e-12, "jauGst00a", "");
2284
2285 }
2286
2287 @Test
2288 public void t_gst00b()
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300 {
2301 double theta;
2302
2303
2304 theta = jauGst00b(2400000.5, 53736.0);
2305
2306 vvd(theta, 1.754166136510680589, 1e-12, "jauGst00b", "");
2307
2308 }
2309
2310 @Test
2311 public void t_gst06()
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323 {
2324 double rnpb[][] = new double[3][3], theta;
2325
2326
2327 rnpb[0][0] = 0.9999989440476103608;
2328 rnpb[0][1] = -0.1332881761240011518e-2;
2329 rnpb[0][2] = -0.5790767434730085097e-3;
2330
2331 rnpb[1][0] = 0.1332858254308954453e-2;
2332 rnpb[1][1] = 0.9999991109044505944;
2333 rnpb[1][2] = -0.4097782710401555759e-4;
2334
2335 rnpb[2][0] = 0.5791308472168153320e-3;
2336 rnpb[2][1] = 0.4020595661593994396e-4;
2337 rnpb[2][2] = 0.9999998314954572365;
2338
2339 theta = jauGst06(2400000.5, 53736.0, 2400000.5, 53736.0, rnpb);
2340
2341 vvd(theta, 1.754166138018167568, 1e-12, "jauGst06", "");
2342
2343 }
2344
2345 @Test
2346 public void t_gst06a()
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358 {
2359 double theta;
2360
2361
2362 theta = jauGst06a(2400000.5, 53736.0, 2400000.5, 53736.0);
2363
2364 vvd(theta, 1.754166137675019159, 1e-12, "jauGst06a", "");
2365
2366 }
2367
2368 @Test
2369 public void t_gst94()
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381 {
2382 double theta;
2383
2384
2385 theta = jauGst94(2400000.5, 53736.0);
2386
2387 vvd(theta, 1.754166136020645203, 1e-12, "jauGst94", "");
2388
2389 }
2390
2391 @Test
2392 public void t_h2fk5()
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404 {
2405 double rh, dh, drh, ddh, pxh, rvh;
2406
2407
2408 rh = 1.767794352;
2409 dh = -0.2917512594;
2410 drh = -2.76413026e-6;
2411 ddh = -5.92994449e-6;
2412 pxh = 0.379210;
2413 rvh = -7.6;
2414
2415 CatalogCoords cat = jauH2fk5(rh, dh, drh, ddh, pxh, rvh);
2416
2417 vvd(cat.pos.alpha, 1.767794455700065506, 1e-13,"jauH2fk5", "ra");
2418 vvd(cat.pos.delta, -0.2917513626469638890, 1e-13,"jauH2fk5", "dec");
2419 vvd(cat.pm.alpha, -0.27597945024511204e-5, 1e-18,"jauH2fk5", "dr5");
2420 vvd(cat.pm.delta, -0.59308014093262838e-5, 1e-18,"jauH2fk5", "dd5");
2421 vvd(cat.px, 0.37921, 1e-13,"jauH2fk5", "px");
2422 vvd(cat.rv, -7.6000001309071126, 2e-11,"jauH2fk5", "rv");
2423
2424 }
2425
2426 @Test
2427 public void t_hfk5z()
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439 {
2440 double rh, dh;
2441
2442
2443
2444 rh = 1.767794352;
2445 dh = -0.2917512594;
2446
2447 CatalogCoords cat = jauHfk5z(rh, dh, 2400000.5, 54479.0);
2448
2449 vvd(cat.pos.alpha, 1.767794490535581026, 1e-13,"jauHfk5z", "ra");
2450 vvd(cat.pos.delta, -0.2917513695320114258, 1e-14,"jauHfk5z", "dec");
2451 vvd(cat.pm.alpha, 0.4335890983539243029e-8, 1e-22,"jauHfk5z", "dr5");
2452 vvd(cat.pm.delta, -0.8569648841237745902e-9, 1e-23,"jauHfk5z", "dd5");
2453
2454 }
2455
2456 @Test
2457 public void t_ir()
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469 {
2470 double r[][] = new double[3][3];
2471
2472
2473 r[0][0] = 2.0;
2474 r[0][1] = 3.0;
2475 r[0][2] = 2.0;
2476
2477 r[1][0] = 3.0;
2478 r[1][1] = 2.0;
2479 r[1][2] = 3.0;
2480
2481 r[2][0] = 3.0;
2482 r[2][1] = 4.0;
2483 r[2][2] = 5.0;
2484
2485 jauIr(r);
2486
2487 vvd(r[0][0], 1.0, 0.0, "jauIr", "11");
2488 vvd(r[0][1], 0.0, 0.0, "jauIr", "12");
2489 vvd(r[0][2], 0.0, 0.0, "jauIr", "13");
2490
2491 vvd(r[1][0], 0.0, 0.0, "jauIr", "21");
2492 vvd(r[1][1], 1.0, 0.0, "jauIr", "22");
2493 vvd(r[1][2], 0.0, 0.0, "jauIr", "23");
2494
2495 vvd(r[2][0], 0.0, 0.0, "jauIr", "31");
2496 vvd(r[2][1], 0.0, 0.0, "jauIr", "32");
2497 vvd(r[2][2], 1.0, 0.0, "jauIr", "33");
2498
2499 }
2500
2501 @Test
2502 public void t_jd2cal() throws JSOFAIllegalParameter
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514 {
2515 double dj1, dj2;
2516
2517
2518 dj1 = 2400000.5;
2519 dj2 = 50123.9999;
2520
2521 Calendar cal = jauJd2cal(dj1, dj2);
2522
2523 viv(cal.iy, 1996, "jauJd2cal", "y");
2524 viv(cal.im, 2, "jauJd2cal", "m");
2525 viv(cal.id, 10, "jauJd2cal", "d");
2526 vvd(cal.fd, 0.9999, 1e-7, "jauJd2cal", "fd");
2527
2528
2529 }
2530
2531 @Test
2532 public void t_jdcalf()
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544 {
2545 double dj1, dj2;
2546 int iydmf[] = new int[4], j;
2547
2548
2549 dj1 = 2400000.5;
2550 dj2 = 50123.9999;
2551
2552 j = jauJdcalf(4, dj1, dj2, iydmf);
2553
2554 viv(iydmf[0], 1996, "jauJdcalf", "y");
2555 viv(iydmf[1], 2, "jauJdcalf", "m");
2556 viv(iydmf[2], 10, "jauJdcalf", "d");
2557 viv(iydmf[3], 9999, "jauJdcalf", "f");
2558
2559 viv(j, 0, "jauJdcalf", "j");
2560
2561 }
2562
2563 @Test
2564 public void t_num00a()
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576 {
2577 double rmatn[][] = new double[3][3];
2578
2579
2580 rmatn = jauNum00a(2400000.5, 53736.0);
2581
2582 vvd(rmatn[0][0], 0.9999999999536227949, 1e-12,"jauNum00a", "11");
2583 vvd(rmatn[0][1], 0.8836238544090873336e-5, 1e-12,"jauNum00a", "12");
2584 vvd(rmatn[0][2], 0.3830835237722400669e-5, 1e-12,"jauNum00a", "13");
2585
2586 vvd(rmatn[1][0], -0.8836082880798569274e-5, 1e-12,"jauNum00a", "21");
2587 vvd(rmatn[1][1], 0.9999999991354655028, 1e-12,"jauNum00a", "22");
2588 vvd(rmatn[1][2], -0.4063240865362499850e-4, 1e-12,"jauNum00a", "23");
2589
2590 vvd(rmatn[2][0], -0.3831194272065995866e-5, 1e-12,"jauNum00a", "31");
2591 vvd(rmatn[2][1], 0.4063237480216291775e-4, 1e-12,"jauNum00a", "32");
2592 vvd(rmatn[2][2], 0.9999999991671660338, 1e-12,"jauNum00a", "33");
2593
2594 }
2595
2596 @Test
2597 public void t_num00b()
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609 {
2610 double rmatn[][] = new double[3][3];
2611
2612 rmatn = jauNum00b(2400000.5, 53736);
2613
2614 vvd(rmatn[0][0], 0.9999999999536069682, 1e-12,"jauNum00b", "11");
2615 vvd(rmatn[0][1], 0.8837746144871248011e-5, 1e-12,"jauNum00b", "12");
2616 vvd(rmatn[0][2], 0.3831488838252202945e-5, 1e-12,"jauNum00b", "13");
2617
2618 vvd(rmatn[1][0], -0.8837590456632304720e-5, 1e-12,"jauNum00b", "21");
2619 vvd(rmatn[1][1], 0.9999999991354692733, 1e-12,"jauNum00b", "22");
2620 vvd(rmatn[1][2], -0.4063198798559591654e-4, 1e-12,"jauNum00b", "23");
2621
2622 vvd(rmatn[2][0], -0.3831847930134941271e-5, 1e-12,"jauNum00b", "31");
2623 vvd(rmatn[2][1], 0.4063195412258168380e-4, 1e-12,"jauNum00b", "32");
2624 vvd(rmatn[2][2], 0.9999999991671806225, 1e-12,"jauNum00b", "33");
2625
2626 }
2627
2628 @Test
2629 public void t_num06a()
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641 {
2642 double rmatn[][] = new double[3][3];
2643
2644 rmatn = jauNum06a(2400000.5, 53736);
2645
2646 vvd(rmatn[0][0], 0.9999999999536227668, 1e-12,"jauNum06a", "11");
2647 vvd(rmatn[0][1], 0.8836241998111535233e-5, 1e-12,"jauNum06a", "12");
2648 vvd(rmatn[0][2], 0.3830834608415287707e-5, 1e-12,"jauNum06a", "13");
2649
2650 vvd(rmatn[1][0], -0.8836086334870740138e-5, 1e-12,"jauNum06a", "21");
2651 vvd(rmatn[1][1], 0.9999999991354657474, 1e-12,"jauNum06a", "22");
2652 vvd(rmatn[1][2], -0.4063240188248455065e-4, 1e-12,"jauNum06a", "23");
2653
2654 vvd(rmatn[2][0], -0.3831193642839398128e-5, 1e-12,"jauNum06a", "31");
2655 vvd(rmatn[2][1], 0.4063236803101479770e-4, 1e-12,"jauNum06a", "32");
2656 vvd(rmatn[2][2], 0.9999999991671663114, 1e-12,"jauNum06a", "33");
2657
2658 }
2659
2660 @Test
2661 public void t_numat()
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673 {
2674 double epsa, dpsi, deps, rmatn[][] = new double[3][3];
2675
2676
2677 epsa = 0.4090789763356509900;
2678 dpsi = -0.9630909107115582393e-5;
2679 deps = 0.4063239174001678826e-4;
2680
2681 rmatn = jauNumat(epsa, dpsi, deps);
2682
2683 vvd(rmatn[0][0], 0.9999999999536227949, 1e-12,"jauNumat", "11");
2684 vvd(rmatn[0][1], 0.8836239320236250577e-5, 1e-12,"jauNumat", "12");
2685 vvd(rmatn[0][2], 0.3830833447458251908e-5, 1e-12,"jauNumat", "13");
2686
2687 vvd(rmatn[1][0], -0.8836083657016688588e-5, 1e-12,"jauNumat", "21");
2688 vvd(rmatn[1][1], 0.9999999991354654959, 1e-12,"jauNumat", "22");
2689 vvd(rmatn[1][2], -0.4063240865361857698e-4, 1e-12,"jauNumat", "23");
2690
2691 vvd(rmatn[2][0], -0.3831192481833385226e-5, 1e-12,"jauNumat", "31");
2692 vvd(rmatn[2][1], 0.4063237480216934159e-4, 1e-12,"jauNumat", "32");
2693 vvd(rmatn[2][2], 0.9999999991671660407, 1e-12,"jauNumat", "33");
2694
2695 }
2696
2697 @Test
2698 public void t_nut00a()
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710 {
2711
2712
2713 NutationTerms nut = jauNut00a(2400000.5, 53736.0);
2714
2715 vvd(nut.dpsi, -0.9630909107115518431e-5, 1e-13,"jauNut00a", "dpsi");
2716 vvd(nut.deps, 0.4063239174001678710e-4, 1e-13,"jauNut00a", "deps");
2717
2718 }
2719
2720 @Test
2721 public void t_nut00b()
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733 {
2734
2735
2736 NutationTerms nut = jauNut00b(2400000.5, 53736.0);
2737
2738 vvd(nut.dpsi, -0.9632552291148362783e-5, 1e-13,"jauNut00b", "dpsi");
2739 vvd(nut.deps, 0.4063197106621159367e-4, 1e-13,"jauNut00b", "deps");
2740
2741 }
2742
2743 @Test
2744 public void t_nut06a()
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756 {
2757
2758 NutationTerms nut = jauNut06a(2400000.5, 53736.0);
2759
2760 vvd(nut.dpsi, -0.9630912025820308797e-5, 1e-13,"jauNut06a", "dpsi");
2761 vvd(nut.deps, 0.4063238496887249798e-4, 1e-13,"jauNut06a", "deps");
2762
2763 }
2764
2765 @Test
2766 public void t_nut80()
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778 {
2779
2780 NutationTerms nut = jauNut80(2400000.5, 53736.0);
2781
2782 vvd(nut.dpsi, -0.9643658353226563966e-5, 1e-13,"jauNut80", "dpsi");
2783 vvd(nut.deps, 0.4060051006879713322e-4, 1e-13,"jauNut80", "deps");
2784
2785 }
2786
2787 @Test
2788 public void t_nutm80()
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800 {
2801 double rmatn[][] = new double[3][3];
2802
2803
2804 rmatn = jauNutm80(2400000.5, 53736.0);
2805
2806 vvd(rmatn[0][0], 0.9999999999534999268, 1e-12,"jauNutm80", "11");
2807 vvd(rmatn[0][1], 0.8847935789636432161e-5, 1e-12,"jauNutm80", "12");
2808 vvd(rmatn[0][2], 0.3835906502164019142e-5, 1e-12,"jauNutm80", "13");
2809
2810 vvd(rmatn[1][0], -0.8847780042583435924e-5, 1e-12,"jauNutm80", "21");
2811 vvd(rmatn[1][1], 0.9999999991366569963, 1e-12,"jauNutm80", "22");
2812 vvd(rmatn[1][2], -0.4060052702727130809e-4, 1e-12,"jauNutm80", "23");
2813
2814 vvd(rmatn[2][0], -0.3836265729708478796e-5, 1e-12,"jauNutm80", "31");
2815 vvd(rmatn[2][1], 0.4060049308612638555e-4, 1e-12,"jauNutm80", "32");
2816 vvd(rmatn[2][2], 0.9999999991684415129, 1e-12,"jauNutm80", "33");
2817
2818 }
2819
2820 @Test
2821 public void t_obl06()
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833 {
2834 vvd(jauObl06(2400000.5, 54388.0), 0.4090749229387258204, 1e-14,
2835 "jauObl06", "");
2836 }
2837
2838 @Test
2839 public void t_obl80()
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851 {
2852 double eps0;
2853
2854
2855 eps0 = jauObl80(2400000.5, 54388.0);
2856
2857 vvd(eps0, 0.4090751347643816218, 1e-14, "jauObl80", "");
2858
2859 }
2860
2861 @Test
2862 public void t_p06e()
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874 {
2875
2876
2877 PrecessionAngles pa = jauP06e(2400000.5, 52541.0);
2878
2879 vvd(pa.eps0, 0.4090926006005828715, 1e-14,"jauP06e", "eps0");
2880 vvd(pa.psia, 0.6664369630191613431e-3, 1e-14,"jauP06e", "psia");
2881 vvd(pa.oma , 0.4090925973783255982, 1e-14,"jauP06e", "oma");
2882 vvd(pa.bpa, 0.5561149371265209445e-6, 1e-14,"jauP06e", "bpa");
2883 vvd(pa.bqa, -0.6191517193290621270e-5, 1e-14,"jauP06e", "bqa");
2884 vvd(pa.pia, 0.6216441751884382923e-5, 1e-14,"jauP06e", "pia");
2885 vvd(pa.bpia, 3.052014180023779882, 1e-14,"jauP06e", "bpia");
2886 vvd(pa.epsa, 0.4090864054922431688, 1e-14,"jauP06e", "epsa");
2887 vvd(pa.chia, 0.1387703379530915364e-5, 1e-14,"jauP06e", "chia");
2888 vvd(pa.za, 0.2921789846651790546e-3, 1e-14,"jauP06e", "za");
2889 vvd(pa.zetaa, 0.3178773290332009310e-3, 1e-14,"jauP06e", "zetaa");
2890 vvd(pa.thetaa, 0.2650932701657497181e-3, 1e-14,"jauP06e", "thetaa");
2891 vvd(pa.pa, 0.6651637681381016288e-3, 1e-14,"jauP06e", "pa");
2892 vvd(pa.gam, 0.1398077115963754987e-5, 1e-14,"jauP06e", "gam");
2893 vvd(pa.phi, 0.4090864090837462602, 1e-14,"jauP06e", "phi");
2894 vvd(pa.psi, 0.6664464807480920325e-3, 1e-14,"jauP06e", "psi");
2895
2896 }
2897
2898 @Test
2899 public void t_p2pv()
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911 {
2912 double p[] = new double[3], pv[][]=new double[2][3];
2913
2914
2915 p[0] = 0.25;
2916 p[1] = 1.2;
2917 p[2] = 3.0;
2918
2919 pv[0][0] = 0.3;
2920 pv[0][1] = 1.2;
2921 pv[0][2] = -2.5;
2922
2923 pv[1][0] = -0.5;
2924 pv[1][1] = 3.1;
2925 pv[1][2] = 0.9;
2926
2927 pv = jauP2pv(p);
2928
2929 vvd(pv[0][0], 0.25, 0.0, "jauP2pv", "p1");
2930 vvd(pv[0][1], 1.2, 0.0, "jauP2pv", "p2");
2931 vvd(pv[0][2], 3.0, 0.0, "jauP2pv", "p3");
2932
2933 vvd(pv[1][0], 0.0, 0.0, "jauP2pv", "v1");
2934 vvd(pv[1][1], 0.0, 0.0, "jauP2pv", "v2");
2935 vvd(pv[1][2], 0.0, 0.0, "jauP2pv", "v3");
2936
2937 }
2938
2939 @Test
2940 public void t_p2s()
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952 {
2953 double p[] = new double[3];
2954
2955
2956 p[0] = 100.0;
2957 p[1] = -50.0;
2958 p[2] = 25.0;
2959
2960 SphericalPosition co = jauP2s(p);
2961
2962 vvd(co.theta, -0.4636476090008061162, 1e-12, "jauP2s", "theta");
2963 vvd(co.phi, 0.2199879773954594463, 1e-12, "jauP2s", "phi");
2964 vvd(co.r, 114.5643923738960002, 1e-9, "jauP2s", "r");
2965
2966 }
2967
2968 @Test
2969 public void t_pap()
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981 {
2982 double a[] = new double[3], b[] = new double[3], theta;
2983
2984
2985 a[0] = 1.0;
2986 a[1] = 0.1;
2987 a[2] = 0.2;
2988
2989 b[0] = -3.0;
2990 b[1] = 1e-3;
2991 b[2] = 0.2;
2992
2993 theta = jauPap(a, b);
2994
2995 vvd(theta, 0.3671514267841113674, 1e-12, "jauPap", "");
2996
2997 }
2998
2999 @Test
3000 public void t_pas()
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012 {
3013 double al, ap, bl, bp, theta;
3014
3015
3016 al = 1.0;
3017 ap = 0.1;
3018 bl = 0.2;
3019 bp = -1.0;
3020
3021 theta = jauPas(al, ap, bl, bp);
3022
3023 vvd(theta, -2.724544922932270424, 1e-12, "jauPas", "");
3024
3025 }
3026
3027 @Test
3028 public void t_pb06()
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040 {
3041
3042 EulerAngles an = jauPb06(2400000.5, 50123.9999);
3043
3044 vvd(an.zeta, -0.5092634016326478238e-3, 1e-12,"jauPb06", "bzeta");
3045 vvd(an.z, -0.3602772060566044413e-3, 1e-12,"jauPb06", "bz");
3046 vvd(an.theta, -0.3779735537167811177e-3, 1e-12,"jauPb06", "btheta");
3047
3048 }
3049
3050 @Test
3051 public void t_pdp()
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063 {
3064 double a[] = new double[3], b[] = new double[3], adb;
3065
3066
3067 a[0] = 2.0;
3068 a[1] = 2.0;
3069 a[2] = 3.0;
3070
3071 b[0] = 1.0;
3072 b[1] = 3.0;
3073 b[2] = 4.0;
3074
3075 adb = jauPdp(a, b);
3076
3077 vvd(adb, 20, 1e-12, "jauPdp", "");
3078
3079 }
3080
3081 @Test
3082 public void t_pfw06()
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094 {
3095
3096
3097 FWPrecessionAngles fw = jauPfw06(2400000.5, 50123.9999);
3098
3099 vvd(fw.gamb, -0.2243387670997995690e-5, 1e-16,"jauPfw06", "gamb");
3100 vvd(fw.phib, 0.4091014602391312808, 1e-12,"jauPfw06", "phib");
3101 vvd(fw.psib, -0.9501954178013031895e-3, 1e-14,"jauPfw06", "psib");
3102 vvd(fw.epsa, 0.4091014316587367491, 1e-12,"jauPfw06", "epsa");
3103
3104 }
3105
3106 @Test
3107 public void t_plan94()
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119 {
3120 double pv[][];
3121
3122
3123
3124 try {
3125 pv = jauPlan94(2400000.5, 1e6, 0);
3126 fail("did not throw all the illegal argument for bad planet number");
3127 } catch (JSOFAIllegalParameter e) {
3128
3129 }
3130
3131 try {
3132 pv = jauPlan94(2400000.5, 1e6, 10);
3133 fail("did not throw all the illegal argument for bad planet number");
3134 } catch (JSOFAIllegalParameter e) {
3135
3136 }
3137
3138 try {
3139 pv = jauPlan94(2400000.5, -320000, 3);
3140
3141 vvd(pv[0][0], 0.9308038666832975759, 1e-11,"jauPlan94", "x 3");
3142 vvd(pv[0][1], 0.3258319040261346000, 1e-11,"jauPlan94", "y 3");
3143 vvd(pv[0][2], 0.1422794544481140560, 1e-11,"jauPlan94", "z 3");
3144
3145 vvd(pv[1][0], -0.6429458958255170006e-2, 1e-11,"jauPlan94", "xd 3");
3146 vvd(pv[1][1], 0.1468570657704237764e-1, 1e-11,"jauPlan94", "yd 3");
3147 vvd(pv[1][2], 0.6406996426270981189e-2, 1e-11,"jauPlan94", "zd 3");
3148
3149
3150 pv = jauPlan94(2400000.5, 43999.9, 1);
3151
3152 vvd(pv[0][0], 0.2945293959257430832, 1e-11,"jauPlan94", "x 4");
3153 vvd(pv[0][1], -0.2452204176601049596, 1e-11,"jauPlan94", "y 4");
3154 vvd(pv[0][2], -0.1615427700571978153, 1e-11,"jauPlan94", "z 4");
3155
3156 vvd(pv[1][0], 0.1413867871404614441e-1, 1e-11,"jauPlan94", "xd 4");
3157 vvd(pv[1][1], 0.1946548301104706582e-1, 1e-11,"jauPlan94", "yd 4");
3158 vvd(pv[1][2], 0.8929809783898904786e-2, 1e-11,"jauPlan94", "zd 4");
3159 } catch (JSOFAIllegalParameter e) {
3160 fail("legal call threw exception");
3161 }
3162
3163
3164 }
3165
3166 @Test
3167 public void t_pmat00()
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179 {
3180 double rbp[][] = new double[3][3];
3181
3182
3183 rbp = jauPmat00(2400000.5, 50123.9999);
3184
3185 vvd(rbp[0][0], 0.9999995505175087260, 1e-12,"jauPmat00", "11");
3186 vvd(rbp[0][1], 0.8695405883617884705e-3, 1e-14,"jauPmat00", "12");
3187 vvd(rbp[0][2], 0.3779734722239007105e-3, 1e-14,"jauPmat00", "13");
3188
3189 vvd(rbp[1][0], -0.8695405990410863719e-3, 1e-14,"jauPmat00", "21");
3190 vvd(rbp[1][1], 0.9999996219494925900, 1e-12,"jauPmat00", "22");
3191 vvd(rbp[1][2], -0.1360775820404982209e-6, 1e-14,"jauPmat00", "23");
3192
3193 vvd(rbp[2][0], -0.3779734476558184991e-3, 1e-14,"jauPmat00", "31");
3194 vvd(rbp[2][1], -0.1925857585832024058e-6, 1e-14,"jauPmat00", "32");
3195 vvd(rbp[2][2], 0.9999999285680153377, 1e-12,"jauPmat00", "33");
3196
3197 }
3198
3199 @Test
3200 public void t_pmat06()
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212 {
3213 double rbp[][] = new double[3][3];
3214
3215
3216 rbp = jauPmat06(2400000.5, 50123.9999);
3217
3218 vvd(rbp[0][0], 0.9999995505176007047, 1e-12,"jauPmat06", "11");
3219 vvd(rbp[0][1], 0.8695404617348208406e-3, 1e-14,"jauPmat06", "12");
3220 vvd(rbp[0][2], 0.3779735201865589104e-3, 1e-14,"jauPmat06", "13");
3221
3222 vvd(rbp[1][0], -0.8695404723772031414e-3, 1e-14,"jauPmat06", "21");
3223 vvd(rbp[1][1], 0.9999996219496027161, 1e-12,"jauPmat06", "22");
3224 vvd(rbp[1][2], -0.1361752497080270143e-6, 1e-14,"jauPmat06", "23");
3225
3226 vvd(rbp[2][0], -0.3779734957034089490e-3, 1e-14,"jauPmat06", "31");
3227 vvd(rbp[2][1], -0.1924880847894457113e-6, 1e-14,"jauPmat06", "32");
3228 vvd(rbp[2][2], 0.9999999285679971958, 1e-12,"jauPmat06", "33");
3229
3230 }
3231
3232 @Test
3233 public void t_pmat76()
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245 {
3246 double rmatp[][] = new double[3][3];
3247
3248
3249 rmatp = jauPmat76(2400000.5, 50123.9999);
3250
3251 vvd(rmatp[0][0], 0.9999995504328350733, 1e-12,"jauPmat76", "11");
3252 vvd(rmatp[0][1], 0.8696632209480960785e-3, 1e-14,"jauPmat76", "12");
3253 vvd(rmatp[0][2], 0.3779153474959888345e-3, 1e-14,"jauPmat76", "13");
3254
3255 vvd(rmatp[1][0], -0.8696632209485112192e-3, 1e-14,"jauPmat76", "21");
3256 vvd(rmatp[1][1], 0.9999996218428560614, 1e-12,"jauPmat76", "22");
3257 vvd(rmatp[1][2], -0.1643284776111886407e-6, 1e-14,"jauPmat76", "23");
3258
3259 vvd(rmatp[2][0], -0.3779153474950335077e-3, 1e-14,"jauPmat76", "31");
3260 vvd(rmatp[2][1], -0.1643306746147366896e-6, 1e-14,"jauPmat76", "32");
3261 vvd(rmatp[2][2], 0.9999999285899790119, 1e-12,"jauPmat76", "33");
3262
3263 }
3264
3265 @Test
3266 public void t_pm()
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278 {
3279 double p[] = new double[3], r;
3280
3281
3282 p[0] = 0.3;
3283 p[1] = 1.2;
3284 p[2] = -2.5;
3285
3286 r = jauPm(p);
3287
3288 vvd(r, 2.789265136196270604, 1e-12, "jauPm", "");
3289
3290 }
3291
3292 @Test
3293 public void t_pmp()
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305 {
3306 double a[] = new double[3], b[] = new double[3], amb[] = new double[3];
3307
3308
3309 a[0] = 2.0;
3310 a[1] = 2.0;
3311 a[2] = 3.0;
3312
3313 b[0] = 1.0;
3314 b[1] = 3.0;
3315 b[2] = 4.0;
3316
3317 amb = jauPmp(a, b);
3318
3319 vvd(amb[0], 1.0, 1e-12, "jauPmp", "0");
3320 vvd(amb[1], -1.0, 1e-12, "jauPmp", "1");
3321 vvd(amb[2], -1.0, 1e-12, "jauPmp", "2");
3322
3323 }
3324
3325 @Test
3326 public void t_pn()
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338 {
3339 double p[] = new double[3];
3340
3341
3342 p[0] = 0.3;
3343 p[1] = 1.2;
3344 p[2] = -2.5;
3345
3346 NormalizedVector mv = jauPn(p);
3347
3348 vvd(mv.r, 2.789265136196270604, 1e-12, "jauPn", "r");
3349
3350 vvd(mv.u[0], 0.1075552109073112058, 1e-12, "jauPn", "u1");
3351 vvd(mv.u[1], 0.4302208436292448232, 1e-12, "jauPn", "u2");
3352 vvd(mv.u[2], -0.8962934242275933816, 1e-12, "jauPn", "u3");
3353
3354 }
3355
3356 @Test
3357 public void t_pn00()
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369 {
3370 double dpsi, deps;
3371
3372 dpsi = -0.9632552291149335877e-5;
3373 deps = 0.4063197106621141414e-4;
3374
3375 PrecessionNutation pn = jauPn00(2400000.5, 53736.0, dpsi, deps);
3376
3377 vvd(pn.epsa, 0.4090791789404229916, 1e-12, "jauPn00", "epsa");
3378
3379 vvd(pn.rb[0][0], 0.9999999999999942498, 1e-12,"jauPn00", "rb11");
3380 vvd(pn.rb[0][1], -0.7078279744199196626e-7, 1e-18,"jauPn00", "rb12");
3381 vvd(pn.rb[0][2], 0.8056217146976134152e-7, 1e-18,"jauPn00", "rb13");
3382
3383 vvd(pn.rb[1][0], 0.7078279477857337206e-7, 1e-18,"jauPn00", "rb21");
3384 vvd(pn.rb[1][1], 0.9999999999999969484, 1e-12,"jauPn00", "rb22");
3385 vvd(pn.rb[1][2], 0.3306041454222136517e-7, 1e-18,"jauPn00", "rb23");
3386
3387 vvd(pn.rb[2][0], -0.8056217380986972157e-7, 1e-18,"jauPn00", "rb31");
3388 vvd(pn.rb[2][1], -0.3306040883980552500e-7, 1e-18,"jauPn00", "rb32");
3389 vvd(pn.rb[2][2], 0.9999999999999962084, 1e-12,"jauPn00", "rb33");
3390
3391 vvd(pn.rp[0][0], 0.9999989300532289018, 1e-12,"jauPn00", "rp11");
3392 vvd(pn.rp[0][1], -0.1341647226791824349e-2, 1e-14,"jauPn00", "rp12");
3393 vvd(pn.rp[0][2], -0.5829880927190296547e-3, 1e-14,"jauPn00", "rp13");
3394
3395 vvd(pn.rp[1][0], 0.1341647231069759008e-2, 1e-14,"jauPn00", "rp21");
3396 vvd(pn.rp[1][1], 0.9999990999908750433, 1e-12,"jauPn00", "rp22");
3397 vvd(pn.rp[1][2], -0.3837444441583715468e-6, 1e-14,"jauPn00", "rp23");
3398
3399 vvd(pn.rp[2][0], 0.5829880828740957684e-3, 1e-14,"jauPn00", "rp31");
3400 vvd(pn.rp[2][1], -0.3984203267708834759e-6, 1e-14,"jauPn00", "rp32");
3401 vvd(pn.rp[2][2], 0.9999998300623538046, 1e-12,"jauPn00", "rp33");
3402
3403 vvd(pn.rbp[0][0], 0.9999989300052243993, 1e-12,"jauPn00", "rbp11");
3404 vvd(pn.rbp[0][1], -0.1341717990239703727e-2, 1e-14,"jauPn00", "rbp12");
3405 vvd(pn.rbp[0][2], -0.5829075749891684053e-3, 1e-14,"jauPn00", "rbp13");
3406
3407 vvd(pn.rbp[1][0], 0.1341718013831739992e-2, 1e-14,"jauPn00", "rbp21");
3408 vvd(pn.rbp[1][1], 0.9999990998959191343, 1e-12,"jauPn00", "rbp22");
3409 vvd(pn.rbp[1][2], -0.3505759733565421170e-6, 1e-14,"jauPn00", "rbp23");
3410
3411 vvd(pn.rbp[2][0], 0.5829075206857717883e-3, 1e-14,"jauPn00", "rbp31");
3412 vvd(pn.rbp[2][1], -0.4315219955198608970e-6, 1e-14,"jauPn00", "rbp32");
3413 vvd(pn.rbp[2][2], 0.9999998301093036269, 1e-12,"jauPn00", "rbp33");
3414
3415 vvd(pn.rn[0][0], 0.9999999999536069682, 1e-12,"jauPn00", "rn11");
3416 vvd(pn.rn[0][1], 0.8837746144872140812e-5, 1e-16,"jauPn00", "rn12");
3417 vvd(pn.rn[0][2], 0.3831488838252590008e-5, 1e-16,"jauPn00", "rn13");
3418
3419 vvd(pn.rn[1][0], -0.8837590456633197506e-5, 1e-16,"jauPn00", "rn21");
3420 vvd(pn.rn[1][1], 0.9999999991354692733, 1e-12,"jauPn00", "rn22");
3421 vvd(pn.rn[1][2], -0.4063198798559573702e-4, 1e-16,"jauPn00", "rn23");
3422
3423 vvd(pn.rn[2][0], -0.3831847930135328368e-5, 1e-16,"jauPn00", "rn31");
3424 vvd(pn.rn[2][1], 0.4063195412258150427e-4, 1e-16,"jauPn00", "rn32");
3425 vvd(pn.rn[2][2], 0.9999999991671806225, 1e-12,"jauPn00", "rn33");
3426
3427 vvd(pn.rbpn[0][0], 0.9999989440499982806, 1e-12,"jauPn00", "rbpn11");
3428 vvd(pn.rbpn[0][1], -0.1332880253640848301e-2, 1e-14,"jauPn00", "rbpn12");
3429 vvd(pn.rbpn[0][2], -0.5790760898731087295e-3, 1e-14,"jauPn00", "rbpn13");
3430
3431 vvd(pn.rbpn[1][0], 0.1332856746979948745e-2, 1e-14,"jauPn00", "rbpn21");
3432 vvd(pn.rbpn[1][1], 0.9999991109064768883, 1e-12,"jauPn00", "rbpn22");
3433 vvd(pn.rbpn[1][2], -0.4097740555723063806e-4, 1e-14,"jauPn00", "rbpn23");
3434
3435 vvd(pn.rbpn[2][0], 0.5791301929950205000e-3, 1e-14,"jauPn00", "rbpn31");
3436 vvd(pn.rbpn[2][1], 0.4020553681373702931e-4, 1e-14,"jauPn00", "rbpn32");
3437 vvd(pn.rbpn[2][2], 0.9999998314958529887, 1e-12,"jauPn00", "rbpn33");
3438
3439 }
3440
3441 @Test
3442 public void t_pn00a()
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454 {
3455
3456
3457 PrecessionNutation pn = jauPn00a(2400000.5, 53736.0);
3458
3459
3460 vvd(pn.nut.dpsi, -0.9630909107115518431e-5, 1e-12,"jauPn00a", "dpsi");
3461 vvd(pn.nut.deps, 0.4063239174001678710e-4, 1e-12,"jauPn00a", "deps");
3462 vvd(pn.epsa, 0.4090791789404229916, 1e-12, "jauPn00a", "epsa");
3463
3464 vvd(pn.rb[0][0], 0.9999999999999942498, 1e-12,"jauPn00a", "rb11");
3465 vvd(pn.rb[0][1], -0.7078279744199196626e-7, 1e-16,"jauPn00a", "rb12");
3466 vvd(pn.rb[0][2], 0.8056217146976134152e-7, 1e-16,"jauPn00a", "rb13");
3467
3468 vvd(pn.rb[1][0], 0.7078279477857337206e-7, 1e-16,"jauPn00a", "rb21");
3469 vvd(pn.rb[1][1], 0.9999999999999969484, 1e-12,"jauPn00a", "rb22");
3470 vvd(pn.rb[1][2], 0.3306041454222136517e-7, 1e-16,"jauPn00a", "rb23");
3471
3472 vvd(pn.rb[2][0], -0.8056217380986972157e-7, 1e-16,"jauPn00a", "rb31");
3473 vvd(pn.rb[2][1], -0.3306040883980552500e-7, 1e-16,"jauPn00a", "rb32");
3474 vvd(pn.rb[2][2], 0.9999999999999962084, 1e-12,"jauPn00a", "rb33");
3475
3476 vvd(pn.rp[0][0], 0.9999989300532289018, 1e-12,"jauPn00a", "rp11");
3477 vvd(pn.rp[0][1], -0.1341647226791824349e-2, 1e-14,"jauPn00a", "rp12");
3478 vvd(pn.rp[0][2], -0.5829880927190296547e-3, 1e-14,"jauPn00a", "rp13");
3479
3480 vvd(pn.rp[1][0], 0.1341647231069759008e-2, 1e-14,"jauPn00a", "rp21");
3481 vvd(pn.rp[1][1], 0.9999990999908750433, 1e-12,"jauPn00a", "rp22");
3482 vvd(pn.rp[1][2], -0.3837444441583715468e-6, 1e-14,"jauPn00a", "rp23");
3483
3484 vvd(pn.rp[2][0], 0.5829880828740957684e-3, 1e-14,"jauPn00a", "rp31");
3485 vvd(pn.rp[2][1], -0.3984203267708834759e-6, 1e-14,"jauPn00a", "rp32");
3486 vvd(pn.rp[2][2], 0.9999998300623538046, 1e-12,"jauPn00a", "rp33");
3487
3488 vvd(pn.rbp[0][0], 0.9999989300052243993, 1e-12,"jauPn00a", "rbp11");
3489 vvd(pn.rbp[0][1], -0.1341717990239703727e-2, 1e-14,"jauPn00a", "rbp12");
3490 vvd(pn.rbp[0][2], -0.5829075749891684053e-3, 1e-14,"jauPn00a", "rbp13");
3491
3492 vvd(pn.rbp[1][0], 0.1341718013831739992e-2, 1e-14,"jauPn00a", "rbp21");
3493 vvd(pn.rbp[1][1], 0.9999990998959191343, 1e-12,"jauPn00a", "rbp22");
3494 vvd(pn.rbp[1][2], -0.3505759733565421170e-6, 1e-14,"jauPn00a", "rbp23");
3495
3496 vvd(pn.rbp[2][0], 0.5829075206857717883e-3, 1e-14,"jauPn00a", "rbp31");
3497 vvd(pn.rbp[2][1], -0.4315219955198608970e-6, 1e-14,"jauPn00a", "rbp32");
3498 vvd(pn.rbp[2][2], 0.9999998301093036269, 1e-12,"jauPn00a", "rbp33");
3499
3500 vvd(pn.rn[0][0], 0.9999999999536227949, 1e-12,"jauPn00a", "rn11");
3501 vvd(pn.rn[0][1], 0.8836238544090873336e-5, 1e-14,"jauPn00a", "rn12");
3502 vvd(pn.rn[0][2], 0.3830835237722400669e-5, 1e-14,"jauPn00a", "rn13");
3503
3504 vvd(pn.rn[1][0], -0.8836082880798569274e-5, 1e-14,"jauPn00a", "rn21");
3505 vvd(pn.rn[1][1], 0.9999999991354655028, 1e-12,"jauPn00a", "rn22");
3506 vvd(pn.rn[1][2], -0.4063240865362499850e-4, 1e-14,"jauPn00a", "rn23");
3507
3508 vvd(pn.rn[2][0], -0.3831194272065995866e-5, 1e-14,"jauPn00a", "rn31");
3509 vvd(pn.rn[2][1], 0.4063237480216291775e-4, 1e-14,"jauPn00a", "rn32");
3510 vvd(pn.rn[2][2], 0.9999999991671660338, 1e-12,"jauPn00a", "rn33");
3511
3512 vvd(pn.rbpn[0][0], 0.9999989440476103435, 1e-12,"jauPn00a", "rbpn11");
3513 vvd(pn.rbpn[0][1], -0.1332881761240011763e-2, 1e-14,"jauPn00a", "rbpn12");
3514 vvd(pn.rbpn[0][2], -0.5790767434730085751e-3, 1e-14,"jauPn00a", "rbpn13");
3515
3516 vvd(pn.rbpn[1][0], 0.1332858254308954658e-2, 1e-14,"jauPn00a", "rbpn21");
3517 vvd(pn.rbpn[1][1], 0.9999991109044505577, 1e-12,"jauPn00a", "rbpn22");
3518 vvd(pn.rbpn[1][2], -0.4097782710396580452e-4, 1e-14,"jauPn00a", "rbpn23");
3519
3520 vvd(pn.rbpn[2][0], 0.5791308472168152904e-3, 1e-14,"jauPn00a", "rbpn31");
3521 vvd(pn.rbpn[2][1], 0.4020595661591500259e-4, 1e-14,"jauPn00a", "rbpn32");
3522 vvd(pn.rbpn[2][2], 0.9999998314954572304, 1e-12,"jauPn00a", "rbpn33");
3523
3524 }
3525
3526 @Test
3527 public void t_pn00b()
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539 {
3540
3541 PrecessionNutation pn = jauPn00b(2400000.5, 53736.0);
3542
3543 vvd(pn.nut.dpsi, -0.9632552291148362783e-5, 1e-12,"jauPn00b", "dpsi");
3544 vvd(pn.nut.deps, 0.4063197106621159367e-4, 1e-12,"jauPn00b", "deps");
3545 vvd(pn.epsa, 0.4090791789404229916, 1e-12, "jauPn00b", "epsa");
3546
3547 vvd(pn.rb[0][0], 0.9999999999999942498, 1e-12,"jauPn00b", "rb11");
3548 vvd(pn.rb[0][1], -0.7078279744199196626e-7, 1e-16,"jauPn00b", "rb12");
3549 vvd(pn.rb[0][2], 0.8056217146976134152e-7, 1e-16,"jauPn00b", "rb13");
3550
3551 vvd(pn.rb[1][0], 0.7078279477857337206e-7, 1e-16,"jauPn00b", "rb21");
3552 vvd(pn.rb[1][1], 0.9999999999999969484, 1e-12,"jauPn00b", "rb22");
3553 vvd(pn.rb[1][2], 0.3306041454222136517e-7, 1e-16,"jauPn00b", "rb23");
3554
3555 vvd(pn.rb[2][0], -0.8056217380986972157e-7, 1e-16,"jauPn00b", "rb31");
3556 vvd(pn.rb[2][1], -0.3306040883980552500e-7, 1e-16,"jauPn00b", "rb32");
3557 vvd(pn.rb[2][2], 0.9999999999999962084, 1e-12,"jauPn00b", "rb33");
3558
3559 vvd(pn.rp[0][0], 0.9999989300532289018, 1e-12,"jauPn00b", "rp11");
3560 vvd(pn.rp[0][1], -0.1341647226791824349e-2, 1e-14,"jauPn00b", "rp12");
3561 vvd(pn.rp[0][2], -0.5829880927190296547e-3, 1e-14,"jauPn00b", "rp13");
3562
3563 vvd(pn.rp[1][0], 0.1341647231069759008e-2, 1e-14,"jauPn00b", "rp21");
3564 vvd(pn.rp[1][1], 0.9999990999908750433, 1e-12,"jauPn00b", "rp22");
3565 vvd(pn.rp[1][2], -0.3837444441583715468e-6, 1e-14,"jauPn00b", "rp23");
3566
3567 vvd(pn.rp[2][0], 0.5829880828740957684e-3, 1e-14,"jauPn00b", "rp31");
3568 vvd(pn.rp[2][1], -0.3984203267708834759e-6, 1e-14,"jauPn00b", "rp32");
3569 vvd(pn.rp[2][2], 0.9999998300623538046, 1e-12,"jauPn00b", "rp33");
3570
3571 vvd(pn.rbp[0][0], 0.9999989300052243993, 1e-12,"jauPn00b", "rbp11");
3572 vvd(pn.rbp[0][1], -0.1341717990239703727e-2, 1e-14,"jauPn00b", "rbp12");
3573 vvd(pn.rbp[0][2], -0.5829075749891684053e-3, 1e-14,"jauPn00b", "rbp13");
3574
3575 vvd(pn.rbp[1][0], 0.1341718013831739992e-2, 1e-14,"jauPn00b", "rbp21");
3576 vvd(pn.rbp[1][1], 0.9999990998959191343, 1e-12,"jauPn00b", "rbp22");
3577 vvd(pn.rbp[1][2], -0.3505759733565421170e-6, 1e-14,"jauPn00b", "rbp23");
3578
3579 vvd(pn.rbp[2][0], 0.5829075206857717883e-3, 1e-14,"jauPn00b", "rbp31");
3580 vvd(pn.rbp[2][1], -0.4315219955198608970e-6, 1e-14,"jauPn00b", "rbp32");
3581 vvd(pn.rbp[2][2], 0.9999998301093036269, 1e-12,"jauPn00b", "rbp33");
3582
3583 vvd(pn.rn[0][0], 0.9999999999536069682, 1e-12,"jauPn00b", "rn11");
3584 vvd(pn.rn[0][1], 0.8837746144871248011e-5, 1e-14,"jauPn00b", "rn12");
3585 vvd(pn.rn[0][2], 0.3831488838252202945e-5, 1e-14,"jauPn00b", "rn13");
3586
3587 vvd(pn.rn[1][0], -0.8837590456632304720e-5, 1e-14,"jauPn00b", "rn21");
3588 vvd(pn.rn[1][1], 0.9999999991354692733, 1e-12,"jauPn00b", "rn22");
3589 vvd(pn.rn[1][2], -0.4063198798559591654e-4, 1e-14,"jauPn00b", "rn23");
3590
3591 vvd(pn.rn[2][0], -0.3831847930134941271e-5, 1e-14,"jauPn00b", "rn31");
3592 vvd(pn.rn[2][1], 0.4063195412258168380e-4, 1e-14,"jauPn00b", "rn32");
3593 vvd(pn.rn[2][2], 0.9999999991671806225, 1e-12,"jauPn00b", "rn33");
3594
3595 vvd(pn.rbpn[0][0], 0.9999989440499982806, 1e-12,"jauPn00b", "rbpn11");
3596 vvd(pn.rbpn[0][1], -0.1332880253640849194e-2, 1e-14,"jauPn00b", "rbpn12");
3597 vvd(pn.rbpn[0][2], -0.5790760898731091166e-3, 1e-14,"jauPn00b", "rbpn13");
3598
3599 vvd(pn.rbpn[1][0], 0.1332856746979949638e-2, 1e-14,"jauPn00b", "rbpn21");
3600 vvd(pn.rbpn[1][1], 0.9999991109064768883, 1e-12,"jauPn00b", "rbpn22");
3601 vvd(pn.rbpn[1][2], -0.4097740555723081811e-4, 1e-14,"jauPn00b", "rbpn23");
3602
3603 vvd(pn.rbpn[2][0], 0.5791301929950208873e-3, 1e-14,"jauPn00b", "rbpn31");
3604 vvd(pn.rbpn[2][1], 0.4020553681373720832e-4, 1e-14,"jauPn00b", "rbpn32");
3605 vvd(pn.rbpn[2][2], 0.9999998314958529887, 1e-12,"jauPn00b", "rbpn33");
3606
3607 }
3608
3609 @Test
3610 public void t_pn06a()
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622 {
3623
3624
3625 PrecessionNutation pn = jauPn06a(2400000.5, 53736.0);
3626
3627 vvd(pn.nut.dpsi, -0.9630912025820308797e-5, 1e-12,"jauPn06a", "dpsi");
3628 vvd(pn.nut.deps, 0.4063238496887249798e-4, 1e-12,"jauPn06a", "deps");
3629 vvd(pn.epsa, 0.4090789763356509926, 1e-12, "jauPn06a", "epsa");
3630
3631 vvd(pn.rb[0][0], 0.9999999999999942497, 1e-12,"jauPn06a", "rb11");
3632 vvd(pn.rb[0][1], -0.7078368960971557145e-7, 1e-14,"jauPn06a", "rb12");
3633 vvd(pn.rb[0][2], 0.8056213977613185606e-7, 1e-14,"jauPn06a", "rb13");
3634
3635 vvd(pn.rb[1][0], 0.7078368694637674333e-7, 1e-14,"jauPn06a", "rb21");
3636 vvd(pn.rb[1][1], 0.9999999999999969484, 1e-12,"jauPn06a", "rb22");
3637 vvd(pn.rb[1][2], 0.3305943742989134124e-7, 1e-14,"jauPn06a", "rb23");
3638
3639 vvd(pn.rb[2][0], -0.8056214211620056792e-7, 1e-14,"jauPn06a", "rb31");
3640 vvd(pn.rb[2][1], -0.3305943172740586950e-7, 1e-14,"jauPn06a", "rb32");
3641 vvd(pn.rb[2][2], 0.9999999999999962084, 1e-12,"jauPn06a", "rb33");
3642
3643 vvd(pn.rp[0][0], 0.9999989300536854831, 1e-12,"jauPn06a", "rp11");
3644 vvd(pn.rp[0][1], -0.1341646886204443795e-2, 1e-14,"jauPn06a", "rp12");
3645 vvd(pn.rp[0][2], -0.5829880933488627759e-3, 1e-14,"jauPn06a", "rp13");
3646
3647 vvd(pn.rp[1][0], 0.1341646890569782183e-2, 1e-14,"jauPn06a", "rp21");
3648 vvd(pn.rp[1][1], 0.9999990999913319321, 1e-12,"jauPn06a", "rp22");
3649 vvd(pn.rp[1][2], -0.3835944216374477457e-6, 1e-14,"jauPn06a", "rp23");
3650
3651 vvd(pn.rp[2][0], 0.5829880833027867368e-3, 1e-14,"jauPn06a", "rp31");
3652 vvd(pn.rp[2][1], -0.3985701514686976112e-6, 1e-14,"jauPn06a", "rp32");
3653 vvd(pn.rp[2][2], 0.9999998300623534950, 1e-12,"jauPn06a", "rp33");
3654
3655 vvd(pn.rbp[0][0], 0.9999989300056797893, 1e-12,"jauPn06a", "rbp11");
3656 vvd(pn.rbp[0][1], -0.1341717650545059598e-2, 1e-14,"jauPn06a", "rbp12");
3657 vvd(pn.rbp[0][2], -0.5829075756493728856e-3, 1e-14,"jauPn06a", "rbp13");
3658
3659 vvd(pn.rbp[1][0], 0.1341717674223918101e-2, 1e-14,"jauPn06a", "rbp21");
3660 vvd(pn.rbp[1][1], 0.9999990998963748448, 1e-12,"jauPn06a", "rbp22");
3661 vvd(pn.rbp[1][2], -0.3504269280170069029e-6, 1e-14,"jauPn06a", "rbp23");
3662
3663 vvd(pn.rbp[2][0], 0.5829075211461454599e-3, 1e-14,"jauPn06a", "rbp31");
3664 vvd(pn.rbp[2][1], -0.4316708436255949093e-6, 1e-14,"jauPn06a", "rbp32");
3665 vvd(pn.rbp[2][2], 0.9999998301093032943, 1e-12,"jauPn06a", "rbp33");
3666
3667 vvd(pn.rn[0][0], 0.9999999999536227668, 1e-12,"jauPn06a", "rn11");
3668 vvd(pn.rn[0][1], 0.8836241998111535233e-5, 1e-14,"jauPn06a", "rn12");
3669 vvd(pn.rn[0][2], 0.3830834608415287707e-5, 1e-14,"jauPn06a", "rn13");
3670
3671 vvd(pn.rn[1][0], -0.8836086334870740138e-5, 1e-14,"jauPn06a", "rn21");
3672 vvd(pn.rn[1][1], 0.9999999991354657474, 1e-12,"jauPn06a", "rn22");
3673 vvd(pn.rn[1][2], -0.4063240188248455065e-4, 1e-14,"jauPn06a", "rn23");
3674
3675 vvd(pn.rn[2][0], -0.3831193642839398128e-5, 1e-14,"jauPn06a", "rn31");
3676 vvd(pn.rn[2][1], 0.4063236803101479770e-4, 1e-14,"jauPn06a", "rn32");
3677 vvd(pn.rn[2][2], 0.9999999991671663114, 1e-12,"jauPn06a", "rn33");
3678
3679 vvd(pn.rbpn[0][0], 0.9999989440480669738, 1e-12,"jauPn06a", "rbpn11");
3680 vvd(pn.rbpn[0][1], -0.1332881418091915973e-2, 1e-14,"jauPn06a", "rbpn12");
3681 vvd(pn.rbpn[0][2], -0.5790767447612042565e-3, 1e-14,"jauPn06a", "rbpn13");
3682
3683 vvd(pn.rbpn[1][0], 0.1332857911250989133e-2, 1e-14,"jauPn06a", "rbpn21");
3684 vvd(pn.rbpn[1][1], 0.9999991109049141908, 1e-12,"jauPn06a", "rbpn22");
3685 vvd(pn.rbpn[1][2], -0.4097767128546784878e-4, 1e-14,"jauPn06a", "rbpn23");
3686
3687 vvd(pn.rbpn[2][0], 0.5791308482835292617e-3, 1e-14,"jauPn06a", "rbpn31");
3688 vvd(pn.rbpn[2][1], 0.4020580099454020310e-4, 1e-14,"jauPn06a", "rbpn32");
3689 vvd(pn.rbpn[2][2], 0.9999998314954628695, 1e-12,"jauPn06a", "rbpn33");
3690
3691 }
3692
3693 @Test
3694 public void t_pn06()
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706 {
3707 double dpsi, deps;
3708
3709 dpsi = -0.9632552291149335877e-5;
3710 deps = 0.4063197106621141414e-4;
3711
3712 PrecessionNutation pn = jauPn06(2400000.5, 53736.0, dpsi, deps);
3713
3714 vvd(pn.epsa, 0.4090789763356509926, 1e-12, "jauPn06", "epsa");
3715
3716 vvd(pn.rb[0][0], 0.9999999999999942497, 1e-12,"jauPn06", "rb11");
3717 vvd(pn.rb[0][1], -0.7078368960971557145e-7, 1e-14,"jauPn06", "rb12");
3718 vvd(pn.rb[0][2], 0.8056213977613185606e-7, 1e-14,"jauPn06", "rb13");
3719
3720 vvd(pn.rb[1][0], 0.7078368694637674333e-7, 1e-14,"jauPn06", "rb21");
3721 vvd(pn.rb[1][1], 0.9999999999999969484, 1e-12,"jauPn06", "rb22");
3722 vvd(pn.rb[1][2], 0.3305943742989134124e-7, 1e-14,"jauPn06", "rb23");
3723
3724 vvd(pn.rb[2][0], -0.8056214211620056792e-7, 1e-14,"jauPn06", "rb31");
3725 vvd(pn.rb[2][1], -0.3305943172740586950e-7, 1e-14,"jauPn06", "rb32");
3726 vvd(pn.rb[2][2], 0.9999999999999962084, 1e-12,"jauPn06", "rb33");
3727
3728 vvd(pn.rp[0][0], 0.9999989300536854831, 1e-12,"jauPn06", "rp11");
3729 vvd(pn.rp[0][1], -0.1341646886204443795e-2, 1e-14,"jauPn06", "rp12");
3730 vvd(pn.rp[0][2], -0.5829880933488627759e-3, 1e-14,"jauPn06", "rp13");
3731
3732 vvd(pn.rp[1][0], 0.1341646890569782183e-2, 1e-14,"jauPn06", "rp21");
3733 vvd(pn.rp[1][1], 0.9999990999913319321, 1e-12,"jauPn06", "rp22");
3734 vvd(pn.rp[1][2], -0.3835944216374477457e-6, 1e-14,"jauPn06", "rp23");
3735
3736 vvd(pn.rp[2][0], 0.5829880833027867368e-3, 1e-14,"jauPn06", "rp31");
3737 vvd(pn.rp[2][1], -0.3985701514686976112e-6, 1e-14,"jauPn06", "rp32");
3738 vvd(pn.rp[2][2], 0.9999998300623534950, 1e-12,"jauPn06", "rp33");
3739
3740 vvd(pn.rbp[0][0], 0.9999989300056797893, 1e-12,"jauPn06", "rbp11");
3741 vvd(pn.rbp[0][1], -0.1341717650545059598e-2, 1e-14,"jauPn06", "rbp12");
3742 vvd(pn.rbp[0][2], -0.5829075756493728856e-3, 1e-14,"jauPn06", "rbp13");
3743
3744 vvd(pn.rbp[1][0], 0.1341717674223918101e-2, 1e-14,"jauPn06", "rbp21");
3745 vvd(pn.rbp[1][1], 0.9999990998963748448, 1e-12,"jauPn06", "rbp22");
3746 vvd(pn.rbp[1][2], -0.3504269280170069029e-6, 1e-14,"jauPn06", "rbp23");
3747
3748 vvd(pn.rbp[2][0], 0.5829075211461454599e-3, 1e-14,"jauPn06", "rbp31");
3749 vvd(pn.rbp[2][1], -0.4316708436255949093e-6, 1e-14,"jauPn06", "rbp32");
3750 vvd(pn.rbp[2][2], 0.9999998301093032943, 1e-12,"jauPn06", "rbp33");
3751
3752 vvd(pn.rn[0][0], 0.9999999999536069682, 1e-12,"jauPn06", "rn11");
3753 vvd(pn.rn[0][1], 0.8837746921149881914e-5, 1e-14,"jauPn06", "rn12");
3754 vvd(pn.rn[0][2], 0.3831487047682968703e-5, 1e-14,"jauPn06", "rn13");
3755
3756 vvd(pn.rn[1][0], -0.8837591232983692340e-5, 1e-14,"jauPn06", "rn21");
3757 vvd(pn.rn[1][1], 0.9999999991354692664, 1e-12,"jauPn06", "rn22");
3758 vvd(pn.rn[1][2], -0.4063198798558931215e-4, 1e-14,"jauPn06", "rn23");
3759
3760 vvd(pn.rn[2][0], -0.3831846139597250235e-5, 1e-14,"jauPn06", "rn31");
3761 vvd(pn.rn[2][1], 0.4063195412258792914e-4, 1e-14,"jauPn06", "rn32");
3762 vvd(pn.rn[2][2], 0.9999999991671806293, 1e-12,"jauPn06", "rn33");
3763
3764 vvd(pn.rbpn[0][0], 0.9999989440504506688, 1e-12,"jauPn06", "rbpn11");
3765 vvd(pn.rbpn[0][1], -0.1332879913170492655e-2, 1e-14,"jauPn06", "rbpn12");
3766 vvd(pn.rbpn[0][2], -0.5790760923225655753e-3, 1e-14,"jauPn06", "rbpn13");
3767
3768 vvd(pn.rbpn[1][0], 0.1332856406595754748e-2, 1e-14,"jauPn06", "rbpn21");
3769 vvd(pn.rbpn[1][1], 0.9999991109069366795, 1e-12,"jauPn06", "rbpn22");
3770 vvd(pn.rbpn[1][2], -0.4097725651142641812e-4, 1e-14,"jauPn06", "rbpn23");
3771
3772 vvd(pn.rbpn[2][0], 0.5791301952321296716e-3, 1e-14,"jauPn06", "rbpn31");
3773 vvd(pn.rbpn[2][1], 0.4020538796195230577e-4, 1e-14,"jauPn06", "rbpn32");
3774 vvd(pn.rbpn[2][2], 0.9999998314958576778, 1e-12,"jauPn06", "rbpn33");
3775
3776 }
3777
3778 @Test
3779 public void t_pnm00a()
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791 {
3792 double rbpn[][] = new double[3][3];
3793
3794
3795 rbpn = jauPnm00a(2400000.5, 50123.9999);
3796
3797 vvd(rbpn[0][0], 0.9999995832793134257, 1e-12,"jauPnm00a", "11");
3798 vvd(rbpn[0][1], 0.8372384254137809439e-3, 1e-14,"jauPnm00a", "12");
3799 vvd(rbpn[0][2], 0.3639684306407150645e-3, 1e-14,"jauPnm00a", "13");
3800
3801 vvd(rbpn[1][0], -0.8372535226570394543e-3, 1e-14,"jauPnm00a", "21");
3802 vvd(rbpn[1][1], 0.9999996486491582471, 1e-12,"jauPnm00a", "22");
3803 vvd(rbpn[1][2], 0.4132915262664072381e-4, 1e-14,"jauPnm00a", "23");
3804
3805 vvd(rbpn[2][0], -0.3639337004054317729e-3, 1e-14,"jauPnm00a", "31");
3806 vvd(rbpn[2][1], -0.4163386925461775873e-4, 1e-14,"jauPnm00a", "32");
3807 vvd(rbpn[2][2], 0.9999999329094390695, 1e-12,"jauPnm00a", "33");
3808
3809 }
3810
3811 @Test
3812 public void t_pnm00b()
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824 {
3825 double rbpn[][] = new double[3][3];
3826
3827
3828 rbpn = jauPnm00b(2400000.5, 50123.9999);
3829
3830 vvd(rbpn[0][0], 0.9999995832776208280, 1e-12,"jauPnm00b", "11");
3831 vvd(rbpn[0][1], 0.8372401264429654837e-3, 1e-14,"jauPnm00b", "12");
3832 vvd(rbpn[0][2], 0.3639691681450271771e-3, 1e-14,"jauPnm00b", "13");
3833
3834 vvd(rbpn[1][0], -0.8372552234147137424e-3, 1e-14,"jauPnm00b", "21");
3835 vvd(rbpn[1][1], 0.9999996486477686123, 1e-12,"jauPnm00b", "22");
3836 vvd(rbpn[1][2], 0.4132832190946052890e-4, 1e-14,"jauPnm00b", "23");
3837
3838 vvd(rbpn[2][0], -0.3639344385341866407e-3, 1e-14,"jauPnm00b", "31");
3839 vvd(rbpn[2][1], -0.4163303977421522785e-4, 1e-14,"jauPnm00b", "32");
3840 vvd(rbpn[2][2], 0.9999999329092049734, 1e-12,"jauPnm00b", "33");
3841
3842 }
3843
3844 @Test
3845 public void t_pnm06a()
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857 {
3858 double rbpn[][] = new double[3][3];
3859
3860
3861 rbpn = jauPnm06a(2400000.5, 50123.9999);
3862
3863 vvd(rbpn[0][0], 0.9999995832794205484, 1e-12,"jauPnm06a", "11");
3864 vvd(rbpn[0][1], 0.8372382772630962111e-3, 1e-14,"jauPnm06a", "12");
3865 vvd(rbpn[0][2], 0.3639684771140623099e-3, 1e-14,"jauPnm06a", "13");
3866
3867 vvd(rbpn[1][0], -0.8372533744743683605e-3, 1e-14,"jauPnm06a", "21");
3868 vvd(rbpn[1][1], 0.9999996486492861646, 1e-12,"jauPnm06a", "22");
3869 vvd(rbpn[1][2], 0.4132905944611019498e-4, 1e-14,"jauPnm06a", "23");
3870
3871 vvd(rbpn[2][0], -0.3639337469629464969e-3, 1e-14,"jauPnm06a", "31");
3872 vvd(rbpn[2][1], -0.4163377605910663999e-4, 1e-14,"jauPnm06a", "32");
3873 vvd(rbpn[2][2], 0.9999999329094260057, 1e-12,"jauPnm06a", "33");
3874
3875 }
3876
3877 @Test
3878 public void t_pnm80()
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890 {
3891 double rmatpn[][] = new double[3][3];
3892
3893
3894 rmatpn = jauPnm80(2400000.5, 50123.9999);
3895
3896 vvd(rmatpn[0][0], 0.9999995831934611169, 1e-12,"jauPnm80", "11");
3897 vvd(rmatpn[0][1], 0.8373654045728124011e-3, 1e-14,"jauPnm80", "12");
3898 vvd(rmatpn[0][2], 0.3639121916933106191e-3, 1e-14,"jauPnm80", "13");
3899
3900 vvd(rmatpn[1][0], -0.8373804896118301316e-3, 1e-14,"jauPnm80", "21");
3901 vvd(rmatpn[1][1], 0.9999996485439674092, 1e-12,"jauPnm80", "22");
3902 vvd(rmatpn[1][2], 0.4130202510421549752e-4, 1e-14,"jauPnm80", "23");
3903
3904 vvd(rmatpn[2][0], -0.3638774789072144473e-3, 1e-14,"jauPnm80", "31");
3905 vvd(rmatpn[2][1], -0.4160674085851722359e-4, 1e-14,"jauPnm80", "32");
3906 vvd(rmatpn[2][2], 0.9999999329310274805, 1e-12,"jauPnm80", "33");
3907
3908 }
3909
3910 @Test
3911 public void t_pom00()
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923 {
3924 double xp, yp, sp, rpom[][] = new double[3][3];
3925
3926
3927 xp = 2.55060238e-7;
3928 yp = 1.860359247e-6;
3929 sp = -0.1367174580728891460e-10;
3930
3931 rpom = jauPom00(xp, yp, sp);
3932
3933 vvd(rpom[0][0], 0.9999999999999674721, 1e-12,"jauPom00", "11");
3934 vvd(rpom[0][1], -0.1367174580728846989e-10, 1e-16,"jauPom00", "12");
3935 vvd(rpom[0][2], 0.2550602379999972345e-6, 1e-16,"jauPom00", "13");
3936
3937 vvd(rpom[1][0], 0.1414624947957029801e-10, 1e-16,"jauPom00", "21");
3938 vvd(rpom[1][1], 0.9999999999982695317, 1e-12,"jauPom00", "22");
3939 vvd(rpom[1][2], -0.1860359246998866389e-5, 1e-16,"jauPom00", "23");
3940
3941 vvd(rpom[2][0], -0.2550602379741215021e-6, 1e-16,"jauPom00", "31");
3942 vvd(rpom[2][1], 0.1860359247002414021e-5, 1e-16,"jauPom00", "32");
3943 vvd(rpom[2][2], 0.9999999999982370039, 1e-12,"jauPom00", "33");
3944
3945 double vec[]= {0,0,1};
3946 double vec2[] = jauRxp(rpom,vec);
3947 for (double d : vec2) {
3948 System.out.println(d);
3949 }
3950
3951 }
3952
3953 @Test
3954 public void t_ppp()
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966 {
3967 double a[] = new double[3], b[] = new double[3], apb[] = new double[3];
3968
3969
3970 a[0] = 2.0;
3971 a[1] = 2.0;
3972 a[2] = 3.0;
3973
3974 b[0] = 1.0;
3975 b[1] = 3.0;
3976 b[2] = 4.0;
3977
3978 apb = jauPpp(a, b);
3979
3980 vvd(apb[0], 3.0, 1e-12, "jauPpp", "0");
3981 vvd(apb[1], 5.0, 1e-12, "jauPpp", "1");
3982 vvd(apb[2], 7.0, 1e-12, "jauPpp", "2");
3983
3984 }
3985
3986 @Test
3987 public void t_ppsp()
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999 {
4000 double a[] = new double[3], s, b[] = new double[3], apsb[] = new double[3];
4001
4002
4003 a[0] = 2.0;
4004 a[1] = 2.0;
4005 a[2] = 3.0;
4006
4007 s = 5.0;
4008
4009 b[0] = 1.0;
4010 b[1] = 3.0;
4011 b[2] = 4.0;
4012
4013 apsb = jauPpsp(a, s, b);
4014
4015 vvd(apsb[0], 7.0, 1e-12, "jauPpsp", "0");
4016 vvd(apsb[1], 17.0, 1e-12, "jauPpsp", "1");
4017 vvd(apsb[2], 23.0, 1e-12, "jauPpsp", "2");
4018
4019 }
4020
4021 @Test
4022 public void t_pr00()
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034 {
4035 PrecessionDeltaTerms nut = jauPr00(2400000.5, 53736);
4036
4037 vvd(nut.dpsipr, -0.8716465172668347629e-7, 1e-22,"jauPr00", "dpsipr");
4038 vvd(nut.depspr, -0.7342018386722813087e-8, 1e-22,"jauPr00", "depspr");
4039
4040 }
4041
4042 @Test
4043 public void t_prec76()
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055 {
4056 double ep01, ep02, ep11, ep12;
4057
4058
4059 ep01 = 2400000.5;
4060 ep02 = 33282.0;
4061 ep11 = 2400000.5;
4062 ep12 = 51544.0;
4063
4064 EulerAngles an = jauPrec76(ep01, ep02, ep11, ep12);
4065
4066 vvd(an.zeta, 0.5588961642000161243e-2, 1e-12,"jauPrec76", "zeta");
4067 vvd(an.z, 0.5589922365870680624e-2, 1e-12,"jauPrec76", "z");
4068 vvd(an.theta, 0.4858945471687296760e-2, 1e-12,"jauPrec76", "theta");
4069
4070 }
4071
4072 @Test
4073 public void t_pv2p()
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085 {
4086 double pv[][] = new double[2][3], p[] = new double[3];
4087
4088
4089 pv[0][0] = 0.3;
4090 pv[0][1] = 1.2;
4091 pv[0][2] = -2.5;
4092
4093 pv[1][0] = -0.5;
4094 pv[1][1] = 3.1;
4095 pv[1][2] = 0.9;
4096
4097 p = jauPv2p(pv);
4098
4099 vvd(p[0], 0.3, 0.0, "jauPv2p", "1");
4100 vvd(p[1], 1.2, 0.0, "jauPv2p", "2");
4101 vvd(p[2], -2.5, 0.0, "jauPv2p", "3");
4102
4103 }
4104
4105 @Test
4106 public void t_pv2s()
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118 {
4119 double pv[][] = new double[2][3];
4120
4121
4122 pv[0][0] = -0.4514964673880165;
4123 pv[0][1] = 0.03093394277342585;
4124 pv[0][2] = 0.05594668105108779;
4125
4126 pv[1][0] = 1.292270850663260e-5;
4127 pv[1][1] = 2.652814182060692e-6;
4128 pv[1][2] = 2.568431853930293e-6;
4129
4130 SphericalPositionVelocity pvs = jauPv2s(pv);
4131
4132 vvd(pvs.pos.theta, 3.073185307179586515, 1e-12, "jauPv2s", "theta");
4133 vvd(pvs.pos.phi, 0.1229999999999999992, 1e-12, "jauPv2s", "phi");
4134 vvd(pvs.pos.r, 0.4559999999999999757, 1e-12, "jauPv2s", "r");
4135 vvd(pvs.vel.theta, -0.7800000000000000364e-5, 1e-16, "jauPv2s", "td");
4136 vvd(pvs.vel.phi, 0.9010000000000001639e-5, 1e-16, "jauPv2s", "pd");
4137 vvd(pvs.vel.r, -0.1229999999999999832e-4, 1e-16, "jauPv2s", "rd");
4138
4139 }
4140
4141 @Test
4142 public void t_pvdpv()
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154 {
4155 double a[][] = new double[2][3], b[][] = new double[2][3], adb[] = new double[2];
4156
4157
4158 a[0][0] = 2.0;
4159 a[0][1] = 2.0;
4160 a[0][2] = 3.0;
4161
4162 a[1][0] = 6.0;
4163 a[1][1] = 0.0;
4164 a[1][2] = 4.0;
4165
4166 b[0][0] = 1.0;
4167 b[0][1] = 3.0;
4168 b[0][2] = 4.0;
4169
4170 b[1][0] = 0.0;
4171 b[1][1] = 2.0;
4172 b[1][2] = 8.0;
4173
4174 adb = jauPvdpv(a, b);
4175
4176 vvd(adb[0], 20.0, 1e-12, "jauPvdpv", "1");
4177 vvd(adb[1], 50.0, 1e-12, "jauPvdpv", "2");
4178
4179 }
4180
4181 @Test
4182 public void t_pvm()
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194 {
4195 double pv[][] = new double[2][3];
4196
4197
4198 pv[0][0] = 0.3;
4199 pv[0][1] = 1.2;
4200 pv[0][2] = -2.5;
4201
4202 pv[1][0] = 0.45;
4203 pv[1][1] = -0.25;
4204 pv[1][2] = 1.1;
4205
4206 PVModulus ret = jauPvm(pv);
4207
4208 vvd(ret.r, 2.789265136196270604, 1e-12, "jauPvm", "r");
4209 vvd(ret.s, 1.214495780149111922, 1e-12, "jauPvm", "s");
4210
4211 }
4212
4213 @Test
4214 public void t_pvmpv()
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226 {
4227 double a[][] = new double[2][3], b[][] = new double[2][3], amb[][] = new double[2][3];
4228
4229
4230 a[0][0] = 2.0;
4231 a[0][1] = 2.0;
4232 a[0][2] = 3.0;
4233
4234 a[1][0] = 5.0;
4235 a[1][1] = 6.0;
4236 a[1][2] = 3.0;
4237
4238 b[0][0] = 1.0;
4239 b[0][1] = 3.0;
4240 b[0][2] = 4.0;
4241
4242 b[1][0] = 3.0;
4243 b[1][1] = 2.0;
4244 b[1][2] = 1.0;
4245
4246 amb = jauPvmpv(a, b);
4247
4248 vvd(amb[0][0], 1.0, 1e-12, "jauPvmpv", "11");
4249 vvd(amb[0][1], -1.0, 1e-12, "jauPvmpv", "21");
4250 vvd(amb[0][2], -1.0, 1e-12, "jauPvmpv", "31");
4251
4252 vvd(amb[1][0], 2.0, 1e-12, "jauPvmpv", "12");
4253 vvd(amb[1][1], 4.0, 1e-12, "jauPvmpv", "22");
4254 vvd(amb[1][2], 2.0, 1e-12, "jauPvmpv", "32");
4255
4256 }
4257
4258 @Test
4259 public void t_pvppv()
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271 {
4272 double a[][] = new double[2][3], b[][] = new double[2][3], apb[][] = new double[2][3];
4273
4274
4275 a[0][0] = 2.0;
4276 a[0][1] = 2.0;
4277 a[0][2] = 3.0;
4278
4279 a[1][0] = 5.0;
4280 a[1][1] = 6.0;
4281 a[1][2] = 3.0;
4282
4283 b[0][0] = 1.0;
4284 b[0][1] = 3.0;
4285 b[0][2] = 4.0;
4286
4287 b[1][0] = 3.0;
4288 b[1][1] = 2.0;
4289 b[1][2] = 1.0;
4290
4291 apb = jauPvppv(a, b);
4292
4293 vvd(apb[0][0], 3.0, 1e-12, "jauPvppv", "p1");
4294 vvd(apb[0][1], 5.0, 1e-12, "jauPvppv", "p2");
4295 vvd(apb[0][2], 7.0, 1e-12, "jauPvppv", "p3");
4296
4297 vvd(apb[1][0], 8.0, 1e-12, "jauPvppv", "v1");
4298 vvd(apb[1][1], 8.0, 1e-12, "jauPvppv", "v2");
4299 vvd(apb[1][2], 4.0, 1e-12, "jauPvppv", "v3");
4300
4301 }
4302
4303 @Test
4304 public void t_pvstar()
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316 {
4317 double pv[][] = new double[2][3];
4318
4319
4320 pv[0][0] = 126668.5912743160601;
4321 pv[0][1] = 2136.792716839935195;
4322 pv[0][2] = -245251.2339876830091;
4323
4324 pv[1][0] = -0.4051854035740712739e-2;
4325 pv[1][1] = -0.6253919754866173866e-2;
4326 pv[1][2] = 0.1189353719774107189e-1;
4327
4328 try {
4329 CatalogCoords cat = jauPvstar(pv);
4330
4331 vvd(cat.pos.alpha, 0.1686756e-1, 1e-12, "jauPvstar", "ra");
4332 vvd(cat.pos.delta, -1.093989828, 1e-12, "jauPvstar", "dec");
4333 vvd(cat.pm.alpha, -0.1783235160000472788e-4, 1e-16, "jauPvstar", "pmr");
4334 vvd(cat.pm.delta, 0.2336024047000619347e-5, 1e-16, "jauPvstar", "pmd");
4335 vvd(cat.px, 0.74723, 1e-12, "jauPvstar", "px");
4336 vvd(cat.rv, -21.60000010107306010, 1e-11, "jauPvstar", "rv");
4337 } catch (JSOFAInternalError e) {
4338 fail(" internal exception");
4339 }
4340
4341
4342 }
4343
4344 @Test
4345 public void t_pvu()
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357 {
4358 double pv[][] = new double[2][3], upv[][] = new double[2][3];
4359
4360
4361 pv[0][0] = 126668.5912743160734;
4362 pv[0][1] = 2136.792716839935565;
4363 pv[0][2] = -245251.2339876830229;
4364
4365 pv[1][0] = -0.4051854035740713039e-2;
4366 pv[1][1] = -0.6253919754866175788e-2;
4367 pv[1][2] = 0.1189353719774107615e-1;
4368
4369 upv = jauPvu(2920.0, pv);
4370
4371 vvd(upv[0][0], 126656.7598605317105, 1e-6,"jauPvu", "p1");
4372 vvd(upv[0][1], 2118.531271155726332, 1e-8,"jauPvu", "p2");
4373 vvd(upv[0][2], -245216.5048590656190, 1e-6,"jauPvu", "p3");
4374
4375 vvd(upv[1][0], -0.4051854035740713039e-2, 1e-12,"jauPvu", "v1");
4376 vvd(upv[1][1], -0.6253919754866175788e-2, 1e-12,"jauPvu", "v2");
4377 vvd(upv[1][2], 0.1189353719774107615e-1, 1e-12,"jauPvu", "v3");
4378
4379 }
4380
4381 @Test
4382 public void t_pvup()
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394 {
4395 double pv[][] = new double[2][3], p[] = new double[3];
4396
4397
4398 pv[0][0] = 126668.5912743160734;
4399 pv[0][1] = 2136.792716839935565;
4400 pv[0][2] = -245251.2339876830229;
4401
4402 pv[1][0] = -0.4051854035740713039e-2;
4403 pv[1][1] = -0.6253919754866175788e-2;
4404 pv[1][2] = 0.1189353719774107615e-1;
4405
4406 p = jauPvup(2920.0, pv);
4407
4408 vvd(p[0], 126656.7598605317105, 1e-12, "jauPvup", "1");
4409 vvd(p[1], 2118.531271155726332, 1e-12, "jauPvup", "2");
4410 vvd(p[2], -245216.5048590656190, 1e-12, "jauPvup", "3");
4411
4412 }
4413
4414 @Test
4415 public void t_pvxpv()
4416
4417
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427 {
4428 double a[][] = new double[2][3], b[][] = new double[2][3], axb[][] = new double[2][3];
4429
4430
4431 a[0][0] = 2.0;
4432 a[0][1] = 2.0;
4433 a[0][2] = 3.0;
4434
4435 a[1][0] = 6.0;
4436 a[1][1] = 0.0;
4437 a[1][2] = 4.0;
4438
4439 b[0][0] = 1.0;
4440 b[0][1] = 3.0;
4441 b[0][2] = 4.0;
4442
4443 b[1][0] = 0.0;
4444 b[1][1] = 2.0;
4445 b[1][2] = 8.0;
4446
4447 axb = jauPvxpv(a, b);
4448
4449 vvd(axb[0][0], -1.0, 1e-12, "jauPvxpv", "p1");
4450 vvd(axb[0][1], -5.0, 1e-12, "jauPvxpv", "p2");
4451 vvd(axb[0][2], 4.0, 1e-12, "jauPvxpv", "p3");
4452
4453 vvd(axb[1][0], -2.0, 1e-12, "jauPvxpv", "v1");
4454 vvd(axb[1][1], -36.0, 1e-12, "jauPvxpv", "v2");
4455 vvd(axb[1][2], 22.0, 1e-12, "jauPvxpv", "v3");
4456
4457 }
4458
4459 @Test
4460 public void t_pxp()
4461
4462
4463
4464
4465
4466
4467
4468
4469
4470
4471
4472 {
4473 double a[] = new double[3], b[] = new double[3], axb[] = new double[3];
4474
4475
4476 a[0] = 2.0;
4477 a[1] = 2.0;
4478 a[2] = 3.0;
4479
4480 b[0] = 1.0;
4481 b[1] = 3.0;
4482 b[2] = 4.0;
4483
4484 axb = jauPxp(a, b);
4485
4486 vvd(axb[0], -1.0, 1e-12, "jauPxp", "1");
4487 vvd(axb[1], -5.0, 1e-12, "jauPxp", "2");
4488 vvd(axb[2], 4.0, 1e-12, "jauPxp", "3");
4489
4490 }
4491
4492 @Test
4493 public void t_rm2v()
4494
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505 {
4506 double r[][] = new double[3][3], w[] = new double[3];
4507
4508
4509 r[0][0] = 0.00;
4510 r[0][1] = -0.80;
4511 r[0][2] = -0.60;
4512
4513 r[1][0] = 0.80;
4514 r[1][1] = -0.36;
4515 r[1][2] = 0.48;
4516
4517 r[2][0] = 0.60;
4518 r[2][1] = 0.48;
4519 r[2][2] = -0.64;
4520
4521 w = jauRm2v(r);
4522
4523 vvd(w[0], 0.0, 1e-12, "jauRm2v", "1");
4524 vvd(w[1], 1.413716694115406957, 1e-12, "jauRm2v", "2");
4525 vvd(w[2], -1.884955592153875943, 1e-12, "jauRm2v", "3");
4526
4527 }
4528
4529 @Test
4530 public void t_rv2m()
4531
4532
4533
4534
4535
4536
4537
4538
4539
4540
4541
4542 {
4543 double w[] = new double[3], r[][] = new double[3][3];
4544
4545
4546 w[0] = 0.0;
4547 w[1] = 1.41371669;
4548 w[2] = -1.88495559;
4549
4550 r = jauRv2m(w);
4551
4552 vvd(r[0][0], -0.7071067782221119905, 1e-14, "jauRv2m", "11");
4553 vvd(r[0][1], -0.5656854276809129651, 1e-14, "jauRv2m", "12");
4554 vvd(r[0][2], -0.4242640700104211225, 1e-14, "jauRv2m", "13");
4555
4556 vvd(r[1][0], 0.5656854276809129651, 1e-14, "jauRv2m", "21");
4557 vvd(r[1][1], -0.0925483394532274246, 1e-14, "jauRv2m", "22");
4558 vvd(r[1][2], -0.8194112531408833269, 1e-14, "jauRv2m", "23");
4559
4560 vvd(r[2][0], 0.4242640700104211225, 1e-14, "jauRv2m", "31");
4561 vvd(r[2][1], -0.8194112531408833269, 1e-14, "jauRv2m", "32");
4562 vvd(r[2][2], 0.3854415612311154341, 1e-14, "jauRv2m", "33");
4563
4564 }
4565
4566 @Test
4567 public void t_rx()
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579 {
4580 double phi, r[][] = new double[3][3];
4581
4582
4583 phi = 0.3456789;
4584
4585 r[0][0] = 2.0;
4586 r[0][1] = 3.0;
4587 r[0][2] = 2.0;
4588
4589 r[1][0] = 3.0;
4590 r[1][1] = 2.0;
4591 r[1][2] = 3.0;
4592
4593 r[2][0] = 3.0;
4594 r[2][1] = 4.0;
4595 r[2][2] = 5.0;
4596
4597 jauRx(phi, r);
4598
4599 vvd(r[0][0], 2.0, 0.0, "jauRx", "11");
4600 vvd(r[0][1], 3.0, 0.0, "jauRx", "12");
4601 vvd(r[0][2], 2.0, 0.0, "jauRx", "13");
4602
4603 vvd(r[1][0], 3.839043388235612460, 1e-12, "jauRx", "21");
4604 vvd(r[1][1], 3.237033249594111899, 1e-12, "jauRx", "22");
4605 vvd(r[1][2], 4.516714379005982719, 1e-12, "jauRx", "23");
4606
4607 vvd(r[2][0], 1.806030415924501684, 1e-12, "jauRx", "31");
4608 vvd(r[2][1], 3.085711545336372503, 1e-12, "jauRx", "32");
4609 vvd(r[2][2], 3.687721683977873065, 1e-12, "jauRx", "33");
4610
4611 }
4612
4613 @Test
4614 public void t_rxp()
4615
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625
4626 {
4627 double r[][] = new double[3][3], p[] = new double[3], rp[] = new double[3];
4628
4629
4630 r[0][0] = 2.0;
4631 r[0][1] = 3.0;
4632 r[0][2] = 2.0;
4633
4634 r[1][0] = 3.0;
4635 r[1][1] = 2.0;
4636 r[1][2] = 3.0;
4637
4638 r[2][0] = 3.0;
4639 r[2][1] = 4.0;
4640 r[2][2] = 5.0;
4641
4642 p[0] = 0.2;
4643 p[1] = 1.5;
4644 p[2] = 0.1;
4645
4646 rp = jauRxp(r, p);
4647
4648 vvd(rp[0], 5.1, 1e-12, "jauRxp", "1");
4649 vvd(rp[1], 3.9, 1e-12, "jauRxp", "2");
4650 vvd(rp[2], 7.1, 1e-12, "jauRxp", "3");
4651
4652 }
4653
4654 @Test
4655 public void t_rxpv()
4656
4657
4658
4659
4660
4661
4662
4663
4664
4665
4666
4667 {
4668 double r[][] = new double[3][3], pv[][] = new double[2][3], rpv[][] = new double[2][3];
4669
4670
4671 r[0][0] = 2.0;
4672 r[0][1] = 3.0;
4673 r[0][2] = 2.0;
4674
4675 r[1][0] = 3.0;
4676 r[1][1] = 2.0;
4677 r[1][2] = 3.0;
4678
4679 r[2][0] = 3.0;
4680 r[2][1] = 4.0;
4681 r[2][2] = 5.0;
4682
4683 pv[0][0] = 0.2;
4684 pv[0][1] = 1.5;
4685 pv[0][2] = 0.1;
4686
4687 pv[1][0] = 1.5;
4688 pv[1][1] = 0.2;
4689 pv[1][2] = 0.1;
4690
4691 rpv = jauRxpv(r, pv);
4692
4693 vvd(rpv[0][0], 5.1, 1e-12, "jauRxpv", "11");
4694 vvd(rpv[1][0], 3.8, 1e-12, "jauRxpv", "12");
4695
4696 vvd(rpv[0][1], 3.9, 1e-12, "jauRxpv", "21");
4697 vvd(rpv[1][1], 5.2, 1e-12, "jauRxpv", "22");
4698
4699 vvd(rpv[0][2], 7.1, 1e-12, "jauRxpv", "31");
4700 vvd(rpv[1][2], 5.8, 1e-12, "jauRxpv", "32");
4701
4702 }
4703
4704 @Test
4705 public void t_rxr()
4706
4707
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717 {
4718 double a[][] = new double[3][3], b[][] = new double[3][3], atb[][] = new double[3][3];
4719
4720
4721 a[0][0] = 2.0;
4722 a[0][1] = 3.0;
4723 a[0][2] = 2.0;
4724
4725 a[1][0] = 3.0;
4726 a[1][1] = 2.0;
4727 a[1][2] = 3.0;
4728
4729 a[2][0] = 3.0;
4730 a[2][1] = 4.0;
4731 a[2][2] = 5.0;
4732
4733 b[0][0] = 1.0;
4734 b[0][1] = 2.0;
4735 b[0][2] = 2.0;
4736
4737 b[1][0] = 4.0;
4738 b[1][1] = 1.0;
4739 b[1][2] = 1.0;
4740
4741 b[2][0] = 3.0;
4742 b[2][1] = 0.0;
4743 b[2][2] = 1.0;
4744
4745 atb = jauRxr(a, b);
4746
4747 vvd(atb[0][0], 20.0, 1e-12, "jauRxr", "11");
4748 vvd(atb[0][1], 7.0, 1e-12, "jauRxr", "12");
4749 vvd(atb[0][2], 9.0, 1e-12, "jauRxr", "13");
4750
4751 vvd(atb[1][0], 20.0, 1e-12, "jauRxr", "21");
4752 vvd(atb[1][1], 8.0, 1e-12, "jauRxr", "22");
4753 vvd(atb[1][2], 11.0, 1e-12, "jauRxr", "23");
4754
4755 vvd(atb[2][0], 34.0, 1e-12, "jauRxr", "31");
4756 vvd(atb[2][1], 10.0, 1e-12, "jauRxr", "32");
4757 vvd(atb[2][2], 15.0, 1e-12, "jauRxr", "33");
4758
4759 }
4760
4761 @Test
4762 public void t_ry()
4763
4764
4765
4766
4767
4768
4769
4770
4771
4772
4773
4774 {
4775 double theta, r[][] = new double[3][3];
4776
4777
4778 theta = 0.3456789;
4779
4780 r[0][0] = 2.0;
4781 r[0][1] = 3.0;
4782 r[0][2] = 2.0;
4783
4784 r[1][0] = 3.0;
4785 r[1][1] = 2.0;
4786 r[1][2] = 3.0;
4787
4788 r[2][0] = 3.0;
4789 r[2][1] = 4.0;
4790 r[2][2] = 5.0;
4791
4792 jauRy(theta, r);
4793
4794 vvd(r[0][0], 0.8651847818978159930, 1e-12, "jauRy", "11");
4795 vvd(r[0][1], 1.467194920539316554, 1e-12, "jauRy", "12");
4796 vvd(r[0][2], 0.1875137911274457342, 1e-12, "jauRy", "13");
4797
4798 vvd(r[1][0], 3, 1e-12, "jauRy", "21");
4799 vvd(r[1][1], 2, 1e-12, "jauRy", "22");
4800 vvd(r[1][2], 3, 1e-12, "jauRy", "23");
4801
4802 vvd(r[2][0], 3.500207892850427330, 1e-12, "jauRy", "31");
4803 vvd(r[2][1], 4.779889022262298150, 1e-12, "jauRy", "32");
4804 vvd(r[2][2], 5.381899160903798712, 1e-12, "jauRy", "33");
4805
4806 }
4807
4808 @Test
4809 public void t_rz()
4810
4811
4812
4813
4814
4815
4816
4817
4818
4819
4820
4821 {
4822 double psi, r[][] = new double[3][3];
4823
4824
4825 psi = 0.3456789;
4826
4827 r[0][0] = 2.0;
4828 r[0][1] = 3.0;
4829 r[0][2] = 2.0;
4830
4831 r[1][0] = 3.0;
4832 r[1][1] = 2.0;
4833 r[1][2] = 3.0;
4834
4835 r[2][0] = 3.0;
4836 r[2][1] = 4.0;
4837 r[2][2] = 5.0;
4838
4839 jauRz(psi, r);
4840
4841 vvd(r[0][0], 2.898197754208926769, 1e-12, "jauRz", "11");
4842 vvd(r[0][1], 3.500207892850427330, 1e-12, "jauRz", "12");
4843 vvd(r[0][2], 2.898197754208926769, 1e-12, "jauRz", "13");
4844
4845 vvd(r[1][0], 2.144865911309686813, 1e-12, "jauRz", "21");
4846 vvd(r[1][1], 0.865184781897815993, 1e-12, "jauRz", "22");
4847 vvd(r[1][2], 2.144865911309686813, 1e-12, "jauRz", "23");
4848
4849 vvd(r[2][0], 3.0, 1e-12, "jauRz", "31");
4850 vvd(r[2][1], 4.0, 1e-12, "jauRz", "32");
4851 vvd(r[2][2], 5.0, 1e-12, "jauRz", "33");
4852
4853 }
4854
4855 @Test
4856 public void t_s00a()
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868 {
4869 double s;
4870
4871
4872 s = jauS00a(2400000.5, 52541.0);
4873
4874 vvd(s, -0.1340684448919163584e-7, 1e-18, "jauS00a", "");
4875
4876 }
4877
4878 @Test
4879 public void t_s00b()
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889
4890
4891 {
4892 double s;
4893
4894
4895 s = jauS00b(2400000.5, 52541.0);
4896
4897 vvd(s, -0.1340695782951026584e-7, 1e-18, "jauS00b", "");
4898
4899 }
4900
4901 @Test
4902 public void t_s00()
4903
4904
4905
4906
4907
4908
4909
4910
4911
4912
4913
4914 {
4915 double x, y, s;
4916
4917
4918 x = 0.5791308486706011000e-3;
4919 y = 0.4020579816732961219e-4;
4920
4921 s = jauS00(2400000.5, 53736.0, x, y);
4922
4923 vvd(s, -0.1220036263270905693e-7, 1e-18, "jauS00", "");
4924
4925 }
4926
4927 @Test
4928 public void t_s06a()
4929
4930
4931
4932
4933
4934
4935
4936
4937
4938
4939
4940 {
4941 double s;
4942
4943
4944 s = jauS06a(2400000.5, 52541.0);
4945
4946 vvd(s, -0.1340680437291812383e-7, 1e-18, "jauS06a", "");
4947
4948 }
4949
4950 @Test
4951 public void t_s06()
4952
4953
4954
4955
4956
4957
4958
4959
4960
4961
4962
4963 {
4964 double x, y, s;
4965
4966
4967 x = 0.5791308486706011000e-3;
4968 y = 0.4020579816732961219e-4;
4969
4970 s = jauS06(2400000.5, 53736.0, x, y);
4971
4972 vvd(s, -0.1220032213076463117e-7, 1e-18, "jauS06", "");
4973
4974 }
4975
4976 @Test
4977 public void t_s2c()
4978
4979
4980
4981
4982
4983
4984
4985
4986
4987
4988
4989 {
4990 double c[] = new double[3];
4991
4992
4993 c = jauS2c(3.0123, -0.999);
4994
4995 vvd(c[0], -0.5366267667260523906, 1e-12, "jauS2c", "1");
4996 vvd(c[1], 0.0697711109765145365, 1e-12, "jauS2c", "2");
4997 vvd(c[2], -0.8409302618566214041, 1e-12, "jauS2c", "3");
4998
4999 }
5000
5001 @Test
5002 public void t_s2p()
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014 {
5015 double p[] = new double[3];
5016
5017
5018 p = jauS2p(-3.21, 0.123, 0.456);
5019
5020 vvd(p[0], -0.4514964673880165228, 1e-12, "jauS2p", "x");
5021 vvd(p[1], 0.0309339427734258688, 1e-12, "jauS2p", "y");
5022 vvd(p[2], 0.0559466810510877933, 1e-12, "jauS2p", "z");
5023
5024 }
5025
5026 @Test
5027 public void t_s2pv()
5028
5029
5030
5031
5032
5033
5034
5035
5036
5037
5038
5039 {
5040 double pv[][] = new double[2][3];
5041
5042
5043 pv = jauS2pv(-3.21, 0.123, 0.456, -7.8e-6, 9.01e-6, -1.23e-5);
5044
5045 vvd(pv[0][0], -0.4514964673880165228, 1e-12, "jauS2pv", "x");
5046 vvd(pv[0][1], 0.0309339427734258688, 1e-12, "jauS2pv", "y");
5047 vvd(pv[0][2], 0.0559466810510877933, 1e-12, "jauS2pv", "z");
5048
5049 vvd(pv[1][0], 0.1292270850663260170e-4, 1e-16,"jauS2pv", "vx");
5050 vvd(pv[1][1], 0.2652814182060691422e-5, 1e-16,"jauS2pv", "vy");
5051 vvd(pv[1][2], 0.2568431853930292259e-5, 1e-16,"jauS2pv", "vz");
5052
5053 }
5054
5055 @Test
5056 public void t_s2xpv()
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068 {
5069 double s1, s2, pv[][] = new double[2][3], spv[][]= new double[2][3];
5070
5071
5072 s1 = 2.0;
5073 s2 = 3.0;
5074
5075 pv[0][0] = 0.3;
5076 pv[0][1] = 1.2;
5077 pv[0][2] = -2.5;
5078
5079 pv[1][0] = 0.5;
5080 pv[1][1] = 2.3;
5081 pv[1][2] = -0.4;
5082
5083 spv = jauS2xpv(s1, s2, pv);
5084
5085 vvd(spv[0][0], 0.6, 1e-12, "jauS2xpv", "p1");
5086 vvd(spv[0][1], 2.4, 1e-12, "jauS2xpv", "p2");
5087 vvd(spv[0][2], -5.0, 1e-12, "jauS2xpv", "p3");
5088
5089 vvd(spv[1][0], 1.5, 1e-12, "jauS2xpv", "v1");
5090 vvd(spv[1][1], 6.9, 1e-12, "jauS2xpv", "v2");
5091 vvd(spv[1][2], -1.2, 1e-12, "jauS2xpv", "v3");
5092
5093 }
5094
5095 @Test
5096 public void t_sepp()
5097
5098
5099
5100
5101
5102
5103
5104
5105
5106
5107
5108 {
5109 double a[] = new double[3], b[] = new double[3], s;
5110
5111
5112 a[0] = 1.0;
5113 a[1] = 0.1;
5114 a[2] = 0.2;
5115
5116 b[0] = -3.0;
5117 b[1] = 1e-3;
5118 b[2] = 0.2;
5119
5120 s = jauSepp(a, b);
5121
5122 vvd(s, 2.860391919024660768, 1e-12, "jauSepp", "");
5123
5124 }
5125
5126 @Test
5127 public void t_seps()
5128
5129
5130
5131
5132
5133
5134
5135
5136
5137
5138
5139 {
5140 double al, ap, bl, bp, s;
5141
5142
5143 al = 1.0;
5144 ap = 0.1;
5145
5146 bl = 0.2;
5147 bp = -3.0;
5148
5149 s = jauSeps(al, ap, bl, bp);
5150
5151 vvd(s, 2.346722016996998842, 1e-14, "jauSeps", "");
5152
5153 }
5154
5155 @Test
5156 public void t_sp00()
5157
5158
5159
5160
5161
5162
5163
5164
5165
5166
5167
5168 {
5169 vvd(jauSp00(2400000.5, 52541.0),
5170 -0.6216698469981019309e-11, 1e-12, "jauSp00", "");
5171
5172 }
5173
5174 @Test
5175 public void t_starpm()
5176
5177
5178
5179
5180
5181
5182
5183
5184
5185
5186
5187 {
5188 double ra1, dec1, pmr1, pmd1, px1, rv1;
5189
5190 ra1 = 0.01686756;
5191 dec1 = -1.093989828;
5192 pmr1 = -1.78323516e-5;
5193 pmd1 = 2.336024047e-6;
5194 px1 = 0.74723;
5195 rv1 = -21.6;
5196
5197 try {
5198 CatalogCoords cat = jauStarpm(ra1, dec1, pmr1, pmd1, px1, rv1,
5199 2400000.5, 50083.0, 2400000.5, 53736.0 );
5200
5201 vvd(cat.pos.alpha, 0.01668919069414256149, 1e-13,"jauStarpm", "ra");
5202 vvd(cat.pos.delta, -1.093966454217127897, 1e-13,"jauStarpm", "dec");
5203 vvd(cat.pm.alpha, -0.1783662682153176524e-4, 1e-17,"jauStarpm", "pmr");
5204 vvd(cat.pm.delta, 0.2338092915983989595e-5, 1e-17,"jauStarpm", "pmd");
5205 vvd(cat.px, 0.7473533835317719243, 1e-13,"jauStarpm", "px");
5206 vvd(cat.rv, -21.59905170476417175, 1e-11,"jauStarpm", "rv");
5207 } catch (JSOFAInternalError e) {
5208
5209 e.printStackTrace();
5210 fail("jauStarpm threw exception");
5211 }
5212
5213
5214
5215 }
5216
5217 @Test
5218 public void t_starpv()
5219
5220
5221
5222
5223
5224
5225
5226
5227
5228
5229
5230 {
5231 double ra, dec, pmr, pmd, px, rv, pv[][] = new double[2][3];
5232
5233
5234
5235 ra = 0.01686756;
5236 dec = -1.093989828;
5237 pmr = -1.78323516e-5;
5238 pmd = 2.336024047e-6;
5239 px = 0.74723;
5240 rv = -21.6;
5241
5242 int j = jauStarpv(ra, dec, pmr, pmd, px, rv, pv);
5243
5244 vvd(pv[0][0], 126668.5912743160601, 1e-10,"jauStarpv", "11");
5245 vvd(pv[0][1], 2136.792716839935195, 1e-12,"jauStarpv", "12");
5246 vvd(pv[0][2], -245251.2339876830091, 1e-10,"jauStarpv", "13");
5247
5248 vvd(pv[1][0], -0.4051854008955659551e-2, 1e-13,"jauStarpv", "21");
5249 vvd(pv[1][1], -0.6253919754414777970e-2, 1e-15,"jauStarpv", "22");
5250 vvd(pv[1][2], 0.1189353714588109341e-1, 1e-13,"jauStarpv", "23");
5251
5252 viv(j, 0, "jauStarpv", "j");
5253
5254 }
5255
5256 @Test
5257 public void t_sxp()
5258
5259
5260
5261
5262
5263
5264
5265
5266
5267
5268
5269 {
5270 double s, p[] = new double[3], sp[] = new double[3];
5271
5272
5273 s = 2.0;
5274
5275 p[0] = 0.3;
5276 p[1] = 1.2;
5277 p[2] = -2.5;
5278
5279 sp = jauSxp(s, p);
5280
5281 vvd(sp[0], 0.6, 0.0, "jauSxp", "1");
5282 vvd(sp[1], 2.4, 0.0, "jauSxp", "2");
5283 vvd(sp[2], -5.0, 0.0, "jauSxp", "3");
5284
5285 }
5286
5287
5288 @Test
5289 public void t_sxpv()
5290
5291
5292
5293
5294
5295
5296
5297
5298
5299
5300
5301 {
5302 double s, pv[][] = new double[2][3], spv[][] = new double[2][3];
5303
5304
5305 s = 2.0;
5306
5307 pv[0][0] = 0.3;
5308 pv[0][1] = 1.2;
5309 pv[0][2] = -2.5;
5310
5311 pv[1][0] = 0.5;
5312 pv[1][1] = 3.2;
5313 pv[1][2] = -0.7;
5314
5315 spv = jauSxpv(s, pv);
5316
5317 vvd(spv[0][0], 0.6, 0.0, "jauSxpv", "p1");
5318 vvd(spv[0][1], 2.4, 0.0, "jauSxpv", "p2");
5319 vvd(spv[0][2], -5.0, 0.0, "jauSxpv", "p3");
5320
5321 vvd(spv[1][0], 1.0, 0.0, "jauSxpv", "v1");
5322 vvd(spv[1][1], 6.4, 0.0, "jauSxpv", "v2");
5323 vvd(spv[1][2], -1.4, 0.0, "jauSxpv", "v3");
5324
5325 }
5326
5327 @Test
5328 public void t_taitt()
5329
5330
5331
5332
5333
5334
5335
5336
5337
5338
5339
5340 {
5341 JulianDate jd = jauTaitt(2453750.5, 0.892482639);
5342
5343 vvd(jd.djm0, 2453750.5, 1e-6, "jauTaitt", "t1");
5344 vvd(jd.djm1, 0.892855139, 1e-12, "jauTaitt", "t2");
5345
5346 }
5347
5348 @Test
5349 public void t_taiut1()
5350
5351
5352
5353
5354
5355
5356
5357
5358
5359
5360
5361 {
5362 JulianDate jd = jauTaiut1(2453750.5, 0.892482639, -32.6659);
5363
5364 vvd(jd.djm0, 2453750.5, 1e-6, "jauTaiut1", "u1");
5365 vvd(jd.djm1, 0.8921045614537037037, 1e-12, "jauTaiut1", "u2");
5366
5367 }
5368
5369 @Test
5370 public void t_taiutc() throws JSOFAIllegalParameter, JSOFAInternalError
5371
5372
5373
5374
5375
5376
5377
5378
5379
5380
5381
5382 {
5383 JulianDate jd = jauTaiutc(2453750.5, 0.892482639);
5384
5385 vvd(jd.djm0, 2453750.5, 1e-6, "jauTaiutc", "u1");
5386 vvd(jd.djm1, 0.8921006945555555556, 1e-12, "jauTaiutc", "u2");
5387
5388 }
5389
5390 @Test
5391 public void t_tcbtdb()
5392
5393
5394
5395
5396
5397
5398
5399
5400
5401
5402
5403 {
5404 JulianDate jd = jauTcbtdb(2453750.5, 0.893019599);
5405
5406 vvd(jd.djm0, 2453750.5, 1e-6, "jauTcbtdb", "b1");
5407 vvd(jd.djm1, 0.8928551362746343397, 1e-12, "jauTcbtdb", "b2");
5408
5409 }
5410
5411 @Test
5412 public void t_tcgtt()
5413
5414
5415
5416
5417
5418
5419
5420
5421
5422
5423
5424 {
5425 JulianDate jd = jauTcgtt(2453750.5, 0.892862531);
5426
5427 vvd(jd.djm0, 2453750.5, 1e-6, "jauTcgtt", "t1");
5428 vvd(jd.djm1, 0.8928551387488816828, 1e-12, "jauTcgtt", "t2");
5429
5430 }
5431 @Test
5432 public void t_tdbtcb()
5433
5434
5435
5436
5437
5438
5439
5440
5441
5442
5443
5444 {
5445 JulianDate jd = jauTdbtcb(2453750.5, 0.892855137);
5446
5447 vvd( jd.djm0, 2453750.5, 1e-6, "jauTdbtcb", "b1");
5448 vvd( jd.djm1, 0.8930195997253656716, 1e-12, "jauTdbtcb", "b2");
5449
5450 }
5451
5452 @Test
5453 public void t_tdbtt()
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
5465 {
5466 JulianDate jd = jauTdbtt(2453750.5, 0.892855137, -0.000201);
5467
5468 vvd(jd.djm0, 2453750.5, 1e-6, "jauTdbtt", "t1");
5469 vvd(jd.djm1, 0.8928551393263888889, 1e-12, "jauTdbtt", "t2");
5470
5471 }
5472
5473
5474
5475
5476
5477
5478
5479
5480
5481
5482
5483
5484
5485
5486
5487
5488
5489
5490
5491
5492
5493
5494
5495
5496
5497
5498
5499
5500
5501
5502
5503
5504
5505
5506
5507
5508
5509
5510
5511
5512
5513
5514
5515
5516
5517
5518
5519
5520
5521
5522
5523
5524
5525
5526
5527
5528
5529 @Test
5530 public void t_tr()
5531
5532
5533
5534
5535
5536
5537
5538
5539
5540
5541
5542 {
5543 double r[][] = new double[3][3], rt[][] = new double[3][3];
5544
5545
5546 r[0][0] = 2.0;
5547 r[0][1] = 3.0;
5548 r[0][2] = 2.0;
5549
5550 r[1][0] = 3.0;
5551 r[1][1] = 2.0;
5552 r[1][2] = 3.0;
5553
5554 r[2][0] = 3.0;
5555 r[2][1] = 4.0;
5556 r[2][2] = 5.0;
5557
5558 rt = jauTr(r);
5559
5560 vvd(rt[0][0], 2.0, 0.0, "jauTr", "11");
5561 vvd(rt[0][1], 3.0, 0.0, "jauTr", "12");
5562 vvd(rt[0][2], 3.0, 0.0, "jauTr", "13");
5563
5564 vvd(rt[1][0], 3.0, 0.0, "jauTr", "21");
5565 vvd(rt[1][1], 2.0, 0.0, "jauTr", "22");
5566 vvd(rt[1][2], 4.0, 0.0, "jauTr", "23");
5567
5568 vvd(rt[2][0], 2.0, 0.0, "jauTr", "31");
5569 vvd(rt[2][1], 3.0, 0.0, "jauTr", "32");
5570 vvd(rt[2][2], 5.0, 0.0, "jauTr", "33");
5571
5572 }
5573
5574 @Test
5575 public void t_trxp()
5576
5577
5578
5579
5580
5581
5582
5583
5584
5585
5586
5587 {
5588 double r[][] = new double[3][3], p[] = new double[3], trp[] = new double[3];
5589
5590
5591 r[0][0] = 2.0;
5592 r[0][1] = 3.0;
5593 r[0][2] = 2.0;
5594
5595 r[1][0] = 3.0;
5596 r[1][1] = 2.0;
5597 r[1][2] = 3.0;
5598
5599 r[2][0] = 3.0;
5600 r[2][1] = 4.0;
5601 r[2][2] = 5.0;
5602
5603 p[0] = 0.2;
5604 p[1] = 1.5;
5605 p[2] = 0.1;
5606
5607 trp = jauTrxp(r, p);
5608
5609 vvd(trp[0], 5.2, 1e-12, "jauTrxp", "1");
5610 vvd(trp[1], 4.0, 1e-12, "jauTrxp", "2");
5611 vvd(trp[2], 5.4, 1e-12, "jauTrxp", "3");
5612
5613 }
5614
5615 @Test
5616 public void t_trxpv()
5617
5618
5619
5620
5621
5622
5623
5624
5625
5626
5627
5628 {
5629 double r[][] = new double[3][3], pv[][] = new double[2][3], trpv[][] = new double[2][3];
5630
5631
5632 r[0][0] = 2.0;
5633 r[0][1] = 3.0;
5634 r[0][2] = 2.0;
5635
5636 r[1][0] = 3.0;
5637 r[1][1] = 2.0;
5638 r[1][2] = 3.0;
5639
5640 r[2][0] = 3.0;
5641 r[2][1] = 4.0;
5642 r[2][2] = 5.0;
5643
5644 pv[0][0] = 0.2;
5645 pv[0][1] = 1.5;
5646 pv[0][2] = 0.1;
5647
5648 pv[1][0] = 1.5;
5649 pv[1][1] = 0.2;
5650 pv[1][2] = 0.1;
5651
5652 trpv = jauTrxpv(r, pv);
5653
5654 vvd(trpv[0][0], 5.2, 1e-12, "jauTrxpv", "p1");
5655 vvd(trpv[0][1], 4.0, 1e-12, "jauTrxpv", "p1");
5656 vvd(trpv[0][2], 5.4, 1e-12, "jauTrxpv", "p1");
5657
5658 vvd(trpv[1][0], 3.9, 1e-12, "jauTrxpv", "v1");
5659 vvd(trpv[1][1], 5.3, 1e-12, "jauTrxpv", "v2");
5660 vvd(trpv[1][2], 4.1, 1e-12, "jauTrxpv", "v3");
5661
5662 }
5663
5664 @Test
5665 public void t_tttai()
5666
5667
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677 {
5678
5679
5680
5681 JulianDate jd = jauTttai(2453750.5, 0.892482639);
5682
5683 vvd(jd.djm0, 2453750.5, 1e-6, "jauTttai", "a1");
5684 vvd(jd.djm1, 0.892110139, 1e-12, "jauTttai", "a2");
5685
5686
5687 }
5688
5689 @Test
5690 public void t_tttcg()
5691
5692
5693
5694
5695
5696
5697
5698
5699
5700
5701
5702 {
5703
5704 JulianDate jd = jauTttcg(2453750.5, 0.892482639);
5705
5706 vvd( jd.djm0, 2453750.5, 1e-6, "jauTttcg", "g1");
5707 vvd( jd.djm1, 0.8924900312508587113, 1e-12, "jauTttcg", "g2");
5708
5709 }
5710
5711 @Test
5712 public void t_tttdb()
5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724 {
5725
5726 JulianDate jd = jauTttdb(2453750.5, 0.892855139, -0.000201);
5727
5728 vvd(jd.djm0, 2453750.5, 1e-6, "jauTttdb", "b1");
5729 vvd(jd.djm1, 0.8928551366736111111, 1e-12, "jauTttdb", "b2");
5730
5731
5732 }
5733
5734 @Test
5735 public void t_ttut1()
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747 {
5748 JulianDate jd = jauTtut1(2453750.5, 0.892855139, 64.8499);
5749
5750 vvd(jd.djm0, 2453750.5, 1e-6, "jauTtut1", "u1");
5751 vvd(jd.djm1, 0.8921045614537037037, 1e-12, "jauTtut1", "u2");
5752
5753 }
5754
5755 @Test
5756 public void t_ut1tai()
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768 {
5769
5770
5771 JulianDate jd = jauUt1tai(2453750.5, 0.892104561, -32.6659);
5772
5773 vvd(jd.djm0, 2453750.5, 1e-6, "jauUt1tai", "a1");
5774 vvd(jd.djm1, 0.8924826385462962963, 1e-12, "jauUt1tai", "a2");
5775
5776 }
5777
5778 @Test
5779 public void t_ut1tt()
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791 {
5792 JulianDate jd = jauUt1tt(2453750.5, 0.892104561, 64.8499);
5793
5794 vvd(jd.djm0, 2453750.5, 1e-6, "jauUt1tt", "t1");
5795 vvd(jd.djm1, 0.8928551385462962963, 1e-12, "jauUt1tt", "t2");
5796
5797 }
5798
5799 @Test
5800 public void t_ut1utc() throws JSOFAIllegalParameter, JSOFAInternalError
5801
5802
5803
5804
5805
5806
5807
5808
5809
5810
5811
5812 {
5813 JulianDate jd = jauUt1utc(2453750.5, 0.892104561, 0.3341);
5814
5815 vvd(jd.djm0, 2453750.5, 1e-6, "jauUt1utc", "u1");
5816 vvd(jd.djm1, 0.8921006941018518519, 1e-12, "jauUt1utc", "u2");
5817
5818
5819 }
5820
5821 @Test
5822 public void t_utctai() throws JSOFAIllegalParameter, JSOFAInternalError
5823
5824
5825
5826
5827
5828
5829
5830
5831
5832
5833
5834 {
5835
5836
5837 JulianDate jd = jauUtctai(2453750.5, 0.892100694);
5838
5839 vvd(jd.djm0, 2453750.5, 1e-6, "jauUtctai", "u1");
5840 vvd(jd.djm1, 0.8924826384444444444, 1e-12, "jauUtctai", "u2");
5841
5842 }
5843
5844 @Test
5845 public void t_utcut1() throws JSOFAIllegalParameter, JSOFAInternalError
5846
5847
5848
5849
5850
5851
5852
5853
5854
5855
5856
5857 {
5858 JulianDate jd = jauUtcut1(2453750.5, 0.892100694, 0.3341);
5859
5860 vvd(jd.djm0, 2453750.5, 1e-6, "jauUtcut1", "u1");
5861 vvd(jd.djm1, 0.8921045608981481481, 1e-12, "jauUtcut1", "u2");
5862
5863 }
5864
5865 @Test
5866 public void t_xy06()
5867
5868
5869
5870
5871
5872
5873
5874
5875
5876
5877
5878 {
5879
5880 CelestialIntermediatePole cip = jauXy06(2400000.5, 53736.0);
5881
5882 vvd(cip.x, 0.5791308486706010975e-3, 1e-15, "jauXy06", "x");
5883 vvd(cip.y, 0.4020579816732958141e-4, 1e-16, "jauXy06", "y");
5884
5885 }
5886
5887 @Test
5888 public void t_xys00a()
5889
5890
5891
5892
5893
5894
5895
5896
5897
5898
5899
5900 {
5901
5902 ICRFrame fr = jauXys00a(2400000.5, 53736.0);
5903
5904 vvd(fr.cip.x, 0.5791308472168152904e-3, 1e-14, "jauXys00a", "x");
5905 vvd(fr.cip.y, 0.4020595661591500259e-4, 1e-15, "jauXys00a", "y");
5906 vvd(fr.s, -0.1220040848471549623e-7, 1e-18, "jauXys00a", "s");
5907
5908 }
5909
5910 @Test
5911 public void t_xys00b()
5912
5913
5914
5915
5916
5917
5918
5919
5920
5921
5922
5923 {
5924
5925
5926 ICRFrame fr = jauXys00b(2400000.5, 53736.0);
5927
5928 vvd(fr.cip.x, 0.5791301929950208873e-3, 1e-14, "jauXys00b", "x");
5929 vvd(fr.cip.y, 0.4020553681373720832e-4, 1e-15, "jauXys00b", "y");
5930 vvd(fr.s, -0.1220027377285083189e-7, 1e-18, "jauXys00b", "s");
5931
5932 }
5933
5934 @Test
5935 public void t_xys06a()
5936
5937
5938
5939
5940
5941
5942
5943
5944
5945
5946
5947 {
5948
5949 ICRFrame fr = jauXys06a(2400000.5, 53736.0);
5950
5951 vvd(fr.cip.x, 0.5791308482835292617e-3, 1e-14, "jauXys06a", "x");
5952 vvd(fr.cip.y, 0.4020580099454020310e-4, 1e-15, "jauXys06a", "y");
5953 vvd(fr.s, -0.1220032294164579896e-7, 1e-18, "jauXys06a", "s");
5954
5955 }
5956
5957 @Test
5958 public void t_zp()
5959
5960
5961
5962
5963
5964
5965
5966
5967
5968
5969
5970 {
5971 double p[] = new double[3];
5972
5973
5974 p[0] = 0.3;
5975 p[1] = 1.2;
5976 p[2] = -2.5;
5977
5978 jauZp(p);
5979
5980 vvd(p[0], 0.0, 0.0, "jauZp", "1");
5981 vvd(p[1], 0.0, 0.0, "jauZp", "2");
5982 vvd(p[2], 0.0, 0.0, "jauZp", "3");
5983
5984 }
5985
5986 @Test
5987 public void t_zpv()
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999 {
6000 double pv[][] = new double[2][3];
6001
6002
6003 pv[0][0] = 0.3;
6004 pv[0][1] = 1.2;
6005 pv[0][2] = -2.5;
6006
6007 pv[1][0] = -0.5;
6008 pv[1][1] = 3.1;
6009 pv[1][2] = 0.9;
6010
6011 jauZpv(pv);
6012
6013 vvd(pv[0][0], 0.0, 0.0, "jauZpv", "p1");
6014 vvd(pv[0][1], 0.0, 0.0, "jauZpv", "p2");
6015 vvd(pv[0][2], 0.0, 0.0, "jauZpv", "p3");
6016
6017 vvd(pv[1][0], 0.0, 0.0, "jauZpv", "v1");
6018 vvd(pv[1][1], 0.0, 0.0, "jauZpv", "v2");
6019 vvd(pv[1][2], 0.0, 0.0, "jauZpv", "v3");
6020
6021 }
6022
6023 @Test
6024 public void t_zr()
6025
6026
6027
6028
6029
6030
6031
6032
6033
6034
6035
6036 {
6037 double r[][] = new double[3][3];
6038
6039
6040 r[0][0] = 2.0;
6041 r[1][0] = 3.0;
6042 r[2][0] = 2.0;
6043
6044 r[0][1] = 3.0;
6045 r[1][1] = 2.0;
6046 r[2][1] = 3.0;
6047
6048 r[0][2] = 3.0;
6049 r[1][2] = 4.0;
6050 r[2][2] = 5.0;
6051
6052 jauZr(r);
6053
6054 vvd(r[0][0], 0.0, 0.0, "jauZr", "00");
6055 vvd(r[1][0], 0.0, 0.0, "jauZr", "01");
6056 vvd(r[2][0], 0.0, 0.0, "jauZr", "02");
6057
6058 vvd(r[0][1], 0.0, 0.0, "jauZr", "10");
6059 vvd(r[1][1], 0.0, 0.0, "jauZr", "11");
6060 vvd(r[2][1], 0.0, 0.0, "jauZr", "12");
6061
6062 vvd(r[0][2], 0.0, 0.0, "jauZr", "20");
6063 vvd(r[1][2], 0.0, 0.0, "jauZr", "21");
6064 vvd(r[2][2], 0.0, 0.0, "jauZr", "22");
6065
6066 }
6067
6068
6069
6070
6071 @Test
6072 public void t_apcg()
6073
6074
6075
6076
6077
6078
6079
6080
6081
6082
6083
6084 {
6085 double date1, date2, ebpv[][] = new double[2][3], ehp[] = new double[3];
6086 Astrom astrom = new Astrom();
6087
6088
6089 date1 = 2456165.5;
6090 date2 = 0.401182685;
6091 ebpv[0][0] = 0.901310875;
6092 ebpv[0][1] = -0.417402664;
6093 ebpv[0][2] = -0.180982288;
6094 ebpv[1][0] = 0.00742727954;
6095 ebpv[1][1] = 0.0140507459;
6096 ebpv[1][2] = 0.00609045792;
6097 ehp[0] = 0.903358544;
6098 ehp[1] = -0.415395237;
6099 ehp[2] = -0.180084014;
6100
6101 jauApcg(date1, date2, ebpv, ehp, astrom);
6102
6103 vvd(astrom.pmt, 12.65133794027378508, 1e-11,
6104 "jauApcg", "pmt");
6105 vvd(astrom.eb[0], 0.901310875, 1e-12,
6106 "jauApcg", "eb(1)");
6107 vvd(astrom.eb[1], -0.417402664, 1e-12,
6108 "jauApcg", "eb(2)");
6109 vvd(astrom.eb[2], -0.180982288, 1e-12,
6110 "jauApcg", "eb(3)");
6111 vvd(astrom.eh[0], 0.8940025429324143045, 1e-12,
6112 "jauApcg", "eh(1)");
6113 vvd(astrom.eh[1], -0.4110930268679817955, 1e-12,
6114 "jauApcg", "eh(2)");
6115 vvd(astrom.eh[2], -0.1782189004872870264, 1e-12,
6116 "jauApcg", "eh(3)");
6117 vvd(astrom.em, 1.010465295811013146, 1e-12,
6118 "jauApcg", "em");
6119 vvd(astrom.v[0], 0.4289638913597693554e-4, 1e-16,
6120 "jauApcg", "v(1)");
6121 vvd(astrom.v[1], 0.8115034051581320575e-4, 1e-16,
6122 "jauApcg", "v(2)");
6123 vvd(astrom.v[2], 0.3517555136380563427e-4, 1e-16,
6124 "jauApcg", "v(3)");
6125 vvd(astrom.bm1, 0.9999999951686012981, 1e-12,
6126 "jauApcg", "bm1");
6127 vvd(astrom.bpn[0][0], 1.0, 0.0,
6128 "jauApcg", "bpn(1,1)");
6129 vvd(astrom.bpn[1][0], 0.0, 0.0,
6130 "jauApcg", "bpn(2,1)");
6131 vvd(astrom.bpn[2][0], 0.0, 0.0,
6132 "jauApcg", "bpn(3,1)");
6133 vvd(astrom.bpn[0][1], 0.0, 0.0,
6134 "jauApcg", "bpn(1,2)");
6135 vvd(astrom.bpn[1][1], 1.0, 0.0,
6136 "jauApcg", "bpn(2,2)");
6137 vvd(astrom.bpn[2][1], 0.0, 0.0,
6138 "jauApcg", "bpn(3,2)");
6139 vvd(astrom.bpn[0][2], 0.0, 0.0,
6140 "jauApcg", "bpn(1,3)");
6141 vvd(astrom.bpn[1][2], 0.0, 0.0,
6142 "jauApcg", "bpn(2,3)");
6143 vvd(astrom.bpn[2][2], 1.0, 0.0,
6144 "jauApcg", "bpn(3,3)");
6145
6146 }
6147
6148 @Test
6149 public void t_ab()
6150
6151
6152
6153
6154
6155
6156
6157
6158
6159
6160
6161 {
6162 double pnat[] = new double[3], v[] = new double[3], s, bm1, ppr[];
6163
6164
6165 pnat[0] = -0.76321968546737951;
6166 pnat[1] = -0.60869453983060384;
6167 pnat[2] = -0.21676408580639883;
6168 v[0] = 2.1044018893653786e-5;
6169 v[1] = -8.9108923304429319e-5;
6170 v[2] = -3.8633714797716569e-5;
6171 s = 0.99980921395708788;
6172 bm1 = 0.99999999506209258;
6173
6174 ppr = jauAb(pnat, v, s, bm1);
6175
6176 vvd(ppr[0], -0.7631631094219556269, 1e-12, "jauAb", "1");
6177 vvd(ppr[1], -0.6087553082505590832, 1e-12, "jauAb", "2");
6178 vvd(ppr[2], -0.2167926269368471279, 1e-12, "jauAb", "3");
6179
6180 }
6181
6182 @Test
6183 public void t_apcg13()
6184
6185
6186
6187
6188
6189
6190
6191
6192
6193
6194
6195 {
6196 double date1, date2;
6197 Astrom astrom = new Astrom();
6198
6199
6200 date1 = 2456165.5;
6201 date2 = 0.401182685;
6202
6203 jauApcg13(date1, date2, astrom);
6204
6205 vvd(astrom.pmt, 12.65133794027378508, 1e-11,
6206 "jauApcg13", "pmt");
6207 vvd(astrom.eb[0], 0.9013108747340644755, 1e-12,
6208 "jauApcg13", "eb(1)");
6209 vvd(astrom.eb[1], -0.4174026640406119957, 1e-12,
6210 "jauApcg13", "eb(2)");
6211 vvd(astrom.eb[2], -0.1809822877867817771, 1e-12,
6212 "jauApcg13", "eb(3)");
6213 vvd(astrom.eh[0], 0.8940025429255499549, 1e-12,
6214 "jauApcg13", "eh(1)");
6215 vvd(astrom.eh[1], -0.4110930268331896318, 1e-12,
6216 "jauApcg13", "eh(2)");
6217 vvd(astrom.eh[2], -0.1782189006019749850, 1e-12,
6218 "jauApcg13", "eh(3)");
6219 vvd(astrom.em, 1.010465295964664178, 1e-12,
6220 "jauApcg13", "em");
6221 vvd(astrom.v[0], 0.4289638912941341125e-4, 1e-16,
6222 "jauApcg13", "v(1)");
6223 vvd(astrom.v[1], 0.8115034032405042132e-4, 1e-16,
6224 "jauApcg13", "v(2)");
6225 vvd(astrom.v[2], 0.3517555135536470279e-4, 1e-16,
6226 "jauApcg13", "v(3)");
6227 vvd(astrom.bm1, 0.9999999951686013142, 1e-12,
6228 "jauApcg13", "bm1");
6229 vvd(astrom.bpn[0][0], 1.0, 0.0,
6230 "jauApcg13", "bpn(1,1)");
6231 vvd(astrom.bpn[1][0], 0.0, 0.0,
6232 "jauApcg13", "bpn(2,1)");
6233 vvd(astrom.bpn[2][0], 0.0, 0.0,
6234 "jauApcg13", "bpn(3,1)");
6235 vvd(astrom.bpn[0][1], 0.0, 0.0,
6236 "jauApcg13", "bpn(1,2)");
6237 vvd(astrom.bpn[1][1], 1.0, 0.0,
6238 "jauApcg13", "bpn(2,2)");
6239 vvd(astrom.bpn[2][1], 0.0, 0.0,
6240 "jauApcg13", "bpn(3,2)");
6241 vvd(astrom.bpn[0][2], 0.0, 0.0,
6242 "jauApcg13", "bpn(1,3)");
6243 vvd(astrom.bpn[1][2], 0.0, 0.0,
6244 "jauApcg13", "bpn(2,3)");
6245 vvd(astrom.bpn[2][2], 1.0, 0.0,
6246 "jauApcg13", "bpn(3,3)");
6247
6248 }
6249 @Test
6250 public void t_apci()
6251
6252
6253
6254
6255
6256
6257
6258
6259
6260
6261
6262 {
6263 double date1, date2, ebpv[][] = new double[2][3], ehp[] = new double[3], x, y, s;
6264 Astrom astrom = new Astrom() ;
6265
6266
6267 date1 = 2456165.5;
6268 date2 = 0.401182685;
6269 ebpv[0][0] = 0.901310875;
6270 ebpv[0][1] = -0.417402664;
6271 ebpv[0][2] = -0.180982288;
6272 ebpv[1][0] = 0.00742727954;
6273 ebpv[1][1] = 0.0140507459;
6274 ebpv[1][2] = 0.00609045792;
6275 ehp[0] = 0.903358544;
6276 ehp[1] = -0.415395237;
6277 ehp[2] = -0.180084014;
6278 x = 0.0013122272;
6279 y = -2.92808623e-5;
6280 s = 3.05749468e-8;
6281
6282 jauApci(date1, date2, ebpv, ehp, x, y, s, astrom);
6283
6284 vvd(astrom.pmt, 12.65133794027378508, 1e-11,
6285 "jauApci", "pmt");
6286 vvd(astrom.eb[0], 0.901310875, 1e-12,
6287 "jauApci", "eb(1)");
6288 vvd(astrom.eb[1], -0.417402664, 1e-12,
6289 "jauApci", "eb(2)");
6290 vvd(astrom.eb[2], -0.180982288, 1e-12,
6291 "jauApci", "eb(3)");
6292 vvd(astrom.eh[0], 0.8940025429324143045, 1e-12,
6293 "jauApci", "eh(1)");
6294 vvd(astrom.eh[1], -0.4110930268679817955, 1e-12,
6295 "jauApci", "eh(2)");
6296 vvd(astrom.eh[2], -0.1782189004872870264, 1e-12,
6297 "jauApci", "eh(3)");
6298 vvd(astrom.em, 1.010465295811013146, 1e-12,
6299 "jauApci", "em");
6300 vvd(astrom.v[0], 0.4289638913597693554e-4, 1e-16,
6301 "jauApci", "v(1)");
6302 vvd(astrom.v[1], 0.8115034051581320575e-4, 1e-16,
6303 "jauApci", "v(2)");
6304 vvd(astrom.v[2], 0.3517555136380563427e-4, 1e-16,
6305 "jauApci", "v(3)");
6306 vvd(astrom.bm1, 0.9999999951686012981, 1e-12,
6307 "jauApci", "bm1");
6308 vvd(astrom.bpn[0][0], 0.9999991390295159156, 1e-12,
6309 "jauApci", "bpn(1,1)");
6310 vvd(astrom.bpn[1][0], 0.4978650072505016932e-7, 1e-12,
6311 "jauApci", "bpn(2,1)");
6312 vvd(astrom.bpn[2][0], 0.1312227200000000000e-2, 1e-12,
6313 "jauApci", "bpn(3,1)");
6314 vvd(astrom.bpn[0][1], -0.1136336653771609630e-7, 1e-12,
6315 "jauApci", "bpn(1,2)");
6316 vvd(astrom.bpn[1][1], 0.9999999995713154868, 1e-12,
6317 "jauApci", "bpn(2,2)");
6318 vvd(astrom.bpn[2][1], -0.2928086230000000000e-4, 1e-12,
6319 "jauApci", "bpn(3,2)");
6320 vvd(astrom.bpn[0][2], -0.1312227200895260194e-2, 1e-12,
6321 "jauApci", "bpn(1,3)");
6322 vvd(astrom.bpn[1][2], 0.2928082217872315680e-4, 1e-12,
6323 "jauApci", "bpn(2,3)");
6324 vvd(astrom.bpn[2][2], 0.9999991386008323373, 1e-12,
6325 "jauApci", "bpn(3,3)");
6326
6327 }
6328
6329 @Test
6330 public void t_apci13()
6331
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341
6342 {
6343 double date1, date2, eo;
6344 Astrom astrom = new Astrom() ;
6345
6346
6347 date1 = 2456165.5;
6348 date2 = 0.401182685;
6349
6350 eo = jauApci13(date1, date2, astrom);
6351
6352 vvd(astrom.pmt, 12.65133794027378508, 1e-11,
6353 "jauApci13", "pmt");
6354 vvd(astrom.eb[0], 0.9013108747340644755, 1e-12,
6355 "jauApci13", "eb(1)");
6356 vvd(astrom.eb[1], -0.4174026640406119957, 1e-12,
6357 "jauApci13", "eb(2)");
6358 vvd(astrom.eb[2], -0.1809822877867817771, 1e-12,
6359 "jauApci13", "eb(3)");
6360 vvd(astrom.eh[0], 0.8940025429255499549, 1e-12,
6361 "jauApci13", "eh(1)");
6362 vvd(astrom.eh[1], -0.4110930268331896318, 1e-12,
6363 "jauApci13", "eh(2)");
6364 vvd(astrom.eh[2], -0.1782189006019749850, 1e-12,
6365 "jauApci13", "eh(3)");
6366 vvd(astrom.em, 1.010465295964664178, 1e-12,
6367 "jauApci13", "em");
6368 vvd(astrom.v[0], 0.4289638912941341125e-4, 1e-16,
6369 "jauApci13", "v(1)");
6370 vvd(astrom.v[1], 0.8115034032405042132e-4, 1e-16,
6371 "jauApci13", "v(2)");
6372 vvd(astrom.v[2], 0.3517555135536470279e-4, 1e-16,
6373 "jauApci13", "v(3)");
6374 vvd(astrom.bm1, 0.9999999951686013142, 1e-12,
6375 "jauApci13", "bm1");
6376 vvd(astrom.bpn[0][0], 0.9999992060376761710, 1e-12,
6377 "jauApci13", "bpn(1,1)");
6378 vvd(astrom.bpn[1][0], 0.4124244860106037157e-7, 1e-12,
6379 "jauApci13", "bpn(2,1)");
6380 vvd(astrom.bpn[2][0], 0.1260128571051709670e-2, 1e-12,
6381 "jauApci13", "bpn(3,1)");
6382 vvd(astrom.bpn[0][1], -0.1282291987222130690e-7, 1e-12,
6383 "jauApci13", "bpn(1,2)");
6384 vvd(astrom.bpn[1][1], 0.9999999997456835325, 1e-12,
6385 "jauApci13", "bpn(2,2)");
6386 vvd(astrom.bpn[2][1], -0.2255288829420524935e-4, 1e-12,
6387 "jauApci13", "bpn(3,2)");
6388 vvd(astrom.bpn[0][2], -0.1260128571661374559e-2, 1e-12,
6389 "jauApci13", "bpn(1,3)");
6390 vvd(astrom.bpn[1][2], 0.2255285422953395494e-4, 1e-12,
6391 "jauApci13", "bpn(2,3)");
6392 vvd(astrom.bpn[2][2], 0.9999992057833604343, 1e-12,
6393 "jauApci13", "bpn(3,3)");
6394 vvd(eo, -0.2900618712657375647e-2, 1e-12,
6395 "jauApci13", "eo");
6396
6397 }
6398
6399 @Test
6400 public void t_apco() throws JSOFAIllegalParameter, JSOFAInternalError
6401
6402
6403
6404
6405
6406
6407
6408
6409
6410
6411
6412 {
6413 double date1, date2, ebpv[][] = new double[2][3], ehp[] = new double[3], x, y, s,
6414 theta, elong, phi, hm, xp, yp, sp, refa, refb;
6415 Astrom astrom = new Astrom() ;
6416
6417
6418 date1 = 2456384.5;
6419 date2 = 0.970031644;
6420 ebpv[0][0] = -0.974170438;
6421 ebpv[0][1] = -0.211520082;
6422 ebpv[0][2] = -0.0917583024;
6423 ebpv[1][0] = 0.00364365824;
6424 ebpv[1][1] = -0.0154287319;
6425 ebpv[1][2] = -0.00668922024;
6426 ehp[0] = -0.973458265;
6427 ehp[1] = -0.209215307;
6428 ehp[2] = -0.0906996477;
6429 x = 0.0013122272;
6430 y = -2.92808623e-5;
6431 s = 3.05749468e-8;
6432 theta = 3.14540971;
6433 elong = -0.527800806;
6434 phi = -1.2345856;
6435 hm = 2738.0;
6436 xp = 2.47230737e-7;
6437 yp = 1.82640464e-6;
6438 sp = -3.01974337e-11;
6439 refa = 0.000201418779;
6440 refb = -2.36140831e-7;
6441
6442 jauApco(date1, date2, ebpv, ehp, x, y, s,
6443 theta, elong, phi, hm, xp, yp, sp,
6444 refa, refb, astrom);
6445
6446 vvd(astrom.pmt, 13.25248468622587269, 1e-11,
6447 "jauApco", "pmt");
6448 vvd(astrom.eb[0], -0.9741827110630322720, 1e-12,
6449 "jauApco", "eb(1)");
6450 vvd(astrom.eb[1], -0.2115130190135344832, 1e-12,
6451 "jauApco", "eb(2)");
6452 vvd(astrom.eb[2], -0.09179840186949532298, 1e-12,
6453 "jauApco", "eb(3)");
6454 vvd(astrom.eh[0], -0.9736425571689739035, 1e-12,
6455 "jauApco", "eh(1)");
6456 vvd(astrom.eh[1], -0.2092452125849330936, 1e-12,
6457 "jauApco", "eh(2)");
6458 vvd(astrom.eh[2], -0.09075578152243272599, 1e-12,
6459 "jauApco", "eh(3)");
6460 vvd(astrom.em, 0.9998233241709957653, 1e-12,
6461 "jauApco", "em");
6462 vvd(astrom.v[0], 0.2078704992916728762e-4, 1e-16,
6463 "jauApco", "v(1)");
6464 vvd(astrom.v[1], -0.8955360107151952319e-4, 1e-16,
6465 "jauApco", "v(2)");
6466 vvd(astrom.v[2], -0.3863338994288951082e-4, 1e-16,
6467 "jauApco", "v(3)");
6468 vvd(astrom.bm1, 0.9999999950277561236, 1e-12,
6469 "jauApco", "bm1");
6470 vvd(astrom.bpn[0][0], 0.9999991390295159156, 1e-12,
6471 "jauApco", "bpn(1,1)");
6472 vvd(astrom.bpn[1][0], 0.4978650072505016932e-7, 1e-12,
6473 "jauApco", "bpn(2,1)");
6474 vvd(astrom.bpn[2][0], 0.1312227200000000000e-2, 1e-12,
6475 "jauApco", "bpn(3,1)");
6476 vvd(astrom.bpn[0][1], -0.1136336653771609630e-7, 1e-12,
6477 "jauApco", "bpn(1,2)");
6478 vvd(astrom.bpn[1][1], 0.9999999995713154868, 1e-12,
6479 "jauApco", "bpn(2,2)");
6480 vvd(astrom.bpn[2][1], -0.2928086230000000000e-4, 1e-12,
6481 "jauApco", "bpn(3,2)");
6482 vvd(astrom.bpn[0][2], -0.1312227200895260194e-2, 1e-12,
6483 "jauApco", "bpn(1,3)");
6484 vvd(astrom.bpn[1][2], 0.2928082217872315680e-4, 1e-12,
6485 "jauApco", "bpn(2,3)");
6486 vvd(astrom.bpn[2][2], 0.9999991386008323373, 1e-12,
6487 "jauApco", "bpn(3,3)");
6488 vvd(astrom.along, -0.5278008060295995734, 1e-12,
6489 "jauApco", "along");
6490 vvd(astrom.xpl, 0.1133427418130752958e-5, 1e-17,
6491 "jauApco", "xpl");
6492 vvd(astrom.ypl, 0.1453347595780646207e-5, 1e-17,
6493 "jauApco", "ypl");
6494 vvd(astrom.sphi, -0.9440115679003211329, 1e-12,
6495 "jauApco", "sphi");
6496 vvd(astrom.cphi, 0.3299123514971474711, 1e-12,
6497 "jauApco", "cphi");
6498 vvd(astrom.diurab, 0, 0,
6499 "jauApco", "diurab");
6500 vvd(astrom.eral, 2.617608903970400427, 1e-12,
6501 "jauApco", "eral");
6502 vvd(astrom.refa, 0.2014187790000000000e-3, 1e-15,
6503 "jauApco", "refa");
6504 vvd(astrom.refb, -0.2361408310000000000e-6, 1e-18,
6505 "jauApco", "refb");
6506
6507 }
6508
6509
6510
6511 @Test
6512 public void t_apco13() throws JSOFAIllegalParameter, JSOFAInternalError
6513
6514
6515
6516
6517
6518
6519
6520
6521
6522
6523 {
6524 double utc1, utc2, dut1, elong, phi, hm, xp, yp,
6525 phpa, tc, rh, wl, eo;
6526 Astrom astrom = new Astrom() ;
6527
6528
6529 utc1 = 2456384.5;
6530 utc2 = 0.969254051;
6531 dut1 = 0.1550675;
6532 elong = -0.527800806;
6533 phi = -1.2345856;
6534 hm = 2738.0;
6535 xp = 2.47230737e-7;
6536 yp = 1.82640464e-6;
6537 phpa = 731.0;
6538 tc = 12.8;
6539 rh = 0.59;
6540 wl = 0.55;
6541
6542 eo = jauApco13(utc1, utc2, dut1, elong, phi, hm, xp, yp,
6543 phpa, tc, rh, wl, astrom);
6544
6545 vvd(astrom.pmt, 13.25248468622475727, 1e-11,
6546 "jauApco13", "pmt");
6547 vvd(astrom.eb[0], -0.9741827107320875162, 1e-12,
6548 "jauApco13", "eb(1)");
6549 vvd(astrom.eb[1], -0.2115130190489716682, 1e-12,
6550 "jauApco13", "eb(2)");
6551 vvd(astrom.eb[2], -0.09179840189496755339, 1e-12,
6552 "jauApco13", "eb(3)");
6553 vvd(astrom.eh[0], -0.9736425572586935247, 1e-12,
6554 "jauApco13", "eh(1)");
6555 vvd(astrom.eh[1], -0.2092452121603336166, 1e-12,
6556 "jauApco13", "eh(2)");
6557 vvd(astrom.eh[2], -0.09075578153885665295, 1e-12,
6558 "jauApco13", "eh(3)");
6559 vvd(astrom.em, 0.9998233240913898141, 1e-12,
6560 "jauApco13", "em");
6561 vvd(astrom.v[0], 0.2078704994520489246e-4, 1e-16,
6562 "jauApco13", "v(1)");
6563 vvd(astrom.v[1], -0.8955360133238868938e-4, 1e-16,
6564 "jauApco13", "v(2)");
6565 vvd(astrom.v[2], -0.3863338993055887398e-4, 1e-16,
6566 "jauApco13", "v(3)");
6567 vvd(astrom.bm1, 0.9999999950277561004, 1e-12,
6568 "jauApco13", "bm1");
6569 vvd(astrom.bpn[0][0], 0.9999991390295147999, 1e-12,
6570 "jauApco13", "bpn(1,1)");
6571 vvd(astrom.bpn[1][0], 0.4978650075315529277e-7, 1e-12,
6572 "jauApco13", "bpn(2,1)");
6573 vvd(astrom.bpn[2][0], 0.001312227200850293372, 1e-12,
6574 "jauApco13", "bpn(3,1)");
6575 vvd(astrom.bpn[0][1], -0.1136336652812486604e-7, 1e-12,
6576 "jauApco13", "bpn(1,2)");
6577 vvd(astrom.bpn[1][1], 0.9999999995713154865, 1e-12,
6578 "jauApco13", "bpn(2,2)");
6579 vvd(astrom.bpn[2][1], -0.2928086230975367296e-4, 1e-12,
6580 "jauApco13", "bpn(3,2)");
6581 vvd(astrom.bpn[0][2], -0.001312227201745553566, 1e-12,
6582 "jauApco13", "bpn(1,3)");
6583 vvd(astrom.bpn[1][2], 0.2928082218847679162e-4, 1e-12,
6584 "jauApco13", "bpn(2,3)");
6585 vvd(astrom.bpn[2][2], 0.9999991386008312212, 1e-12,
6586 "jauApco13", "bpn(3,3)");
6587 vvd(astrom.along, -0.5278008060295995733, 1e-12,
6588 "jauApco13", "along");
6589 vvd(astrom.xpl, 0.1133427418130752958e-5, 1e-17,
6590 "jauApco13", "xpl");
6591 vvd(astrom.ypl, 0.1453347595780646207e-5, 1e-17,
6592 "jauApco13", "ypl");
6593 vvd(astrom.sphi, -0.9440115679003211329, 1e-12,
6594 "jauApco13", "sphi");
6595 vvd(astrom.cphi, 0.3299123514971474711, 1e-12,
6596 "jauApco13", "cphi");
6597 vvd(astrom.diurab, 0, 0,
6598 "jauApco13", "diurab");
6599 vvd(astrom.eral, 2.617608909189664000, 1e-12,
6600 "jauApco13", "eral");
6601 vvd(astrom.refa, 0.2014187785940396921e-3, 1e-15,
6602 "jauApco13", "refa");
6603 vvd(astrom.refb, -0.2361408314943696227e-6, 1e-18,
6604 "jauApco13", "refb");
6605 vvd(eo, -0.003020548354802412839, 1e-14,
6606 "jauApco13", "eo");
6607
6608 }
6609
6610 @Test
6611 public void t_apcs()
6612
6613
6614
6615
6616
6617
6618
6619
6620
6621
6622 {
6623 double date1, date2, pv[][] = new double[2][3], ebpv[][] = new double[2][3], ehp[] = new double[3];
6624 Astrom astrom = new Astrom() ;
6625
6626
6627 date1 = 2456384.5;
6628 date2 = 0.970031644;
6629 pv[0][0] = -1836024.09;
6630 pv[0][1] = 1056607.72;
6631 pv[0][2] = -5998795.26;
6632 pv[1][0] = -77.0361767;
6633 pv[1][1] = -133.310856;
6634 pv[1][2] = 0.0971855934;
6635 ebpv[0][0] = -0.974170438;
6636 ebpv[0][1] = -0.211520082;
6637 ebpv[0][2] = -0.0917583024;
6638 ebpv[1][0] = 0.00364365824;
6639 ebpv[1][1] = -0.0154287319;
6640 ebpv[1][2] = -0.00668922024;
6641 ehp[0] = -0.973458265;
6642 ehp[1] = -0.209215307;
6643 ehp[2] = -0.0906996477;
6644
6645 jauApcs(date1, date2, pv, ebpv, ehp, astrom);
6646
6647 vvd(astrom.pmt, 13.25248468622587269, 1e-11,
6648 "jauApcs", "pmt");
6649 vvd(astrom.eb[0], -0.9741827110629881886, 1e-12,
6650 "jauApcs", "eb(1)");
6651 vvd(astrom.eb[1], -0.2115130190136415986, 1e-12,
6652 "jauApcs", "eb(2)");
6653 vvd(astrom.eb[2], -0.09179840186954412099, 1e-12,
6654 "jauApcs", "eb(3)");
6655 vvd(astrom.eh[0], -0.9736425571689454706, 1e-12,
6656 "jauApcs", "eh(1)");
6657 vvd(astrom.eh[1], -0.2092452125850435930, 1e-12,
6658 "jauApcs", "eh(2)");
6659 vvd(astrom.eh[2], -0.09075578152248299218, 1e-12,
6660 "jauApcs", "eh(3)");
6661 vvd(astrom.em, 0.9998233241709796859, 1e-12,
6662 "jauApcs", "em");
6663 vvd(astrom.v[0], 0.2078704993282685510e-4, 1e-16,
6664 "jauApcs", "v(1)");
6665 vvd(astrom.v[1], -0.8955360106989405683e-4, 1e-16,
6666 "jauApcs", "v(2)");
6667 vvd(astrom.v[2], -0.3863338994289409097e-4, 1e-16,
6668 "jauApcs", "v(3)");
6669 vvd(astrom.bm1, 0.9999999950277561237, 1e-12,
6670 "jauApcs", "bm1");
6671 vvd(astrom.bpn[0][0], 1, 0,
6672 "jauApcs", "bpn(1,1)");
6673 vvd(astrom.bpn[1][0], 0, 0,
6674 "jauApcs", "bpn(2,1)");
6675 vvd(astrom.bpn[2][0], 0, 0,
6676 "jauApcs", "bpn(3,1)");
6677 vvd(astrom.bpn[0][1], 0, 0,
6678 "jauApcs", "bpn(1,2)");
6679 vvd(astrom.bpn[1][1], 1, 0,
6680 "jauApcs", "bpn(2,2)");
6681 vvd(astrom.bpn[2][1], 0, 0,
6682 "jauApcs", "bpn(3,2)");
6683 vvd(astrom.bpn[0][2], 0, 0,
6684 "jauApcs", "bpn(1,3)");
6685 vvd(astrom.bpn[1][2], 0, 0,
6686 "jauApcs", "bpn(2,3)");
6687 vvd(astrom.bpn[2][2], 1, 0,
6688 "jauApcs", "bpn(3,3)");
6689
6690 }
6691
6692 @Test
6693 public void t_apcs13()
6694
6695
6696
6697
6698
6699
6700
6701
6702
6703
6704 {
6705 double date1, date2, pv[][] = new double[2][3];
6706 Astrom astrom = new Astrom() ;
6707
6708
6709 date1 = 2456165.5;
6710 date2 = 0.401182685;
6711 pv[0][0] = -6241497.16;
6712 pv[0][1] = 401346.896;
6713 pv[0][2] = -1251136.04;
6714 pv[1][0] = -29.264597;
6715 pv[1][1] = -455.021831;
6716 pv[1][2] = 0.0266151194;
6717
6718 jauApcs13(date1, date2, pv, astrom);
6719
6720 vvd(astrom.pmt, 12.65133794027378508, 1e-11,
6721 "jauApcs13", "pmt");
6722 vvd(astrom.eb[0], 0.9012691529025250644, 1e-12,
6723 "jauApcs13", "eb(1)");
6724 vvd(astrom.eb[1], -0.4173999812023194317, 1e-12,
6725 "jauApcs13", "eb(2)");
6726 vvd(astrom.eb[2], -0.1809906511146429670, 1e-12,
6727 "jauApcs13", "eb(3)");
6728 vvd(astrom.eh[0], 0.8939939101760130792, 1e-12,
6729 "jauApcs13", "eh(1)");
6730 vvd(astrom.eh[1], -0.4111053891734021478, 1e-12,
6731 "jauApcs13", "eh(2)");
6732 vvd(astrom.eh[2], -0.1782336880636997374, 1e-12,
6733 "jauApcs13", "eh(3)");
6734 vvd(astrom.em, 1.010428384373491095, 1e-12,
6735 "jauApcs13", "em");
6736 vvd(astrom.v[0], 0.4279877294121697570e-4, 1e-16,
6737 "jauApcs13", "v(1)");
6738 vvd(astrom.v[1], 0.7963255087052120678e-4, 1e-16,
6739 "jauApcs13", "v(2)");
6740 vvd(astrom.v[2], 0.3517564013384691531e-4, 1e-16,
6741 "jauApcs13", "v(3)");
6742 vvd(astrom.bm1, 0.9999999952947980978, 1e-12,
6743 "jauApcs13", "bm1");
6744 vvd(astrom.bpn[0][0], 1, 0,
6745 "jauApcs13", "bpn(1,1)");
6746 vvd(astrom.bpn[1][0], 0, 0,
6747 "jauApcs13", "bpn(2,1)");
6748 vvd(astrom.bpn[2][0], 0, 0,
6749 "jauApcs13", "bpn(3,1)");
6750 vvd(astrom.bpn[0][1], 0, 0,
6751 "jauApcs13", "bpn(1,2)");
6752 vvd(astrom.bpn[1][1], 1, 0,
6753 "jauApcs13", "bpn(2,2)");
6754 vvd(astrom.bpn[2][1], 0, 0,
6755 "jauApcs13", "bpn(3,2)");
6756 vvd(astrom.bpn[0][2], 0, 0,
6757 "jauApcs13", "bpn(1,3)");
6758 vvd(astrom.bpn[1][2], 0, 0,
6759 "jauApcs13", "bpn(2,3)");
6760 vvd(astrom.bpn[2][2], 1, 0,
6761 "jauApcs13", "bpn(3,3)");
6762
6763 }
6764 @Test
6765 public void t_aper()
6766
6767
6768
6769
6770
6771
6772
6773
6774
6775
6776 {
6777 double theta;
6778 Astrom astrom = new Astrom() ;
6779
6780
6781 astrom.along = 1.234;
6782 theta = 5.678;
6783
6784 jauAper(theta, astrom);
6785
6786 vvd(astrom.eral, 6.912000000000000000, 1e-12,
6787 "jauAper", "pmt");
6788
6789 }
6790 @Test
6791 public void t_aper13()
6792
6793
6794
6795
6796
6797
6798
6799
6800
6801
6802 {
6803 double ut11, ut12;
6804 Astrom astrom = new Astrom() ;
6805
6806
6807 astrom.along = 1.234;
6808 ut11 = 2456165.5;
6809 ut12 = 0.401182685;
6810
6811 jauAper13(ut11, ut12, astrom);
6812
6813 vvd(astrom.eral, 3.316236661789694933, 1e-12,
6814 "jauAper13", "pmt");
6815
6816 }
6817 @Test
6818 public void t_apio() throws JSOFAIllegalParameter, JSOFAInternalError
6819
6820
6821
6822
6823
6824
6825
6826
6827
6828
6829 {
6830 double sp, theta, elong, phi, hm, xp, yp, refa, refb;
6831 Astrom astrom = new Astrom() ;
6832
6833
6834 sp = -3.01974337e-11;
6835 theta = 3.14540971;
6836 elong = -0.527800806;
6837 phi = -1.2345856;
6838 hm = 2738.0;
6839 xp = 2.47230737e-7;
6840 yp = 1.82640464e-6;
6841 refa = 0.000201418779;
6842 refb = -2.36140831e-7;
6843
6844 jauApio(sp, theta, elong, phi, hm, xp, yp, refa, refb, astrom);
6845
6846 vvd(astrom.along, -0.5278008060295995734, 1e-12,
6847 "jauApio", "along");
6848 vvd(astrom.xpl, 0.1133427418130752958e-5, 1e-17,
6849 "jauApio", "xpl");
6850 vvd(astrom.ypl, 0.1453347595780646207e-5, 1e-17,
6851 "jauApio", "ypl");
6852 vvd(astrom.sphi, -0.9440115679003211329, 1e-12,
6853 "jauApio", "sphi");
6854 vvd(astrom.cphi, 0.3299123514971474711, 1e-12,
6855 "jauApio", "cphi");
6856 vvd(astrom.diurab, 0.5135843661699913529e-6, 1e-12,
6857 "jauApio", "diurab");
6858 vvd(astrom.eral, 2.617608903970400427, 1e-12,
6859 "jauApio", "eral");
6860 vvd(astrom.refa, 0.2014187790000000000e-3, 1e-15,
6861 "jauApio", "refa");
6862 vvd(astrom.refb, -0.2361408310000000000e-6, 1e-18,
6863 "jauApio", "refb");
6864
6865 }
6866
6867 @Test
6868 public void t_apio13() throws JSOFAIllegalParameter, JSOFAInternalError
6869
6870
6871
6872
6873
6874
6875
6876
6877
6878
6879 {
6880 double utc1, utc2, dut1, elong, phi, hm, xp, yp, phpa, tc, rh, wl;
6881
6882 Astrom astrom = new Astrom() ;
6883
6884
6885 utc1 = 2456384.5;
6886 utc2 = 0.969254051;
6887 dut1 = 0.1550675;
6888 elong = -0.527800806;
6889 phi = -1.2345856;
6890 hm = 2738.0;
6891 xp = 2.47230737e-7;
6892 yp = 1.82640464e-6;
6893 phpa = 731.0;
6894 tc = 12.8;
6895 rh = 0.59;
6896 wl = 0.55;
6897
6898 jauApio13(utc1, utc2, dut1, elong, phi, hm, xp, yp,
6899 phpa, tc, rh, wl, astrom);
6900
6901 vvd(astrom.along, -0.5278008060295995733, 1e-12,
6902 "jauApio13", "along");
6903 vvd(astrom.xpl, 0.1133427418130752958e-5, 1e-17,
6904 "jauApio13", "xpl");
6905 vvd(astrom.ypl, 0.1453347595780646207e-5, 1e-17,
6906 "jauApio13", "ypl");
6907 vvd(astrom.sphi, -0.9440115679003211329, 1e-12,
6908 "jauApio13", "sphi");
6909 vvd(astrom.cphi, 0.3299123514971474711, 1e-12,
6910 "jauApio13", "cphi");
6911 vvd(astrom.diurab, 0.5135843661699913529e-6, 1e-12,
6912 "jauApio13", "diurab");
6913 vvd(astrom.eral, 2.617608909189664000, 1e-12,
6914 "jauApio13", "eral");
6915 vvd(astrom.refa, 0.2014187785940396921e-3, 1e-15,
6916 "jauApio13", "refa");
6917 vvd(astrom.refb, -0.2361408314943696227e-6, 1e-18,
6918 "jauApio13", "refb");
6919
6920 }
6921
6922 @Test
6923 public void t_atci13()
6924
6925
6926
6927
6928
6929
6930
6931
6932
6933
6934 {
6935 double rc, dc, pr, pd, px, rv, date1, date2;
6936
6937
6938 rc = 2.71;
6939 dc = 0.174;
6940 pr = 1e-5;
6941 pd = 5e-6;
6942 px = 0.1;
6943 rv = 55.0;
6944 date1 = 2456165.5;
6945 date2 = 0.401182685;
6946
6947 SphericalCoordinateEO coe = jauAtci13(rc, dc, pr, pd, px, rv, date1, date2);
6948
6949 vvd(coe.pos.alpha, 2.710121572968696744, 1e-12,
6950 "jauAtci13", "ri");
6951 vvd(coe.pos.delta, 0.1729371367219539137, 1e-12,
6952 "jauAtci13", "di");
6953 vvd(coe.eo, -0.002900618712657375647, 1e-14,
6954 "jauAtci13", "eo");
6955
6956 }
6957
6958 @Test
6959 public void t_atciq()
6960
6961
6962
6963
6964
6965
6966
6967
6968
6969
6970 {
6971 double date1, date2, rc, dc, pr, pd, px, rv;
6972 Astrom astrom = new Astrom() ;
6973
6974 date1 = 2456165.5;
6975 date2 = 0.401182685;
6976 jauApci13(date1, date2, astrom);
6977 rc = 2.71;
6978 dc = 0.174;
6979 pr = 1e-5;
6980 pd = 5e-6;
6981 px = 0.1;
6982 rv = 55.0;
6983
6984 SphericalCoordinate co = jauAtciq(rc, dc, pr, pd, px, rv, astrom);
6985
6986 vvd(co.alpha, 2.710121572968696744, 1e-12, "jauAtciq", "ri");
6987 vvd(co.delta, 0.1729371367219539137, 1e-12, "jauAtciq", "di");
6988
6989 }
6990
6991
6992
6993 @Test
6994 public void t_atciqn()
6995
6996
6997
6998
6999
7000
7001
7002
7003
7004
7005 {
7006 Ldbody b[] = {new Ldbody(),new Ldbody(),new Ldbody()};
7007 double date1, date2, rc, dc, pr, pd, px, rv;
7008 Astrom astrom = new Astrom() ;
7009
7010 date1 = 2456165.5;
7011 date2 = 0.401182685;
7012 jauApci13(date1, date2, astrom);
7013 rc = 2.71;
7014 dc = 0.174;
7015 pr = 1e-5;
7016 pd = 5e-6;
7017 px = 0.1;
7018 rv = 55.0;
7019 b[0].bm = 0.00028574;
7020 b[0].dl = 3e-10;
7021 b[0].pv[0][0] = -7.81014427;
7022 b[0].pv[0][1] = -5.60956681;
7023 b[0].pv[0][2] = -1.98079819;
7024 b[0].pv[1][0] = 0.0030723249;
7025 b[0].pv[1][1] = -0.00406995477;
7026 b[0].pv[1][2] = -0.00181335842;
7027 b[1].bm = 0.00095435;
7028 b[1].dl = 3e-9;
7029 b[1].pv[0][0] = 0.738098796;
7030 b[1].pv[0][1] = 4.63658692;
7031 b[1].pv[0][2] = 1.9693136;
7032 b[1].pv[1][0] = -0.00755816922;
7033 b[1].pv[1][1] = 0.00126913722;
7034 b[1].pv[1][2] = 0.000727999001;
7035 b[2].bm = 1.0;
7036 b[2].dl = 6e-6;
7037 b[2].pv[0][0] = -0.000712174377;
7038 b[2].pv[0][1] = -0.00230478303;
7039 b[2].pv[0][2] = -0.00105865966;
7040 b[2].pv[1][0] = 6.29235213e-6;
7041 b[2].pv[1][1] = -3.30888387e-7;
7042 b[2].pv[1][2] = -2.96486623e-7;
7043
7044 SphericalCoordinate co = jauAtciqn( rc, dc, pr, pd, px, rv, astrom, 3, b);
7045
7046 vvd(co.alpha, 2.710122008104983335, 1e-12, "jauAtciqn", "ri");
7047 vvd(co.delta, 0.1729371916492767821, 1e-12, "jauAtciqn", "di");
7048
7049 }
7050 @Test
7051 public void t_atciqz()
7052
7053
7054
7055
7056
7057
7058
7059
7060
7061
7062 {
7063 double date1, date2, rc, dc;
7064 Astrom astrom = new Astrom() ;
7065
7066
7067 date1 = 2456165.5;
7068 date2 = 0.401182685;
7069 jauApci13(date1, date2, astrom);
7070 rc = 2.71;
7071 dc = 0.174;
7072
7073 SphericalCoordinate co = jauAtciqz(rc, dc, astrom);
7074
7075 vvd(co.alpha, 2.709994899247256984, 1e-12, "jauAtciqz", "ri");
7076 vvd(co.delta, 0.1728740720984931891, 1e-12, "jauAtciqz", "di");
7077
7078 }
7079
7080 @Test
7081 public void t_atco13() throws JSOFAIllegalParameter, JSOFAInternalError
7082
7083
7084
7085
7086
7087
7088
7089
7090
7091
7092 {
7093 double rc, dc, pr, pd, px, rv, utc1, utc2, dut1,
7094 elong, phi, hm, xp, yp, phpa, tc, rh, wl
7095 ;
7096
7097
7098 rc = 2.71;
7099 dc = 0.174;
7100 pr = 1e-5;
7101 pd = 5e-6;
7102 px = 0.1;
7103 rv = 55.0;
7104 utc1 = 2456384.5;
7105 utc2 = 0.969254051;
7106 dut1 = 0.1550675;
7107 elong = -0.527800806;
7108 phi = -1.2345856;
7109 hm = 2738.0;
7110 xp = 2.47230737e-7;
7111 yp = 1.82640464e-6;
7112 phpa = 731.0;
7113 tc = 12.8;
7114 rh = 0.59;
7115 wl = 0.55;
7116
7117 ObservedPositionEO ope = jauAtco13(rc, dc, pr, pd, px, rv,
7118 utc1, utc2, dut1, elong, phi, hm, xp, yp,
7119 phpa, tc, rh, wl);
7120
7121 vvd(ope.op.aob, 0.9251774485485515207e-1, 1e-12, "jauAtco13", "aob");
7122 vvd(ope.op.zob, 1.407661405256499357, 1e-12, "jauAtco13", "zob");
7123 vvd(ope.op.hob, -0.9265154431529724692e-1, 1e-12, "jauAtco13", "hob");
7124 vvd(ope.op.dob, 0.1716626560072526200, 1e-12, "jauAtco13", "dob");
7125 vvd(ope.op.rob, 2.710260453504961012, 1e-12, "jauAtco13", "rob");
7126 vvd(ope.eo, -0.003020548354802412839, 1e-14, "jauAtco13", "eo");
7127
7128 }
7129
7130 @Test
7131 public void t_atic13()
7132
7133
7134
7135
7136
7137
7138
7139
7140
7141
7142 {
7143 double ri, di, date1, date2;
7144
7145
7146 ri = 2.710121572969038991;
7147 di = 0.1729371367218230438;
7148 date1 = 2456165.5;
7149 date2 = 0.401182685;
7150
7151 SphericalCoordinateEO oe = jauAtic13(ri, di, date1, date2);
7152
7153 vvd(oe.pos.alpha, 2.710126504531716819, 1e-12, "jauAtic13", "rc");
7154 vvd(oe.pos.delta, 0.1740632537627034482, 1e-12, "jauAtic13", "dc");
7155 vvd(oe.eo, -0.002900618712657375647, 1e-14, "jauAtic13", "eo");
7156
7157 }
7158
7159 @Test
7160 public void t_aticq()
7161
7162
7163
7164
7165
7166
7167
7168
7169
7170
7171 {
7172 double date1, date2, ri, di;
7173 Astrom astrom = new Astrom() ;
7174
7175
7176 date1 = 2456165.5;
7177 date2 = 0.401182685;
7178 jauApci13(date1, date2, astrom);
7179 ri = 2.710121572969038991;
7180 di = 0.1729371367218230438;
7181
7182 SphericalCoordinate co = jauAticq(ri, di, astrom);
7183
7184 vvd(co.alpha, 2.710126504531716819, 1e-12, "jauAticq", "rc");
7185 vvd(co.delta, 0.1740632537627034482, 1e-12, "jauAticq", "dc");
7186
7187 }
7188
7189 @Test
7190 public void t_aticqn()
7191
7192
7193
7194
7195
7196
7197
7198
7199
7200
7201 {
7202 double date1, date2, ri, di;
7203 Ldbody b[] = {new Ldbody(),new Ldbody(),new Ldbody()};
7204 Astrom astrom = new Astrom() ;
7205
7206
7207 date1 = 2456165.5;
7208 date2 = 0.401182685;
7209 jauApci13(date1, date2, astrom);
7210 ri = 2.709994899247599271;
7211 di = 0.1728740720983623469;
7212 b[0].bm = 0.00028574;
7213 b[0].dl = 3e-10;
7214 b[0].pv[0][0] = -7.81014427;
7215 b[0].pv[0][1] = -5.60956681;
7216 b[0].pv[0][2] = -1.98079819;
7217 b[0].pv[1][0] = 0.0030723249;
7218 b[0].pv[1][1] = -0.00406995477;
7219 b[0].pv[1][2] = -0.00181335842;
7220 b[1].bm = 0.00095435;
7221 b[1].dl = 3e-9;
7222 b[1].pv[0][0] = 0.738098796;
7223 b[1].pv[0][1] = 4.63658692;
7224 b[1].pv[0][2] = 1.9693136;
7225 b[1].pv[1][0] = -0.00755816922;
7226 b[1].pv[1][1] = 0.00126913722;
7227 b[1].pv[1][2] = 0.000727999001;
7228 b[2].bm = 1.0;
7229 b[2].dl = 6e-6;
7230 b[2].pv[0][0] = -0.000712174377;
7231 b[2].pv[0][1] = -0.00230478303;
7232 b[2].pv[0][2] = -0.00105865966;
7233 b[2].pv[1][0] = 6.29235213e-6;
7234 b[2].pv[1][1] = -3.30888387e-7;
7235 b[2].pv[1][2] = -2.96486623e-7;
7236
7237 SphericalCoordinate co = jauAticqn(ri, di, astrom, 3, b);
7238
7239 vvd(co.alpha, 2.709999575033027333, 1e-12, "jauAtciqn", "rc");
7240 vvd(co.delta, 0.1739999656316469990, 1e-12, "jauAtciqn", "dc");
7241
7242 }
7243
7244 @Test
7245 public void t_atio13() throws JSOFAIllegalParameter, JSOFAInternalError
7246
7247
7248
7249
7250
7251
7252
7253
7254
7255
7256 {
7257 double ri, di, utc1, utc2, dut1, elong, phi, hm, xp, yp,
7258 phpa, tc, rh, wl;
7259
7260
7261
7262 ri = 2.710121572969038991;
7263 di = 0.1729371367218230438;
7264 utc1 = 2456384.5;
7265 utc2 = 0.969254051;
7266 dut1 = 0.1550675;
7267 elong = -0.527800806;
7268 phi = -1.2345856;
7269 hm = 2738.0;
7270 xp = 2.47230737e-7;
7271 yp = 1.82640464e-6;
7272 phpa = 731.0;
7273 tc = 12.8;
7274 rh = 0.59;
7275 wl = 0.55;
7276
7277 ObservedPosition o = jauAtio13(ri, di, utc1, utc2, dut1, elong, phi, hm,
7278 xp, yp, phpa, tc, rh, wl
7279 );
7280
7281 vvd(o.aob, 0.9233952224895122499e-1, 1e-12, "jauAtio13", "aob");
7282 vvd(o.zob, 1.407758704513549991, 1e-12, "jauAtio13", "zob");
7283 vvd(o.hob, -0.9247619879881698140e-1, 1e-12, "jauAtio13", "hob");
7284 vvd(o.dob, 0.1717653435756234676, 1e-12, "jauAtio13", "dob");
7285 vvd(o.rob, 2.710085107988480746, 1e-12, "jauAtio13", "rob");
7286
7287 }
7288
7289 @Test
7290 public void t_atioq() throws JSOFAIllegalParameter, JSOFAInternalError
7291
7292
7293
7294
7295
7296
7297
7298
7299
7300
7301 {
7302 double utc1, utc2, dut1, elong, phi, hm, xp, yp,
7303 phpa, tc, rh, wl, ri, di;
7304 Astrom astrom = new Astrom() ;
7305
7306
7307 utc1 = 2456384.5;
7308 utc2 = 0.969254051;
7309 dut1 = 0.1550675;
7310 elong = -0.527800806;
7311 phi = -1.2345856;
7312 hm = 2738.0;
7313 xp = 2.47230737e-7;
7314 yp = 1.82640464e-6;
7315 phpa = 731.0;
7316 tc = 12.8;
7317 rh = 0.59;
7318 wl = 0.55;
7319 jauApio13(utc1, utc2, dut1, elong, phi, hm, xp, yp,
7320 phpa, tc, rh, wl, astrom);
7321 ri = 2.710121572969038991;
7322 di = 0.1729371367218230438;
7323
7324 ObservedPosition o = jauAtioq(ri, di, astrom);
7325
7326 vvd(o.aob, 0.9233952224895122499e-1, 1e-12, "jauAtioq", "aob");
7327 vvd(o.zob, 1.407758704513549991, 1e-12, "jauAtioq", "zob");
7328 vvd(o.hob, -0.9247619879881698140e-1, 1e-12, "jauAtioq", "hob");
7329 vvd(o.dob, 0.1717653435756234676, 1e-12, "jauAtioq", "dob");
7330 vvd(o.rob, 2.710085107988480746, 1e-12, "jauAtioq", "rob");
7331
7332 }
7333
7334 @Test
7335 public void t_atoc13() throws JSOFAIllegalParameter, JSOFAInternalError
7336
7337
7338
7339
7340
7341
7342
7343
7344
7345
7346 {
7347 double utc1, utc2, dut1,
7348 elong, phi, hm, xp, yp, phpa, tc, rh, wl,
7349 ob1, ob2;
7350
7351
7352 utc1 = 2456384.5;
7353 utc2 = 0.969254051;
7354 dut1 = 0.1550675;
7355 elong = -0.527800806;
7356 phi = -1.2345856;
7357 hm = 2738.0;
7358 xp = 2.47230737e-7;
7359 yp = 1.82640464e-6;
7360 phpa = 731.0;
7361 tc = 12.8;
7362 rh = 0.59;
7363 wl = 0.55;
7364
7365 ob1 = 2.710085107986886201;
7366 ob2 = 0.1717653435758265198;
7367 SphericalCoordinate oc = jauAtoc13 ( "R", ob1, ob2, utc1, utc2, dut1,
7368 elong, phi, hm, xp, yp, phpa, tc, rh, wl
7369 );
7370 vvd(oc.alpha, 2.709956744659136129, 1e-12, "jauAtoc13", "R/rc");
7371 vvd(oc.delta, 0.1741696500898471362, 1e-12, "jauAtoc13", "R/dc");
7372
7373 ob1 = -0.09247619879782006106;
7374 ob2 = 0.1717653435758265198;
7375 oc = jauAtoc13 ( "H", ob1, ob2, utc1, utc2, dut1,
7376 elong, phi, hm, xp, yp, phpa, tc, rh, wl);
7377 vvd(oc.alpha, 2.709956744659734086, 1e-12, "jauAtoc13", "H/rc");
7378 vvd(oc.delta, 0.1741696500898471362, 1e-12, "jauAtoc13", "H/dc");
7379
7380 ob1 = 0.09233952224794989993;
7381 ob2 = 1.407758704513722461;
7382 oc = jauAtoc13 ( "A", ob1, ob2, utc1, utc2, dut1,
7383 elong, phi, hm, xp, yp, phpa, tc, rh, wl);
7384 vvd(oc.alpha, 2.709956744659734086, 1e-12, "jauAtoc13", "A/rc");
7385 vvd(oc.delta, 0.1741696500898471366, 1e-12, "jauAtoc13", "A/dc");
7386
7387 }
7388
7389 @Test
7390 public void t_atoi13() throws JSOFAIllegalParameter, JSOFAInternalError
7391
7392
7393
7394
7395
7396
7397
7398
7399
7400
7401 {
7402 double utc1, utc2, dut1, elong, phi, hm, xp, yp, phpa, tc, rh, wl,
7403 ob1, ob2;
7404
7405
7406
7407 utc1 = 2456384.5;
7408 utc2 = 0.969254051;
7409 dut1 = 0.1550675;
7410 elong = -0.527800806;
7411 phi = -1.2345856;
7412 hm = 2738.0;
7413 xp = 2.47230737e-7;
7414 yp = 1.82640464e-6;
7415 phpa = 731.0;
7416 tc = 12.8;
7417 rh = 0.59;
7418 wl = 0.55;
7419
7420 ob1 = 2.710085107986886201;
7421 ob2 = 0.1717653435758265198;
7422 SphericalCoordinate co = jauAtoi13( "R", ob1, ob2, utc1, utc2, dut1,
7423 elong, phi, hm, xp, yp, phpa, tc, rh, wl);
7424 vvd(co.alpha, 2.710121574447540810, 1e-12, "jauAtoi13", "R/ri");
7425 vvd(co.delta, 0.1729371839116608778, 1e-12, "jauAtoi13", "R/di");
7426
7427 ob1 = -0.09247619879782006106;
7428 ob2 = 0.1717653435758265198;
7429 co = jauAtoi13( "H", ob1, ob2, utc1, utc2, dut1,
7430 elong, phi, hm, xp, yp, phpa, tc, rh, wl);
7431 vvd(co.alpha, 2.710121574448138676, 1e-12, "jauAtoi13", "H/ri");
7432 vvd(co.delta, 0.1729371839116608778, 1e-12, "jauAtoi13", "H/di");
7433
7434 ob1 = 0.09233952224794989993;
7435 ob2 = 1.407758704513722461;
7436 co = jauAtoi13( "A", ob1, ob2, utc1, utc2, dut1,
7437 elong, phi, hm, xp, yp, phpa, tc, rh, wl);
7438 vvd(co.alpha, 2.710121574448138676, 1e-12, "jauAtoi13", "A/ri");
7439 vvd(co.delta, 0.1729371839116608781, 1e-12, "jauAtoi13", "A/di");
7440
7441 }
7442
7443 @Test
7444 public void t_atoiq() throws JSOFAIllegalParameter, JSOFAInternalError
7445
7446
7447
7448
7449
7450
7451
7452
7453
7454
7455 {
7456 double utc1, utc2, dut1, elong, phi, hm, xp, yp, phpa, tc, rh, wl,
7457 ob1, ob2;
7458 Astrom astrom = new Astrom() ;
7459
7460
7461 utc1 = 2456384.5;
7462 utc2 = 0.969254051;
7463 dut1 = 0.1550675;
7464 elong = -0.527800806;
7465 phi = -1.2345856;
7466 hm = 2738.0;
7467 xp = 2.47230737e-7;
7468 yp = 1.82640464e-6;
7469 phpa = 731.0;
7470 tc = 12.8;
7471 rh = 0.59;
7472 wl = 0.55;
7473 jauApio13(utc1, utc2, dut1, elong, phi, hm, xp, yp,
7474 phpa, tc, rh, wl, astrom);
7475
7476 ob1 = 2.710085107986886201;
7477 ob2 = 0.1717653435758265198;
7478 SphericalCoordinate co = jauAtoiq("R", ob1, ob2, astrom);
7479 vvd(co.alpha, 2.710121574447540810, 1e-12,
7480 "jauAtoiq", "R/ri");
7481 vvd(co.delta, 0.17293718391166087785, 1e-12,
7482 "jauAtoiq", "R/di");
7483
7484 ob1 = -0.09247619879782006106;
7485 ob2 = 0.1717653435758265198;
7486 co = jauAtoiq("H", ob1, ob2, astrom);
7487 vvd(co.alpha, 2.710121574448138676, 1e-12,
7488 "jauAtoiq", "H/ri");
7489 vvd(co.delta, 0.1729371839116608778, 1e-12,
7490 "jauAtoiq", "H/di");
7491
7492 ob1 = 0.09233952224794989993;
7493 ob2 = 1.407758704513722461;
7494 co = jauAtoiq("A", ob1, ob2, astrom);
7495 vvd(co.alpha, 2.710121574448138676, 1e-12,
7496 "jauAtoiq", "A/ri");
7497 vvd(co.delta, 0.1729371839116608781, 1e-12,
7498 "jauAtoiq", "A/di");
7499
7500 }
7501
7502 @Test
7503 public void t_ld()
7504
7505
7506
7507
7508
7509
7510
7511
7512
7513
7514 {
7515 double bm, p[] = new double[3], q[] = new double[3], e[] = new double[3], em, dlim, p1[];
7516
7517
7518 bm = 0.00028574;
7519 p[0] = -0.763276255;
7520 p[1] = -0.608633767;
7521 p[2] = -0.216735543;
7522 q[0] = -0.763276255;
7523 q[1] = -0.608633767;
7524 q[2] = -0.216735543;
7525 e[0] = 0.76700421;
7526 e[1] = 0.605629598;
7527 e[2] = 0.211937094;
7528 em = 8.91276983;
7529 dlim = 3e-10;
7530
7531 p1 = jauLd(bm, p, q, e, em, dlim);
7532
7533 vvd(p1[0], -0.7632762548968159627, 1e-12,
7534 "jauLd", "1");
7535 vvd(p1[1], -0.6086337670823762701, 1e-12,
7536 "jauLd", "2");
7537 vvd(p1[2], -0.2167355431320546947, 1e-12,
7538 "jauLd", "3");
7539
7540 }
7541
7542 @Test
7543 public void t_ldn()
7544
7545
7546
7547
7548
7549
7550
7551
7552
7553
7554
7555
7556
7557
7558 {
7559 int n;
7560 Ldbody b[] = {new Ldbody(),new Ldbody(),new Ldbody()};
7561 double ob[] = new double[3], sc[] = new double[3], sn[];
7562
7563
7564 n = 3;
7565 b[0].bm = 0.00028574;
7566 b[0].dl = 3e-10;
7567 b[0].pv[0][0] = -7.81014427;
7568 b[0].pv[0][1] = -5.60956681;
7569 b[0].pv[0][2] = -1.98079819;
7570 b[0].pv[1][0] = 0.0030723249;
7571 b[0].pv[1][1] = -0.00406995477;
7572 b[0].pv[1][2] = -0.00181335842;
7573 b[1].bm = 0.00095435;
7574 b[1].dl = 3e-9;
7575 b[1].pv[0][0] = 0.738098796;
7576 b[1].pv[0][1] = 4.63658692;
7577 b[1].pv[0][2] = 1.9693136;
7578 b[1].pv[1][0] = -0.00755816922;
7579 b[1].pv[1][1] = 0.00126913722;
7580 b[1].pv[1][2] = 0.000727999001;
7581 b[2].bm = 1.0;
7582 b[2].dl = 6e-6;
7583 b[2].pv[0][0] = -0.000712174377;
7584 b[2].pv[0][1] = -0.00230478303;
7585 b[2].pv[0][2] = -0.00105865966;
7586 b[2].pv[1][0] = 6.29235213e-6;
7587 b[2].pv[1][1] = -3.30888387e-7;
7588 b[2].pv[1][2] = -2.96486623e-7;
7589 ob[0] = -0.974170437;
7590 ob[1] = -0.2115201;
7591 ob[2] = -0.0917583114;
7592 sc[0] = -0.763276255;
7593 sc[1] = -0.608633767;
7594 sc[2] = -0.216735543;
7595
7596 sn = jauLdn(n, b, ob, sc);
7597
7598 vvd(sn[0], -0.7632762579693333866, 1e-12,
7599 "jauLdn", "1");
7600 vvd(sn[1], -0.6086337636093002660, 1e-12,
7601 "jauLdn", "2");
7602 vvd(sn[2], -0.2167355420646328159, 1e-12,
7603 "jauLdn", "3");
7604
7605 }
7606
7607 @Test
7608 public void t_ldsun()
7609
7610
7611
7612
7613
7614
7615
7616
7617
7618
7619 {
7620 double p[] = new double[3], e[] = new double[3], em, p1[];
7621
7622
7623 p[0] = -0.763276255;
7624 p[1] = -0.608633767;
7625 p[2] = -0.216735543;
7626 e[0] = -0.973644023;
7627 e[1] = -0.20925523;
7628 e[2] = -0.0907169552;
7629 em = 0.999809214;
7630
7631 p1 = jauLdsun(p, e, em);
7632
7633 vvd(p1[0], -0.7632762580731413169, 1e-12,
7634 "jauLdsun", "1");
7635 vvd(p1[1], -0.6086337635262647900, 1e-12,
7636 "jauLdsun", "2");
7637 vvd(p1[2], -0.2167355419322321302, 1e-12,
7638 "jauLdsun", "3");
7639
7640 }
7641 @Test
7642 public void t_pmpx()
7643
7644
7645
7646
7647
7648
7649
7650
7651
7652
7653 {
7654 double rc, dc, pr, pd, px, rv, pmt, pob[] = new double[3], pco[];
7655
7656
7657 rc = 1.234;
7658 dc = 0.789;
7659 pr = 1e-5;
7660 pd = -2e-5;
7661 px = 1e-2;
7662 rv = 10.0;
7663 pmt = 8.75;
7664 pob[0] = 0.9;
7665 pob[1] = 0.4;
7666 pob[2] = 0.1;
7667
7668 pco = jauPmpx(rc, dc, pr, pd, px, rv, pmt, pob);
7669
7670 vvd(pco[0], 0.2328137623960308438, 1e-12,
7671 "jauPmpx", "1");
7672 vvd(pco[1], 0.6651097085397855328, 1e-12,
7673 "jauPmpx", "2");
7674 vvd(pco[2], 0.7095257765896359837, 1e-12,
7675 "jauPmpx", "3");
7676
7677 }
7678
7679 @Test
7680 public void t_pmsafe() throws JSOFAInternalError
7681
7682
7683
7684
7685
7686
7687
7688
7689
7690
7691 {
7692 double ra1, dec1, pmr1, pmd1, px1, rv1, ep1a, ep1b, ep2a, ep2b;
7693
7694
7695 ra1 = 1.234;
7696 dec1 = 0.789;
7697 pmr1 = 1e-5;
7698 pmd1 = -2e-5;
7699 px1 = 1e-2;
7700 rv1 = 10.0;
7701 ep1a = 2400000.5;
7702 ep1b = 48348.5625;
7703 ep2a = 2400000.5;
7704 ep2b = 51544.5;
7705
7706 CatalogCoords cc = jauPmsafe(ra1, dec1, pmr1, pmd1, px1, rv1,
7707 ep1a, ep1b, ep2a, ep2b
7708 );
7709
7710 vvd(cc.pos.alpha, 1.234087484501017061, 1e-12,
7711 "jauPmsafe", "ra2");
7712 vvd(cc.pos.delta, 0.7888249982450468567, 1e-12,
7713 "jauPmsafe", "dec2");
7714 vvd(cc.pm.alpha, 0.9996457663586073988e-5, 1e-12,
7715 "jauPmsafe", "pmr2");
7716 vvd(cc.pm.delta, -0.2000040085106754565e-4, 1e-16,
7717 "jauPmsafe", "pmd2");
7718 vvd(cc.px, 0.9999997295356830666e-2, 1e-12,
7719 "jauPmsafe", "px2");
7720 vvd(cc.rv, 10.38468380293920069, 1e-10,
7721 "jauPmsafe", "rv2");
7722
7723 }
7724
7725
7726 @Test
7727 public void t_pvtob() throws JSOFAIllegalParameter, JSOFAInternalError
7728
7729
7730
7731
7732
7733
7734
7735
7736
7737
7738 {
7739 double elong, phi, hm, xp, yp, sp, theta, pv[][];
7740
7741
7742 elong = 2.0;
7743 phi = 0.5;
7744 hm = 3000.0;
7745 xp = 1e-6;
7746 yp = -0.5e-6;
7747 sp = 1e-8;
7748 theta = 5.0;
7749
7750 pv = jauPvtob(elong, phi, hm, xp, yp, sp, theta);
7751
7752 vvd(pv[0][0], 4225081.367071159207, 1e-5,
7753 "jauPvtob", "p(1)");
7754 vvd(pv[0][1], 3681943.215856198144, 1e-5,
7755 "jauPvtob", "p(2)");
7756 vvd(pv[0][2], 3041149.399241260785, 1e-5,
7757 "jauPvtob", "p(3)");
7758 vvd(pv[1][0], -268.4915389365998787, 1e-9,
7759 "jauPvtob", "v(1)");
7760 vvd(pv[1][1], 308.0977983288903123, 1e-9,
7761 "jauPvtob", "v(2)");
7762 vvd(pv[1][2], 0, 0,
7763 "jauPvtob", "v(3)");
7764
7765 }
7766
7767 @Test
7768 public void t_refco()
7769
7770
7771
7772
7773
7774
7775
7776
7777
7778
7779 {
7780 double phpa, tc, rh, wl;
7781
7782
7783 phpa = 800.0;
7784 tc = 10.0;
7785 rh = 0.9;
7786 wl = 0.4;
7787
7788 RefCos ref = jauRefco(phpa, tc, rh, wl);
7789
7790 vvd(ref.a, 0.2264949956241415009e-3, 1e-15,
7791 "jauRefco", "refa");
7792 vvd(ref.b, -0.2598658261729343970e-6, 1e-18,
7793 "jauRefco", "refb");
7794
7795 }
7796
7797
7798 @Test
7799 public void t_d2dtf() throws JSOFAIllegalParameter, JSOFAInternalError
7800
7801
7802
7803
7804
7805
7806
7807
7808
7809
7810 {
7811
7812 CalendarHMS c = jauD2dtf("UTC", 5, 2400000.5, 49533.99999);
7813
7814 viv(c.iy, 1994, "jauD2dtf", "y");
7815 viv(c.im, 6, "jauD2dtf", "mo");
7816 viv(c.id, 30, "jauD2dtf", "d");
7817 viv(c.ihmsf[0], 23, "jauD2dtf", "h");
7818 viv(c.ihmsf[1], 59, "jauD2dtf", "m");
7819 viv(c.ihmsf[2], 60, "jauD2dtf", "s");
7820 viv(c.ihmsf[3], 13599, "jauD2dtf", "f");
7821
7822 }
7823
7824
7825
7826
7827
7828
7829
7830
7831
7832
7833
7834
7835
7836
7837
7838
7839
7840
7841
7842 @Test
7843 public void t_dtf2d() throws JSOFAIllegalParameter, JSOFAInternalError
7844 {
7845
7846 JulianDate jd = jauDtf2d("UTC", 1994, 6, 30, 23, 59, 60.13599);
7847
7848 vvd(jd.djm0+jd.djm1, 2449534.49999, 1e-6, "jauDtf2d", "u");
7849
7850 }
7851
7852
7853
7854
7855
7856
7857
7858
7859
7860
7861 @Test
7862 public void t_g2icrs()
7863 {
7864 double dl, db;
7865 SphericalCoordinate co;
7866
7867
7868 dl = 5.5850536063818546461558105;
7869 db = -0.7853981633974483096156608;
7870 co = jauG2icrs(dl, db);
7871 vvd(co.alpha, 5.9338074302227188048671, 1e-14, "jauG2icrs", "Ra");
7872 vvd(co.delta, -1.1784870613579944551541, 1e-14, "jauG2icrs", "Dec");
7873 }
7874
7875
7876
7877
7878
7879
7880
7881
7882
7883 @Test
7884 public void t_icrs2g()
7885 {
7886 double dr, dd;
7887
7888 dr = 5.9338074302227188048671087;
7889 dd = -1.1784870613579944551540570;
7890 SphericalCoordinate co = jauIcrs2g (dr, dd);
7891 vvd(co.alpha, 5.5850536063818546461558, 1e-14, "jauIcrs2g", "L");
7892 vvd(co.delta, -0.7853981633974483096157, 1e-14, "jauIcrs2g", "B");
7893 }
7894
7895
7896
7897
7898
7899
7900
7901
7902
7903
7904
7905
7906 @Test
7907 public void t_eceq06()
7908 {
7909 double date1, date2, dl, db;
7910
7911
7912 date1 = 2456165.5;
7913 date2 = 0.401182685;
7914 dl = 5.1;
7915 db = -0.9;
7916
7917 SphericalCoordinate co = jauEceq06(date1, date2, dl, db);
7918
7919 vvd(co.alpha, 5.533459733613627767, 1e-14, "jauEceq06", "dr");
7920 vvd(co.delta, -1.246542932554480576, 1e-14, "jauEceq06", "dd");
7921
7922 }
7923
7924
7925
7926
7927
7928
7929
7930
7931
7932
7933
7934
7935 @Test
7936 public void t_ecm06()
7937 {
7938 double date1, date2;
7939
7940
7941 date1 = 2456165.5;
7942 date2 = 0.401182685;
7943
7944 double rm[][] = jauEcm06(date1, date2);
7945
7946 vvd(rm[0][0], 0.9999952427708701137, 1e-14,
7947 "jauEcm06", "rm11");
7948 vvd(rm[0][1], -0.2829062057663042347e-2, 1e-14,
7949 "jauEcm06", "rm12");
7950 vvd(rm[0][2], -0.1229163741100017629e-2, 1e-14,
7951 "jauEcm06", "rm13");
7952 vvd(rm[1][0], 0.3084546876908653562e-2, 1e-14,
7953 "jauEcm06", "rm21");
7954 vvd(rm[1][1], 0.9174891871550392514, 1e-14,
7955 "jauEcm06", "rm22");
7956 vvd(rm[1][2], 0.3977487611849338124, 1e-14,
7957 "jauEcm06", "rm23");
7958 vvd(rm[2][0], 0.2488512951527405928e-5, 1e-14,
7959 "jauEcm06", "rm31");
7960 vvd(rm[2][1], -0.3977506604161195467, 1e-14,
7961 "jauEcm06", "rm32");
7962 vvd(rm[2][2], 0.9174935488232863071, 1e-14,
7963 "jauEcm06", "rm33");
7964
7965 }
7966
7967
7968
7969
7970
7971
7972
7973
7974
7975
7976
7977
7978 @Test
7979 public void t_eqec06()
7980 {
7981 double date1, date2, dr, dd;
7982
7983
7984 date1 = 1234.5;
7985 date2 = 2440000.5;
7986 dr = 1.234;
7987 dd = 0.987;
7988
7989 SphericalCoordinate co = jauEqec06(date1, date2, dr, dd);
7990
7991 vvd(co.alpha, 1.342509918994654619, 1e-14, "jauEqec06", "dl");
7992 vvd(co.delta, 0.5926215259704608132, 1e-14, "jauEqec06", "db");
7993
7994 }
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005 @Test
8006 public void t_lteceq()
8007 {
8008 double epj, dl, db;
8009
8010
8011 epj = 2500.0;
8012 dl = 1.5;
8013 db = 0.6;
8014
8015 SphericalCoordinate co = jauLteceq(epj, dl, db);
8016
8017 vvd(co.alpha, 1.275156021861921167, 1e-14, "jauLteceq", "dr");
8018 vvd(co.delta, 0.9966573543519204791, 1e-14, "jauLteceq", "dd");
8019
8020 }
8021
8022
8023
8024
8025
8026
8027
8028
8029
8030
8031
8032 @Test
8033 public void t_ltecm()
8034 {
8035 double epj;
8036
8037
8038 epj = -3000.0;
8039
8040 double rm[][] =jauLtecm(epj);
8041
8042 vvd(rm[0][0], 0.3564105644859788825, 1e-14,
8043 "jauLtecm", "rm11");
8044 vvd(rm[0][1], 0.8530575738617682284, 1e-14,
8045 "jauLtecm", "rm12");
8046 vvd(rm[0][2], 0.3811355207795060435, 1e-14,
8047 "jauLtecm", "rm13");
8048 vvd(rm[1][0], -0.9343283469640709942, 1e-14,
8049 "jauLtecm", "rm21");
8050 vvd(rm[1][1], 0.3247830597681745976, 1e-14,
8051 "jauLtecm", "rm22");
8052 vvd(rm[1][2], 0.1467872751535940865, 1e-14,
8053 "jauLtecm", "rm23");
8054 vvd(rm[2][0], 0.1431636191201167793e-2, 1e-14,
8055 "jauLtecm", "rm31");
8056 vvd(rm[2][1], -0.4084222566960599342, 1e-14,
8057 "jauLtecm", "rm32");
8058 vvd(rm[2][2], 0.9127919865189030899, 1e-14,
8059 "jauLtecm", "rm33");
8060
8061 }
8062
8063
8064
8065
8066
8067
8068
8069
8070
8071
8072
8073
8074 @Test
8075 public void t_lteqec()
8076 {
8077 double epj, dr, dd;
8078
8079
8080 epj = -1500.0;
8081 dr = 1.234;
8082 dd = 0.987;
8083
8084 SphericalCoordinate co = jauLteqec(epj, dr, dd);
8085
8086 vvd(co.alpha, 0.5039483649047114859, 1e-14, "jauLteqec", "dl");
8087 vvd(co.delta, 0.5848534459726224882, 1e-14, "jauLteqec", "db");
8088
8089 }
8090
8091
8092
8093
8094
8095
8096
8097
8098
8099
8100
8101 @Test
8102 public void t_ltp()
8103 {
8104 double epj;
8105
8106
8107 epj = 1666.666;
8108
8109 double rp[][] = jauLtp(epj);
8110
8111 vvd(rp[0][0], 0.9967044141159213819, 1e-14,
8112 "jauLtp", "rp11");
8113 vvd(rp[0][1], 0.7437801893193210840e-1, 1e-14,
8114 "jauLtp", "rp12");
8115 vvd(rp[0][2], 0.3237624409345603401e-1, 1e-14,
8116 "jauLtp", "rp13");
8117 vvd(rp[1][0], -0.7437802731819618167e-1, 1e-14,
8118 "jauLtp", "rp21");
8119 vvd(rp[1][1], 0.9972293894454533070, 1e-14,
8120 "jauLtp", "rp22");
8121 vvd(rp[1][2], -0.1205768842723593346e-2, 1e-14,
8122 "jauLtp", "rp23");
8123 vvd(rp[2][0], -0.3237622482766575399e-1, 1e-14,
8124 "jauLtp", "rp31");
8125 vvd(rp[2][1], -0.1206286039697609008e-2, 1e-14,
8126 "jauLtp", "rp32");
8127 vvd(rp[2][2], 0.9994750246704010914, 1e-14,
8128 "jauLtp", "rp33");
8129
8130 }
8131
8132
8133
8134
8135
8136
8137
8138
8139
8140
8141
8142 @Test
8143 public void t_ltpb()
8144 {
8145 double epj ;
8146
8147
8148 epj = 1666.666;
8149
8150 double rpb[][] = jauLtpb(epj);
8151
8152 vvd(rpb[0][0], 0.9967044167723271851, 1e-14,
8153 "jauLtpb", "rpb11");
8154 vvd(rpb[0][1], 0.7437794731203340345e-1, 1e-14,
8155 "jauLtpb", "rpb12");
8156 vvd(rpb[0][2], 0.3237632684841625547e-1, 1e-14,
8157 "jauLtpb", "rpb13");
8158 vvd(rpb[1][0], -0.7437795663437177152e-1, 1e-14,
8159 "jauLtpb", "rpb21");
8160 vvd(rpb[1][1], 0.9972293947500013666, 1e-14,
8161 "jauLtpb", "rpb22");
8162 vvd(rpb[1][2], -0.1205741865911243235e-2, 1e-14,
8163 "jauLtpb", "rpb23");
8164 vvd(rpb[2][0], -0.3237630543224664992e-1, 1e-14,
8165 "jauLtpb", "rpb31");
8166 vvd(rpb[2][1], -0.1206316791076485295e-2, 1e-14,
8167 "jauLtpb", "rpb32");
8168 vvd(rpb[2][2], 0.9994750220222438819, 1e-14,
8169 "jauLtpb", "rpb33");
8170
8171 }
8172
8173
8174
8175
8176
8177
8178
8179
8180
8181
8182
8183 @Test
8184 public void t_ltpecl()
8185 {
8186 double epj;
8187
8188
8189 epj = -1500.0;
8190
8191 double vec[] = jauLtpecl(epj);
8192
8193 vvd(vec[0], 0.4768625676477096525e-3, 1e-14,
8194 "jauLtpecl", "vec1");
8195 vvd(vec[1], -0.4052259533091875112, 1e-14,
8196 "jauLtpecl", "vec2");
8197 vvd(vec[2], 0.9142164401096448012, 1e-14,
8198 "jauLtpecl", "vec3");
8199
8200 }
8201
8202
8203
8204
8205
8206
8207
8208
8209
8210
8211
8212
8213 @Test
8214 public void t_ltpequ()
8215 {
8216 double epj;
8217 epj = -2500.0;
8218
8219 double veq[] = jauLtpequ(epj);
8220
8221 vvd(veq[0], -0.3586652560237326659, 1e-14,
8222 "jauLtpequ", "veq1");
8223 vvd(veq[1], -0.1996978910771128475, 1e-14,
8224 "jauLtpequ", "veq2");
8225 vvd(veq[2], 0.9118552442250819624, 1e-14,
8226 "jauLtpequ", "veq3");
8227
8228 }
8229
8230
8231
8232
8233
8234
8235
8236
8237
8238
8239
8240
8241
8242
8243
8244 @Test
8245 public void t_ae2hd()
8246 {
8247 double a, e, p;
8248
8249
8250 a = 5.5;
8251 e = 1.1;
8252 p = 0.7;
8253
8254 EquatorialCoordinate ec = jauAe2hd(a, e, p);
8255
8256 vvd(ec.ha, 0.5933291115507309663, 1e-14, "jauAe2hd", "h");
8257 vvd(ec.dec, 0.9613934761647817620, 1e-14, "jauAe2hd", "d");
8258
8259 }
8260
8261
8262
8263 public void t_hd2ae()
8264
8265
8266
8267
8268
8269
8270
8271
8272
8273
8274
8275
8276
8277
8278 {
8279 double h, d, p;
8280
8281
8282 h = 1.1;
8283 d = 1.2;
8284 p = 0.3;
8285
8286 HorizonCoordinate hc = jauHd2ae(h, d, p);
8287
8288 vvd(hc.az, 5.916889243730066194, 1e-13, "jauHd2ae", "a");
8289 vvd(hc.el, 0.4472186304990486228, 1e-14, "jauHd2ae", "e");
8290
8291 }
8292
8293
8294
8295
8296
8297
8298
8299
8300
8301
8302
8303
8304
8305
8306
8307 @Test
8308 public void t_hd2pa()
8309 {
8310 double h, d, p, q;
8311
8312
8313 h = 1.1;
8314 d = 1.2;
8315 p = 0.3;
8316
8317 q = jauHd2pa(h, d, p);
8318
8319 vvd(q, 1.906227428001995580, 1e-13, "jauHd2pa", "q");
8320
8321 }
8322
8323
8324
8325
8326
8327
8328
8329
8330
8331
8332
8333
8334
8335
8336
8337 @Test
8338 public void t_tpors()
8339 {
8340 double xi, eta, ra, dec;
8341
8342
8343 xi = -0.03;
8344 eta = 0.07;
8345 ra = 1.3;
8346 dec = 1.5;
8347
8348 TangentPointSolution tps = jauTpors(xi, eta, ra, dec);
8349
8350 vvd(tps.sol1.alpha, 1.736621577783208748, 1e-13, "jauTpors", "az1");
8351 vvd(tps.sol1.delta, 1.436736561844090323, 1e-13, "jauTpors", "bz1");
8352
8353 vvd(tps.sol2.alpha, 4.004971075806584490, 1e-13, "jauTpors", "az2");
8354 vvd(tps.sol2.delta, 1.565084088476417917, 1e-13, "jauTpors", "bz2");
8355
8356 viv(tps.nsolutions, 2, "jauTpors", "n");
8357
8358 }
8359
8360
8361
8362
8363
8364
8365
8366
8367
8368
8369
8370
8371
8372
8373
8374 @Test
8375 public void t_tporv()
8376 {
8377 double xi, eta, ra, dec, v[] = new double[3];
8378
8379
8380 xi = -0.03;
8381 eta = 0.07;
8382 ra = 1.3;
8383 dec = 1.5;
8384 v = jauS2c(ra, dec);
8385
8386 TangentPointDirectionCosines tpc = jauTporv(xi, eta, v);
8387
8388 vvd(tpc.dc1[0], -0.02206252822366888610, 1e-15,
8389 "jauTporv", "x1");
8390 vvd(tpc.dc1[1], 0.1318251060359645016, 1e-14,
8391 "jauTporv", "y1");
8392 vvd(tpc.dc1[2], 0.9910274397144543895, 1e-14,
8393 "jauTporv", "z1");
8394
8395 vvd(tpc.dc2[0], -0.003712211763801968173, 1e-16,
8396 "jauTporv", "x2");
8397 vvd(tpc.dc2[1], -0.004341519956299836813, 1e-16,
8398 "jauTporv", "y2");
8399 vvd(tpc.dc2[2], 0.9999836852110587012, 1e-14,
8400 "jauTporv", "z2");
8401
8402 viv(tpc.nsolution, 2, "jauTporv", "n");
8403
8404 }
8405
8406
8407
8408
8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
8420 @Test
8421 public void t_tpsts()
8422 {
8423 double xi, eta, raz, decz;
8424
8425
8426 xi = -0.03;
8427 eta = 0.07;
8428 raz = 2.3;
8429 decz = 1.5;
8430
8431 SphericalCoordinate sc = jauTpsts(xi, eta, raz, decz);
8432
8433 vvd(sc.alpha, 0.7596127167359629775, 1e-14, "jauTpsts", "ra");
8434 vvd(sc.delta, 1.540864645109263028, 1e-13, "jauTpsts", "dec");
8435
8436 }
8437
8438
8439
8440
8441
8442
8443
8444
8445
8446
8447
8448
8449
8450
8451
8452 @Test
8453 public void t_tpstv()
8454 {
8455 double xi, eta, raz, decz, vz[], v[];
8456
8457
8458 xi = -0.03;
8459 eta = 0.07;
8460 raz = 2.3;
8461 decz = 1.5;
8462 vz = jauS2c(raz, decz);
8463
8464 v = jauTpstv(xi, eta, vz);
8465
8466 vvd(v[0], 0.02170030454907376677, 1e-15, "jauTpstv", "x");
8467 vvd(v[1], 0.02060909590535367447, 1e-15, "jauTpstv", "y");
8468 vvd(v[2], 0.9995520806583523804, 1e-14, "jauTpstv", "z");
8469
8470 }
8471
8472
8473
8474
8475
8476
8477
8478
8479
8480
8481
8482
8483
8484
8485
8486 @Test
8487 public void t_tpxes()
8488 {
8489 double ra, dec, raz, decz;
8490
8491
8492 ra = 1.3;
8493 dec = 1.55;
8494 raz = 2.3;
8495 decz = 1.5;
8496
8497 TangentPlaneCoordinate tpc = jauTpxes(ra, dec, raz, decz);
8498
8499 vvd(tpc.xi, -0.01753200983236980595, 1e-15, "jauTpxes", "xi");
8500 vvd(tpc.eta, 0.05962940005778712891, 1e-15, "jauTpxes", "eta");
8501
8502 viv(tpc.status, 0, "jauTpxes", "j");
8503
8504 }
8505
8506
8507
8508
8509
8510
8511
8512
8513
8514
8515
8516
8517
8518
8519
8520 @Test
8521 public void t_tpxev()
8522 {
8523 double ra, dec, raz, decz, v[], vz[];
8524
8525
8526 ra = 1.3;
8527 dec = 1.55;
8528 raz = 2.3;
8529 decz = 1.5;
8530 v = jauS2c(ra, dec);
8531 vz = jauS2c(raz, decz);
8532
8533 TangentPlaneCoordinate tpc = jauTpxev(v, vz);
8534
8535 vvd(tpc.xi, -0.01753200983236980595, 1e-15, "jauTpxev", "xi");
8536 vvd(tpc.eta, 0.05962940005778712891, 1e-15, "jauTpxev", "eta");
8537
8538 viv(tpc.status, 0, "jauTpxev", "j");
8539
8540
8541 }
8542
8543
8544
8545
8546
8547
8548
8549
8550
8551
8552
8553
8554
8555
8556 @Test
8557 public void t_fk425()
8558 {
8559 double r1950, d1950, dr1950, dd1950, p1950, v1950;
8560
8561
8562 r1950 = 0.07626899753879587532;
8563 d1950 = -1.137405378399605780;
8564 dr1950 = 0.1973749217849087460e-4;
8565 dd1950 = 0.5659714913272723189e-5;
8566 p1950 = 0.134;
8567 v1950 = 8.7;
8568
8569 CatalogCoords c = jauFk425(r1950, d1950, dr1950, dd1950, p1950, v1950);
8570
8571 vvd(c.pos.alpha, 0.08757989933556446040, 1e-14,
8572 "iauFk425", "r2000");
8573 vvd(c.pos.delta, -1.132279113042091895, 1e-12,
8574 "iauFk425", "d2000");
8575 vvd(c.pm.alpha, 0.1953670614474396139e-4, 1e-17,
8576 "iauFk425", "dr2000");
8577 vvd(c.pm.delta, 0.5637686678659640164e-5, 1e-18,
8578 "iauFk425", "dd2000");
8579 vvd(c.px, 0.1339919950582767871, 1e-13, "iauFk425", "p2000");
8580 vvd(c.rv, 8.736999669183529069, 1e-12, "iauFk425", "v2000");
8581
8582 }
8583
8584
8585
8586
8587
8588
8589
8590
8591
8592
8593
8594
8595
8596
8597
8598 @Test
8599 public void t_fk45z()
8600 {
8601 double r1950, d1950, bepoch;
8602
8603
8604 r1950 = 0.01602284975382960982;
8605 d1950 = -0.1164347929099906024;
8606 bepoch = 1954.677617625256806;
8607
8608 SphericalCoordinate r = jauFk45z(r1950, d1950, bepoch);
8609
8610 vvd(r.alpha, 0.02719295911606862303, 1e-15,
8611 "iauFk45z", "r2000");
8612 vvd(r.delta, -0.1115766001565926892, 1e-13,
8613 "iauFk45z", "d2000");
8614
8615 }
8616
8617
8618
8619
8620
8621
8622
8623
8624
8625
8626
8627
8628
8629
8630
8631 @Test
8632 public void t_fk524()
8633 {
8634 double r2000, d2000, dr2000, dd2000, p2000, v2000;
8635
8636
8637 r2000 = 0.8723503576487275595;
8638 d2000 = -0.7517076365138887672;
8639 dr2000 = 0.2019447755430472323e-4;
8640 dd2000 = 0.3541563940505160433e-5;
8641 p2000 = 0.1559;
8642 v2000 = 86.87;
8643
8644 CatalogCoords r = jauFk524(r2000, d2000, dr2000, dd2000, p2000, v2000);
8645
8646 vvd(r.pos.alpha, 0.8636359659799603487, 1e-13,
8647 "iauFk524", "r1950");
8648 vvd(r.pos.delta, -0.7550281733160843059, 1e-13,
8649 "iauFk524", "d1950");
8650 vvd(r.pm.alpha, 0.2023628192747172486e-4, 1e-17,
8651 "iauFk524", "dr1950");
8652 vvd(r.pm.delta, 0.3624459754935334718e-5, 1e-18,
8653 "iauFk524", "dd1950");
8654 vvd(r.px, 0.1560079963299390241, 1e-13,
8655 "iauFk524", "p1950");
8656 vvd(r.rv, 86.79606353469163751, 1e-11, "iauFk524", "v1950");
8657
8658 }
8659
8660
8661
8662
8663
8664
8665
8666
8667
8668
8669
8670
8671
8672
8673
8674 @Test
8675 public void t_fk54z()
8676 {
8677 double r2000, d2000, bepoch;
8678
8679
8680 r2000 = 0.02719026625066316119;
8681 d2000 = -0.1115815170738754813;
8682 bepoch = 1954.677308160316374;
8683
8684 CatalogCoords r = jauFk54z(r2000, d2000, bepoch);
8685
8686 vvd(r.pos.alpha, 0.01602015588390065476, 1e-14,
8687 "iauFk54z", "r1950");
8688 vvd(r.pos.delta, -0.1164397101110765346, 1e-13,
8689 "iauFk54z", "d1950");
8690 vvd(r.pm.alpha, -0.1175712648471090704e-7, 1e-20,
8691 "iauFk54z", "dr1950");
8692 vvd(r.pm.delta, 0.2108109051316431056e-7, 1e-20,
8693 "iauFk54z", "dd1950");
8694 vvd(r.px, 0, 1e-13,
8695 "iauFk54z", "p1950");
8696 vvd(r.rv, 0, 1e-11, "iauFk54z", "v1950");
8697
8698
8699 }
8700
8701
8702
8703
8704
8705
8706
8707
8708
8709
8710
8711
8712
8713
8714
8715 @Test
8716 public void t_atcc13()
8717 {
8718 double rc, dc, pr, pd, px, rv, date1, date2;
8719
8720
8721 rc = 2.71;
8722 dc = 0.174;
8723 pr = 1e-5;
8724 pd = 5e-6;
8725 px = 0.1;
8726 rv = 55.0;
8727 date1 = 2456165.5;
8728 date2 = 0.401182685;
8729
8730 SphericalCoordinate co = jauAtcc13(rc, dc, pr, pd, px, rv, date1, date2);
8731
8732 vvd(co.alpha, 2.710126504531372384, 1e-12,
8733 "iauAtcc13", "ra");
8734 vvd(co.delta, 0.1740632537628350152, 1e-12,
8735 "iauAtcc13", "da");
8736
8737 }
8738
8739
8740
8741
8742
8743
8744
8745
8746
8747
8748
8749
8750
8751
8752
8753 @Test
8754 public void t_atccq()
8755 {
8756 double date1, date2, eo, rc, dc, pr, pd, px, rv;
8757 Astrom astrom = new Astrom();
8758
8759 date1 = 2456165.5;
8760 date2 = 0.401182685;
8761 eo = jauApci13(date1, date2, astrom);
8762 rc = 2.71;
8763 dc = 0.174;
8764 pr = 1e-5;
8765 pd = 5e-6;
8766 px = 0.1;
8767 rv = 55.0;
8768
8769 SphericalCoordinate co = jauAtccq(rc, dc, pr, pd, px, rv, astrom);
8770
8771 vvd(co.alpha, 2.710126504531372384, 1e-12, "iauAtccq", "ra");
8772 vvd(co.delta, 0.1740632537628350152, 1e-12, "iauAtccq", "da");
8773
8774 }
8775
8776
8777
8778
8779
8780
8781
8782
8783
8784
8785
8786
8787
8788
8789
8790 @Test
8791 public void t_moon98()
8792 {
8793 double pv[][] = jauMoon98(2400000.5, 43999.9);
8794
8795 vvd(pv[0][0], -0.2601295959971044180e-2, 1e-11,
8796 "iauMoon98", "x 4");
8797 vvd(pv[0][1], 0.6139750944302742189e-3, 1e-11,
8798 "iauMoon98", "y 4");
8799 vvd(pv[0][2], 0.2640794528229828909e-3, 1e-11,
8800 "iauMoon98", "z 4");
8801
8802 vvd(pv[1][0], -0.1244321506649895021e-3, 1e-11,
8803 "iauMoon98", "xd 4");
8804 vvd(pv[1][1], -0.5219076942678119398e-3, 1e-11,
8805 "iauMoon98", "yd 4");
8806 vvd(pv[1][2], -0.1716132214378462047e-3, 1e-11,
8807 "iauMoon98", "zd 4");
8808
8809 }
8810
8811 }
8812
8813
8814
8815
8816
8817
8818
8819
8820
8821
8822
8823
8824
8825
8826
8827
8828
8829
8830
8831
8832
8833
8834
8835
8836
8837
8838
8839
8840
8841
8842
8843
8844
8845
8846
8847
8848
8849
8850
8851
8852
8853
8854
8855
8856
8857
8858
8859
8860
8861
8862
8863
8864
8865
8866
8867
8868
8869
8870
8871
8872
8873
8874
8875
8876
8877
8878
8879
8880
8881
8882
8883
8884
8885
8886
8887
8888
8889
8890
8891
8892
8893
8894
8895
8896
8897
8898
8899
8900
8901
8902
8903
8904
8905
8906
8907
8908
8909
8910
8911
8912
8913
8914
8915
8916
8917
8918
8919
8920
8921
8922
8923
8924
8925
8926
8927
8928
8929
8930