home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / cpm / basic / math.ark / AZMUTH.BAS < prev    next >
BASIC Source File  |  1986-12-20  |  2KB  |  37 lines

  1. 10 REM *** THIS IS PROGRAM FIXER.BAS A MBASIC PROGRAM TO CAULCULATE ***
  2. 20 REM ****************** ALTITUDE AND AZMUTH *************************
  3. 30 REM *** FROM LATITUDE, RIGHT ASCENTION, DECLINATION SIDERIAL ***
  4. 40 REM ****************************TIME********************************
  5. 50 REM *********ALL UNITS IN DECIMAL DEGREES OR HOURS *************
  6. 60 REM *** BY MIKE FINERTY ***********************22 AUGUST 1985 ******
  7. 70 REM %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  8. 80 PI = 3.1415926#
  9. 90 C1 = 3.1415926#/180
  10. 100 C2 = 1/C1
  11. 110 INPUT "LATITUDE IS: ", LAT
  12. 120 LAT = LAT*C1
  13. 130  INPUT "RIGHT ASCENTION = ", RA
  14. 140 RA = RA * 15 * C1
  15. 150 INPUT "DECLINATION = ", DEC
  16. 160 DEC = DEC * C1
  17. 170 INPUT "SIDEARIAL TIME = ", SIDTIME
  18. 180 SIDTIME = SIDTIME * 15 * C1
  19. 190 LHA = SIDTIME - RA
  20. 200 ALTSIN = SIN(LAT)*SIN(DEC) + COS(LAT)*COS(DEC)*COS(LHA)
  21. 210 ALTCOS = (1-ALTSIN^2)^.5
  22. 220 ALT = ATN(ALTSIN/ALTCOS)
  23. 230 ALTITUDE = ALT*C2
  24. 240 AZCOS = (SIN(DEC)-SIN(ALT)*SIN(LAT))/(COS(ALT)*COS(LAT))
  25. 250 AZSIN = COS(DEC)*SIN(LHA)/COS(ALT)
  26. 260 AZ = ATN(AZSIN/AZCOS)
  27. 270 AZMUTH = ABS(AZ*C2)
  28. 290 IF AZSIN <0 AND AZCOS <0 THEN AZMUTH = 180 - AZMUTH
  29. 300 IF AZSIN >0 AND AZCOS <0 THEN AZMUTH = 180 + AZMUTH
  30. 305 IF AZSIN >0 AND AZCOS >0 THEN AZMUTH = 360 - AZMUTH
  31. 320 PRINT "ALTITUDE = ";ALTITUDE
  32. 330 PRINT "AZMUTH = "; AZMUTH
  33. 340 IF ALTITUDE <0 THEN PRINT "OBJECT BELOW HORIZON"
  34. 350 PRINT "DO YOU WANT ANOTHER OBJECT? Y/N? "
  35. 360 INPUT A$
  36. 370 IF A$ = "Y" THEN 130
  37. E <0 THEN PRINT "OBJECT BELOW HORIZON"