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