Blame


1 cd5bae78 2004-04-21 devnull #include "astro.h"
2 cd5bae78 2004-04-21 devnull
3 cd5bae78 2004-04-21 devnull void
4 cd5bae78 2004-04-21 devnull jup(void)
5 cd5bae78 2004-04-21 devnull {
6 cd5bae78 2004-04-21 devnull double pturbl, pturbb, pturbr;
7 cd5bae78 2004-04-21 devnull double lograd;
8 cd5bae78 2004-04-21 devnull double dele, enom, vnom, nd, sl;
9 cd5bae78 2004-04-21 devnull
10 cd5bae78 2004-04-21 devnull
11 cd5bae78 2004-04-21 devnull ecc = .0483376 + 163.e-6*capt;
12 cd5bae78 2004-04-21 devnull incl = 1.308660 - .0055*capt;
13 cd5bae78 2004-04-21 devnull node = 99.43785 + 1.011*capt;
14 cd5bae78 2004-04-21 devnull argp = 12.71165 + 1.611*capt;
15 cd5bae78 2004-04-21 devnull mrad = 5.202803;
16 cd5bae78 2004-04-21 devnull anom = 225.22165 + .0830912*eday - .0484*capt;
17 cd5bae78 2004-04-21 devnull motion = 299.1284/3600.;
18 cd5bae78 2004-04-21 devnull
19 cd5bae78 2004-04-21 devnull
20 cd5bae78 2004-04-21 devnull anom = anom;
21 cd5bae78 2004-04-21 devnull incl *= radian;
22 cd5bae78 2004-04-21 devnull node *= radian;
23 cd5bae78 2004-04-21 devnull argp *= radian;
24 cd5bae78 2004-04-21 devnull anom = fmod(anom,360.)*radian;
25 cd5bae78 2004-04-21 devnull
26 cd5bae78 2004-04-21 devnull enom = anom + ecc*sin(anom);
27 cd5bae78 2004-04-21 devnull do {
28 cd5bae78 2004-04-21 devnull dele = (anom - enom + ecc * sin(enom)) /
29 cd5bae78 2004-04-21 devnull (1. - ecc*cos(enom));
30 cd5bae78 2004-04-21 devnull enom += dele;
31 cd5bae78 2004-04-21 devnull } while(fabs(dele) > converge);
32 cd5bae78 2004-04-21 devnull vnom = 2.*atan2(sqrt((1.+ecc)/(1.-ecc))*sin(enom/2.),
33 cd5bae78 2004-04-21 devnull cos(enom/2.));
34 cd5bae78 2004-04-21 devnull rad = mrad*(1. - ecc*cos(enom));
35 cd5bae78 2004-04-21 devnull
36 cd5bae78 2004-04-21 devnull lambda = vnom + argp;
37 cd5bae78 2004-04-21 devnull
38 cd5bae78 2004-04-21 devnull pturbl = 0.;
39 cd5bae78 2004-04-21 devnull
40 cd5bae78 2004-04-21 devnull lambda += pturbl*radsec;
41 cd5bae78 2004-04-21 devnull
42 cd5bae78 2004-04-21 devnull pturbb = 0.;
43 cd5bae78 2004-04-21 devnull
44 cd5bae78 2004-04-21 devnull pturbr = 0.;
45 cd5bae78 2004-04-21 devnull
46 cd5bae78 2004-04-21 devnull /*
47 cd5bae78 2004-04-21 devnull * reduce to the ecliptic
48 cd5bae78 2004-04-21 devnull */
49 cd5bae78 2004-04-21 devnull
50 cd5bae78 2004-04-21 devnull nd = lambda - node;
51 cd5bae78 2004-04-21 devnull lambda = node + atan2(sin(nd)*cos(incl),cos(nd));
52 cd5bae78 2004-04-21 devnull
53 cd5bae78 2004-04-21 devnull sl = sin(incl)*sin(nd) + pturbb*radsec;
54 cd5bae78 2004-04-21 devnull beta = atan2(sl, pyth(sl));
55 cd5bae78 2004-04-21 devnull
56 cd5bae78 2004-04-21 devnull lograd = pturbr*2.30258509;
57 cd5bae78 2004-04-21 devnull rad *= 1. + lograd;
58 cd5bae78 2004-04-21 devnull
59 cd5bae78 2004-04-21 devnull
60 cd5bae78 2004-04-21 devnull lambda += 555.*radsec;
61 cd5bae78 2004-04-21 devnull beta -= 51.*radsec;
62 cd5bae78 2004-04-21 devnull motion *= radian*mrad*mrad/(rad*rad);
63 cd5bae78 2004-04-21 devnull semi = 98.47;
64 cd5bae78 2004-04-21 devnull
65 cd5bae78 2004-04-21 devnull mag = -8.93;
66 cd5bae78 2004-04-21 devnull helio();
67 cd5bae78 2004-04-21 devnull geo();
68 cd5bae78 2004-04-21 devnull }