RAISING AND SETTING TIME


Disp "DECLIN" (Prompt A,B,C) requirs the declination of the object of interest in degrees, minutes, seconds.
Disp "RTASC"(Prompt E,F,I) requests the right ascension of the object of interest in hours, minutes, and seconds. For negative values, only the degree value has to be entered as a negative number.
The initial outputs are the azimuth at rising and setting for the object of interest.
Disp "M:D:Y" is a reminder for the forthcoming prompt (Prompt A,B,C)  that asks for the month, day and year
as 2, then 5, and finally 2002.
The final outputs are the time (MST) for the rising and setting for the object of interest has been corrected for atmospheric refraction.
N.B. You must correct for the desired time zone and for the deviation of your location of interest relative to the start of the appropriate time zone.  Thus, 7.124619445 designates 27 min 43 sec west of the start of the MST zone (+7 hr relative to UTC).  You must also correct for your location of interest: the sin of the latitude is 0.55614251; the cosine of the latitude is.0.83108694. The latitude is 33.7894444N.
<= denotes less than or equal to

Disp "DECLIN"
Prompt A,B,C
If A>0
Bx-1-> B
Cx-1-> C
A+(B/60)+(C/3600)\->D
Disp "RTASC"
Prompt E,F,L
E+(F/60)+(L/3600)->G
cos-1((sin(D)/.83108694)->R
360-R->S
cos-1(0.55614251/cos(D)->q
sin-1((tan(.566667)/tan(q)->Z
R-Z ->R
S+Z-> S
Fix 0
Disp "RISE:AZ:DEG",R
Disp "SET:AZ:DEG",S
Pause
Float
-tan(33.7894444xtan(D)->H
cos-1(H)/15->H
24+G-H->J
If J>24
J-24->J
sin .566667/sin(q)->Y
sin-1 (Y)->Y
(240xY)/cos(D)/3600->T
J-T->J
G+H->K
If K>24
K-24->K
K=T-> K
Disp "M,D,Y"
Prompt A,B,C
If A<=2
Then
A+12->A
C-1->C
End
19->D
-13->E
iPart((365.25xC)->F
iPart(((A+1)x30.6001)->G
E+F+G+B+1720994.5->X
(X-2451545.0)->M
M/36525->M
6.697374558+(2400.051336xM)+(0.000025862xM2)->N
If N>24
Goto O
If N<0
Goto Q
Lbl O
While N>24
N-24->N
End
Lbl Q
While N<0
N+24->N
End
J->V
V+7.124619445->V
V-N->W
If W>24
Goto P
If W<0
Goto R
Lbl P
While W>24
W-24->W
End
Lbl R
While W<0
W+24->W
End
Wx0.9972695663->W
W-7->W
If W<=0
24+W->W
Fix 2
iPart(W)->q
Fix 0
Disp "HOUR:RS",q
Fix 1
60xfPart((W)->A
iPart(A)\->q
Fix 0
Disp "MINUTE",q
Float
Pause
K->V
V+7.124619445->V
V-N->W
If W>24
Goto P
If W<0
Goto R
Lbl P
While W>24
W-24->W
End
Lbl R
While W<0
W+24->W
End
Wx0.9972695663->W
W-7->W
If W<=0
24+W->W
Fix 2
iPart(W)->q
Fix 0
Disp "HOUR:ST",q
Fix 2
60xfPart((W)->A
iPart(A)->q
Fix 0
Disp "MINUTE",q
Float



All comments and suggestions are always welcomed: gar8@earthlink.net
13, April 20:0:0 UTC