home *** CD-ROM | disk | FTP | other *** search
- 10 REM THIS IS A DIRECTION FINDING ASSISTANCE PROGRAM
- 20 REM AND WILL CALCULATE A MEAN FIX AND AN ELLIPSE
- 30 REM OF 50 (OR INPUT)PERCENT PROBABILITY CONTOUR FOR MOST LIKELY
- 40 REM AREA OF TARGET FIND
- 45 REM THIS PROGRAM WAS WRITTEN IN MICROSOFT BASIC
- 46 REM AND RUN ON A MITS ATTACHE COMPUTER
- 50 REM WRITTEN BY CHRISTOPHER P. KELLY
- 60 REM AMATEUR RADIO EMERGENCY SERVICES
- 70 REM ALBUQUERQUE, NEW MEXICO
- 80 REM THE VARIABLES USED HERE ARE REPRESENTING THE FOLLOWING
- 90 REM EX - STATION X COORDINATE
- 100 REM WY - STATION Y COORDINATE
- 110 REM BE - BEARING AT THAT STATION
- 120 REM SL - SLOPE OF LINE FOR THAT STATION
- 130 REM IN - Y INTERCEPT OF LINE FOR THAT STATION
- 140 REM CX - CUT X COORDINATE
- 150 REM CY - CUT Y COORDINATE
- 160 REM NC - NUMBER OF CUTS
- 170 REM LA - LATEST BEARING NUMBER
- 180 REM DI - DIFFERENCE DEGREES BETWEEN BEARINGS
- 190 REM SX - SUM OF X COORDINATES
- 200 REM SY - SUM OF Y COORDINATES
- 210 REM XM - MEAN X VALUE
- 220 REM YM - MEAN Y OF VALUES
- 230 REM XV - VARIANCE OF X'S
- 240 REM YV - VARIANCE OF Y'S
- 250 REM A1-A5 ELEMENTS OF ELLIPSE EQUATION
- 260 REM A - ELLIPSE SIZE IN SKEW DIRECTION
- 270 REM
- 280 REM B - ELLIPSE DIMENSION NORMAL TO SKEW DIRECTION
- 290 REM PR - PROBABILITY CONTOUR
- 300 DIM EX(30),WY(30),BE(30),SL(30),IN(30)
- 310 DIM CX(300),CY(300),X(20),Y(20),Z(20)
- 320 DEFINT L
- 330 DEFINT N
- 340 PRINT:PRINT:PRINT:PRINT
- 350 PRINT " NATIONAL ELT LOCATION TEAM (NELT)":PRINT
- 360 PRINT " WELCOME TO THE ELT DF PRAM"
- 370 PRINT " THIS PROGRAM WILL PLOT THE ESTIMATED LOCATION "
- 380 PRINT " OF A ELT ON AN X,Y COORDINATE SYSTEM, USING"
- 390 PRINT " AS INPUT THE X,Y LOCATION OF FIELD TEAMS"
- 400 PRINT " AND THEIR BEARINGS TO THE ELT."
- 410 PRINT " THE USER MAY ALSO LIST ALL ACCUMULATED CROSSINGS"
- 420 PRINT " OF BEARINGS (CUTS) OR CHANGE THE PROBABILITY"
- 430 PRINT " PERCENTAGE OF THE ELLEPTICAL PATTERN (A "
- 440 PRINT " STATISTICAL MEASURE OF AGREEMENT OF "
- 450 PRINT " THE CUTS WITH EACH OTHER). THE PROGRAM CAN ALSO "
- 460 PRINT " COMPUTE THE X,Y LOCATION OF THE DF TEAM (IF IT IS"
- 470 PRINT " NOT KNOWN) BY USE OF BEACONS OR LANDMARKS"
- 480 PRINT
- 490 INPUT " HIT RETURN KEY TO CONTINUE";$ZZ
- 500 PRINT:PRINT
- 510 PRINT "IF COMPASS DECLINATION IS OTHER THAN TRUE "
- 520 INPUT "ENTER COMPASS DECLINATION, DEGREES";OF
- 530 PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT
- 540 NC=0:LA=0:AO=1000:BO=1000
- 550 PR=.5
- 560 PRINT " THE FOLLOWING OPTIONS ARE AVAILABLE"
- 570 PRINT
- 580 PRINT " EDIT - EDIT DATA ALREADY ENTERED "
- 590 PRINT " FIND - LOCATE FIELD D F TEAM"
- 600 PRINT " CHANGE - CHANGE PROBABILITY PERCENTAGE"
- 610 PRINT " AVERAGE- BASELINE AVERAGE ROUTINE"
- 620 PRINT " COMPUTE- RECOMPUTE WITH CURRENT DATA"
- 630 PRINT " MAG - SET MAGNETIC DECLINATION"
- 640 PRINT
- 650 INPUT " ENTER COMMAND";BB$
- 660 IF BB$ = "EDIT" GOTO 1980
- 670 IF BB$ = "FIND" GOTO 1680
- 680 IF BB$ = "CHANGE" GOTO 1930
- 690 IF BB$ = "COMPUTE" THEN GOTO 880
- 700 IF BB$ = "MAG" THEN GOSUB 2770
- 710 IF BB$ = "AVERAGE" THEN GOSUB 2380
- 720 LA=LA+1
- 730 PRINT:INPUT" ENTER FIELD DF TEAM LOCATION X";TM
- 740 EX(LA) = TM
- 750 IFTM >50 THEN LA=LA-1
- 760 IF TM > 50 THEN GOTO 580
- 770 INPUT" ENTER FIELD DF TEAM LOCATION Y";WY(LA)
- 780 INPUT" ENTER FIELD DF TEAM BEARING TO ELT ";BE(LA)
- 790 IF BE(LA)<360 THEN GOTO810
- 800 PRINT "CANCELLING LAST X,Y. REENTER PLEASE ":GOTO 730
- 810 BE(LA)=BE(LA)+OF
- 820 IF BE(LA)>360 THEN BE(LA)=BE(LA)-360
- 830 IF BE(LA) = 180 THEN BE(LA)=179.9
- 840 IF BE(LA) = 360 THEN BE(LA)=359.9
- 850 IF BE(LA) = 0 THEN BE(LA)=359.9
- 860 SL(LA)=TAN((90-BE(LA))/57.2958)
- 870 IN(LA)=WY(LA)-(SL(LA)*EX(LA))
- 880 IF LA<2 THEN GOTO 720
- 890 N1=0
- 900 NC=0
- 910 FOR I = 1 TO LA-1
- 920 FOR J = I+1 TO LA
- 930 IA=I
- 940 REM FIRST CHECK FOR TWO ANGLES TOO CLOSE
- 950 DI=BE(I)-BE(J)
- 960 IF ABS(TAN(DI/57.2958)) < .5 THEN GOTO 2270
- 970 NC=NC+1
- 980 N1=N1+1
- 990 CX(NC)=(IN(I)-IN(J))/(SL(J)-SL(I))
- 1000 CY(NC)=(SL(J)*CX(NC))+IN(J)
- 1010 QQ$="###.##"
- 1020 QC$="##"
- 1030 QD$="####"
- 1040 QB$="####.#"
- 1050 PRINT "NEW CUT COORDINATES X,Y";:PRINTUSINGQQ$;CX(NC);
- 1060 PRINTTAB(25);:PRINTUSINGQQ$;CY(NC)
- 1070 NEXT J
- 1080 NEXT I
- 1090 REM SEE IF WE HAVE ENOUGH CUTS YET
- 1100 IF NC<2 THEN GOTO 720
- 1110 REM NOW CALCULATE THE SUM OF THE CUTS
- 1120 SX=0:SY=0
- 1130 FOR I = 1 TO NC
- 1140 SX=SX+CX(I)
- 1150 SY=SY+CY(I)
- 1160 NEXT I
- 1170 XM=SX/NC
- 1180 YM=SY/NC
- 1190 PRINT
- 1200 PRINT:PRINT "ESTIMATED ELT LOCATION X=";
- 1210 PRINTUSINGQQ$;XM:
- 1220 PRINT "ESTIMATED ELT LOCATION Y=";
- 1230 PRINTUSINGQQ$;YM:PRINT
- 1240 IF NC < 3 GOTO 730
- 1250 SM=0:XV=0:YV=0
- 1260 FOR I = 1 TO NC
- 1270 XV=XV+((CX(I)-XM)^2)
- 1280 YV=YV+((CY(I)-YM)^2)
- 1290 SM=SM+(CX(I)*CY(I))
- 1300 NEXT I
- 1310 XA=XV/(NC-1)
- 1320 YA=YV/(NC-1)
- 1330 DX=SQR(XV)
- 1340 DY=SQR(YV)
- 1350 IF DX*DY = 0 THEN PRINT" ALL CUTS SAME"
- 1360 IF DX*DY = 0 THEN GOTO 720
- 1370 RH=((SM/NC)-(XM*YM))/(DX*DY)
- 1380 SR=(.5*(ATN(2*RH*DX*DY))/(XV-YV))
- 1390 SK=90-(SR*57.296)
- 1400 IF SK < 0 THEN SK=SK+360
- 1410 IF SK >360 THEN SK=SK-360
- 1420 REM NOW WE WILL CALCULATE K PROBABILITY CONTOUR
- 1430 K=-2*LOG(1-PR)
- 1440 REM
- 1450 REM BEGIN TO CALCULATE THE BIG ELLIPSE EQUATION
- 1460 REM
- 1470 A1=(1!-RH^2)*K
- 1σσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσσ