home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / cpm / basic / math.ark / POSITION.BAS < prev    next >
Encoding:
BASIC Source File  |  1986-12-21  |  1.9 KB  |  50 lines

  1. 10 REM THIS IS PROGRAM "POSITION" BY M. FINERTY
  2. 20 REM THIS PROGRAM CALCULATES DECLINATION AND RIGHT ASCENTION
  3. 30 REM FROM ALTITUDE, AZMUTH, LATITUDE AND SIDERIAL TIME
  4. 40 REM**************************************************
  5. 50 C1 = 180/3.1415926#
  6. 60 C2 = 1/C1
  7. 70 REM
  8. 80 PRINT "PLEASE INPUT DATA"
  9. 90 INPUT "LATITUDE =", LAT
  10. 100 LAT = LAT*C2
  11. 110 INPUT "ALTITUDE = ", ALT
  12. 120 ALT = ALT*C2
  13. 130 INPUT "AZMUTH =", AZ
  14. 140 AZ = AZ*C2
  15. 150 DECSIN = SIN(LAT)*SIN(ALT) + COS(LAT)*COS(ALT)*COS(AZ)
  16. 160 DECLINAT = ATN(DECSIN/((1-DECSIN^2)^.5))
  17. 170 DEC = DECLINAT*C1
  18. 180 PRINT "DECLINATION = "; DEC;
  19. 190 IF DEC < 0 THEN PRINT "  S"
  20. 200 IF DEC >=0 THEN PRINT "  N"
  21. 210 TSIN = SIN(AZ)*COS(ALT)/COS(DECLINAT)
  22. 220 TCOS = (SIN(ALT) - SIN(LAT)*SIN(DECLINAT))/(COS(LAT)*COS(DECLINAT))
  23. 230 HA = ATN(TSIN /((1-TSIN^2)^.5))
  24. 240 HA = HA*C1
  25. 260 HA = ABS(HA)
  26. 270 IF TSIN < 0 AND TCOS >=0 THEN PRINT "HOUR ANGLE ="; HA;" DEGREES"
  27. 280 IF TSIN < 0 AND TCOS >= 0 THEN TIMEANG = HA
  28. 290 IF TSIN < 0 AND TCOS < 0 THEN PRINT "HOUR ANGLE ="; 180 - HA;" DEGREES"
  29. 300 IF TSIN < 0 AND TCOS < 0 THEN TIMEANG = 180 - HA
  30. 310 IF TSIN >= 0 AND TCOS < 0 THEN PRINT "HOUR ANGLE ="; 180 + HA;" DEGREES"
  31. 320 IF TSIN >= 0 AND TCOS >=0 THEN PRINT "HOUR ANGLE ="; 360 - HA;" DEGREES"
  32. 330 IF TSIN >= 0 AND TCOS < 0 THEN TIMEANG = 180 + HA
  33. 340 IF TSIN >= 0 AND TCOS >= 0 THEN TIMEANG = 360 - HA
  34. 350 INPUT "LOCAL SIDERIAL TIME HRS,MINS = "; HRS,MINS
  35. 360 SIDTIME = 15*HRS + MINS/4
  36. 370 RA = SIDTIME + 360 - TIMEANG
  37. 380 IF RA > 360 THEN RA = RA -360
  38. 390 PRINT "RIGHT ASCENTION ="; RA;"DEGREES"
  39. 400 RTASC = INT(RA/15)
  40. 410 PLUSMINS = 60*(RA/15 - RTASC)
  41. 420 PRINT "RIGHT ASCENTION = ";RTASC;"HRS  "; PLUSMINS;"MINS"
  42. 430 PRINT "DO YOU WANT ANOTHER OBJECT Y/N?"
  43. 440 INPUT ANS$
  44. 450 IF ANS$ = "Y" THEN 110
  45. 460 END
  46. SC;"HRS  "; PLUSMINS;"MINS"
  47. 430 PRINT "DO YOU WANT ANOTHER OBJECT Y/N?"
  48. 440 INPUT ANS$
  49. 450 IF ANS$ = "Y" THEN 110
  50. 460 EN