home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CP/M
/
CPM_CDROM.iso
/
cpm
/
basic
/
astrmenu.lbr
/
GMST.BZS
/
GMST.BAS
Wrap
BASIC Source File
|
1987-04-26
|
1KB
|
49 lines
1 PRINT "From the June 1984 SKY & TELESCOPE, pp. 558-9."
2 PRINT
3 PRINT "This program calculates the sidereal time for the Greenwich meridian"
4 PRINT "from 4713 B.C. (-4712) to A.D. 3500."
5 PRINT
6 PRINT "INPUT: Year (Y), month (M), day with fraction (D) (UT), Julian or"
7 PRINT " Gregorian calendar." : PRINT
8 PRINT "OUTPUT: Julian Day and fractional part, Greenwich Mean Sidereal Time"
9 PRINT " (h, min, s)."
10 PRINT
700 REM GREENWICH MEAN
702 REM SIDEREAL TIME
704 REM
706 GOSUB 800
708 D=J-2451545!
710 T=D/36525!: T1=INT(T)
712 J0=T1*36525!+2451545!
714 T2=(J-J0+.5)/36525!
716 S=24110.54841#+184.812866#*T1
718 S=S+8640184.812866#*T2
720 S=S+.093104*T*T
722 S=S-.0000062*T*T*T
724 S=S/86400!: S=S-INT(S)
726 S=24*(S+(F-.5)*1.002737909#)
728 IF S<0 THEN S=S+24
730 IF S>24 THEN S=S-24
732 H=INT(S): M1=60*(S-H)
734 M=INT(M1): S=60*(M1-M)
736 PRINT "GMST: ";H;M;S
738 RUN"ASTRMENU.BAS"
800 REM CALENDAR --> JD
805 REM
810 INPUT "Y,M,D ";Y,M,D
815 INPUT "JC (0) OR GC (1) ";G
820 D1=INT(D): F=D-D1-.5
825 J=-INT(7*(INT((M+9)/12)+Y)/4)
830 IF G=0 THEN 850
835 S=SGN(M-9): A=ABS(M-9)
840 J1=INT(Y+S*INT(A/7))
845 J1=-INT((INT(J1/100)+1)*3/4)
850 J=J+INT(275*M/9)+D1+G*J1
855 J=J+1721027!+2*G+367*Y
860 IF F>=0 THEN 870
865 F=F+1: J=J-1
870 PRINT "J.D.: ";J;F
875 RETURN
+INT(275*M/9)+D1+G*J1
855 J=J+1721027!+2*G+367*Y
860 IF