home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / SIMTEL / CPMUG / CPMUG033.ARK / N-ELT1.ASC < prev    next >
Text File  |  1985-02-10  |  10KB  |  150 lines

  1.  10 REM THIS IS A DIRECTION FINDING ASSISTANCE PROGRAM
  2.  20 REM AND WILL CALCULATE A MEAN FIX AND AN ELLIPSE
  3.  30 REM OF 50 (OR INPUT)PERCENT PROBABILITY CONTOUR FOR MOST LIKELY
  4.  40 REM AREA OF TARGET FIND
  5.  45 REM THIS PROGRAM WAS WRITTEN IN MICROSOFT BASIC
  6.  46 REM AND RUN ON A MITS ATTACHE COMPUTER
  7.  50 REM WRITTEN BY CHRISTOPHER P. KELLY
  8.  60 REM AMATEUR RADIO EMERGENCY SERVICES
  9.  70 REM ALBUQUERQUE, NEW MEXICO
  10.  80 REM THE VARIABLES USED HERE ARE REPRESENTING THE FOLLOWING
  11.  90 REM EX - STATION X COORDINATE
  12. 100 REM WY - STATION Y COORDINATE
  13. 110 REM BE - BEARING AT THAT STATION
  14. 120 REM SL - SLOPE OF LINE FOR THAT STATION
  15. 130 REM IN - Y INTERCEPT OF LINE FOR THAT STATION
  16. 140 REM CX - CUT X COORDINATE
  17. 150 REM CY - CUT Y COORDINATE
  18. 160 REM NC - NUMBER OF CUTS
  19. 170 REM LA - LATEST BEARING NUMBER
  20. 180 REM DI - DIFFERENCE DEGREES BETWEEN BEARINGS
  21. 190 REM SX - SUM OF X COORDINATES
  22. 200 REM SY - SUM OF Y COORDINATES
  23. 210 REM XM - MEAN X VALUE
  24. 220 REM YM - MEAN Y OF VALUES
  25. 230 REM XV - VARIANCE OF X'S
  26. 240 REM YV - VARIANCE OF Y'S
  27. 250 REM A1-A5 ELEMENTS OF ELLIPSE EQUATION
  28. 260 REM A - ELLIPSE SIZE IN SKEW DIRECTION
  29. 270 REM
  30. 280 REM B - ELLIPSE DIMENSION NORMAL TO SKEW DIRECTION
  31. 290 REM PR - PROBABILITY CONTOUR
  32. 300 DIM EX(30),WY(30),BE(30),SL(30),IN(30)
  33. 310 DIM CX(300),CY(300),X(20),Y(20),Z(20)
  34. 320 DEFINT L
  35. 330 DEFINT N
  36. 340 PRINT:PRINT:PRINT:PRINT
  37. 350 PRINT " NATIONAL ELT LOCATION TEAM (NELT)":PRINT
  38. 360 PRINT " WELCOME TO THE ELT DF PRAM"
  39. 370 PRINT " THIS PROGRAM WILL PLOT THE ESTIMATED LOCATION "
  40. 380 PRINT " OF A ELT ON AN X,Y COORDINATE SYSTEM, USING"
  41. 390 PRINT " AS INPUT THE X,Y LOCATION OF FIELD TEAMS"
  42. 400 PRINT " AND THEIR BEARINGS TO THE ELT."
  43. 410 PRINT " THE USER MAY ALSO LIST ALL ACCUMULATED CROSSINGS"
  44. 420 PRINT " OF BEARINGS (CUTS) OR CHANGE THE PROBABILITY"
  45. 430 PRINT " PERCENTAGE OF THE ELLEPTICAL PATTERN (A "
  46. 440 PRINT " STATISTICAL MEASURE OF AGREEMENT OF "
  47. 450 PRINT " THE CUTS WITH EACH OTHER). THE PROGRAM CAN ALSO "
  48. 460 PRINT " COMPUTE THE X,Y LOCATION OF THE DF TEAM (IF IT IS"
  49. 470 PRINT " NOT KNOWN) BY USE OF BEACONS OR LANDMARKS"
  50. 480 PRINT
  51. 490 INPUT " HIT RETURN KEY TO CONTINUE";$ZZ
  52. 500 PRINT:PRINT
  53. 510 PRINT "IF COMPASS DECLINATION IS OTHER THAN TRUE "
  54. 520 INPUT "ENTER COMPASS DECLINATION, DEGREES";OF
  55. 530 PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT
  56. 540 NC=0:LA=0:AO=1000:BO=1000
  57. 550 PR=.5
  58. 560 PRINT " THE FOLLOWING OPTIONS ARE AVAILABLE"
  59. 570 PRINT
  60. 580 PRINT " EDIT   - EDIT DATA ALREADY ENTERED "
  61. 590 PRINT " FIND   - LOCATE FIELD D F TEAM"
  62. 600 PRINT " CHANGE - CHANGE PROBABILITY PERCENTAGE"
  63. 610 PRINT " AVERAGE- BASELINE AVERAGE ROUTINE"
  64. 620 PRINT " COMPUTE- RECOMPUTE WITH CURRENT DATA"
  65. 630 PRINT " MAG    - SET MAGNETIC DECLINATION"
  66. 640 PRINT
  67. 650 INPUT " ENTER COMMAND";BB$
  68. 660 IF BB$ = "EDIT" GOTO 1980
  69. 670 IF BB$ = "FIND" GOTO 1680
  70. 680 IF BB$ = "CHANGE" GOTO 1930
  71. 690 IF BB$ = "COMPUTE" THEN GOTO 880
  72. 700 IF BB$ = "MAG" THEN GOSUB 2770
  73. 710 IF BB$ = "AVERAGE" THEN GOSUB 2380
  74. 720 LA=LA+1
  75. 730 PRINT:INPUT" ENTER FIELD DF TEAM LOCATION X";TM
  76. 740 EX(LA) = TM
  77. 750 IFTM >50 THEN LA=LA-1
  78. 760 IF TM > 50 THEN GOTO 580
  79. 770 INPUT" ENTER FIELD DF TEAM LOCATION Y";WY(LA)
  80. 780 INPUT" ENTER FIELD DF TEAM BEARING TO ELT ";BE(LA)
  81. 790 IF BE(LA)<360 THEN GOTO810
  82. 800 PRINT "CANCELLING LAST X,Y. REENTER PLEASE ":GOTO 730
  83. 810 BE(LA)=BE(LA)+OF
  84. 820 IF BE(LA)>360 THEN BE(LA)=BE(LA)-360
  85. 830 IF BE(LA) = 180 THEN BE(LA)=179.9
  86. 840 IF BE(LA) = 360 THEN BE(LA)=359.9
  87. 850 IF BE(LA) = 0 THEN BE(LA)=359.9
  88. 860 SL(LA)=TAN((90-BE(LA))/57.2958)
  89. 870 IN(LA)=WY(LA)-(SL(LA)*EX(LA))
  90. 880 IF LA<2 THEN GOTO 720
  91. 890 N1=0
  92. 900 NC=0
  93. 910 FOR I = 1 TO LA-1
  94. 920 FOR J = I+1 TO LA
  95. 930 IA=I
  96. 940 REM FIRST CHECK FOR TWO ANGLES TOO CLOSE
  97. 950 DI=BE(I)-BE(J)
  98. 960 IF ABS(TAN(DI/57.2958)) < .5 THEN GOTO 2270
  99. 970 NC=NC+1
  100. 980 N1=N1+1
  101. 990 CX(NC)=(IN(I)-IN(J))/(SL(J)-SL(I))
  102. 1000 CY(NC)=(SL(J)*CX(NC))+IN(J)
  103. 1010 QQ$="###.##"
  104. 1020 QC$="##"
  105. 1030 QD$="####"
  106. 1040 QB$="####.#"
  107. 1050 PRINT "NEW CUT COORDINATES X,Y";:PRINTUSINGQQ$;CX(NC);
  108. 1060 PRINTTAB(25);:PRINTUSINGQQ$;CY(NC)
  109. 1070 NEXT J
  110. 1080 NEXT I
  111. 1090 REM SEE IF WE HAVE ENOUGH CUTS YET
  112. 1100 IF NC<2 THEN GOTO 720
  113. 1110 REM NOW CALCULATE THE SUM OF THE CUTS
  114. 1120 SX=0:SY=0
  115. 1130 FOR I = 1 TO NC
  116. 1140 SX=SX+CX(I)
  117. 1150 SY=SY+CY(I)
  118. 1160 NEXT I
  119. 1170 XM=SX/NC
  120. 1180 YM=SY/NC
  121. 1190 PRINT
  122. 1200 PRINT:PRINT "ESTIMATED ELT LOCATION X=";
  123. 1210 PRINTUSINGQQ$;XM:
  124. 1220 PRINT "ESTIMATED ELT LOCATION Y=";
  125. 1230 PRINTUSINGQQ$;YM:PRINT
  126. 1240 IF NC < 3 GOTO 730
  127. 1250 SM=0:XV=0:YV=0
  128. 1260 FOR I = 1 TO NC
  129. 1270 XV=XV+((CX(I)-XM)^2)
  130. 1280 YV=YV+((CY(I)-YM)^2)
  131. 1290 SM=SM+(CX(I)*CY(I))
  132. 1300 NEXT I
  133. 1310 XA=XV/(NC-1)
  134. 1320 YA=YV/(NC-1)
  135. 1330 DX=SQR(XV)
  136. 1340 DY=SQR(YV)
  137. 1350 IF DX*DY = 0 THEN PRINT" ALL CUTS SAME"
  138. 1360 IF DX*DY = 0 THEN GOTO 720
  139. 1370 RH=((SM/NC)-(XM*YM))/(DX*DY)
  140. 1380 SR=(.5*(ATN(2*RH*DX*DY))/(XV-YV))
  141. 1390 SK=90-(SR*57.296)
  142. 1400 IF SK < 0 THEN SK=SK+360
  143. 1410 IF SK >360 THEN SK=SK-360
  144. 1420 REM NOW WE WILL CALCULATE K PROBABILITY CONTOUR
  145. 1430 K=-2*LOG(1-PR)
  146. 1440 REM
  147. 1450 REM BEGIN TO CALCULATE THE BIG ELLIPSE EQUATION
  148. 1460 REM
  149. 1470 A1=(1!-RH^2)*K
  150. 1σσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσ