10 REM PRINTCOLOUR "SCREEN 12"; USE "MODE 0" FOR BBC BASIC 20 REM SCREEN 12 30 REM ORIGIN 200,200 40 REM MODE 0 50 FLAG = 0 60 FLAG1 = 0 70 FLAG2 = 0 80 REM FOR SOME COMPUTERS "PI" MAY BE ALREADY DEFINED 90 REM PI IS CERCUMFERENCE DIVIDED BY DIAMETER C/D=3.6=PI 100 REM pi = 3.14 110 REM GAIN AND PGAIN ARE DYNAMIC PLOTTING VARIABLES 120 gain = 2 130 REM PGAIN IS THE PLOTTING ROUTINE MULTIPLICATION FACTOR 140 PGAIN = 2 150 REM DISTANCE BETWEEN THE TWO ANTENNAS IN WAVELENGTHS 160 dist = 0.25 170 REM INDUCTED PHASE DELAY TO STEAR THE ANTENNA RADIATION 180 REM PATTERN, by cable delay networks, measured IN RADIANS 190 PHDELAY = (PI / 360) * 180 200 REM RANGE EQUAL TO DISTANCE TO OBJECT FOR INVERSE SQUARE LAW IN WAVELENGTHS 210 RANGE = 100 220 REM FREQUENCY OF OPERATION, SET TO 3000MHz 230 FREQ = 30 240 WAVEL = 300 / 3000 250 REM "X" AXIS AND "Y" AXIS 260 REM "LINE" HERE BUT "PLOT/MOVE/DRAW " IN BBC BASIC MAY BE USED 270 REM LINE (START X, START Y)-(FINISH X, FINISH Y) 280 LINE 400, 750,700, 750 290 LINE 550, 900,550, 600 300 REM REFERENCE CIRCLE PLOTTING ROUTINE 310 FOR C = PI / 180 TO 2 * PI STEP PI / 16 320 Y = COS(C) * 100 330 X = SIN(C) * 100 340 LINE X + 550, Y + 750,X + 550, Y + 750 350 NEXT C 360 REM TWIN ANTENNA POSITIONING 370 REM ANTENNA SEPERATION 380 REM SEPERATION EQUAL TO WAVEL*MULTIPLIER 390 DWAVE = dist 400 REM 0dB REFERENCE CIRCLE 410 FOR C = PI / 180 TO 2 * PI STEP PI / 32 420 REM 74.14616 SCALES TO SCREEN RESOLUTION FOR PRINTCOLOUR IN SCREEN 12 430 Y = COS(C) * 74.14616 * gain 440 X = SIN(C) * 74.14616 * gain 450 LINE X + 550, Y + 750,X + 550, Y + 750 460 NEXT C 470 REM INCIDENT WAVE 480 A1 = COS(0) 490 B1 = SIN(0) 500 REM REFLECTED VECTOR OF THE INCIDENT WAVE. 510 FOR R = 1 TO 360 STEP 1.01 520 AR = R * (PI / 180) 530 ANG1 = R 540 Q1 = AR 550 REM EXCESS DISTANCE OF SIGNAL TRAVEL 560 EXCESSWAVE = DWAVE * SIN(Q1) 570 EXCESSDIS = WAVEL * (EXCESSWAVE / (2 * PI)) 580 REM PHASE DELAY BETWEEN THE TWO SIGNALS 590 ANG = EXCESSWAVE * (2 * PI) 600 REM THE ATTENUATION DUE TO DIST OF THE TWO ATTENNAS 610 REM BETWEEN THE TWO RXED SIGNALS 620 SATT1 = (WAVEL * .02) / ((2 * PI) ^ 2 * (RANGE * WAVEL) ^ 2) 630 SATT2 = (WAVEL * .02) / ((2 * PI) ^ 2 * ((RANGE * WAVEL) + EXCESSDIS) ^ 2) 640 RATIO = SATT2 / SATT1 650 VSATT = 1 * RATIO 660 A2 = VSATT * COS((ANG + PHDELAY)) 670 B2 = VSATT * SIN((ANG + PHDELAY)) 680 REM A2 = VSATT * COS((ANG + PHDELAY) * PI / 180) 690 REM B2 = VSATT * SIN((ANG + PHDELAY) * PI / 180) 700 REM COMPLEX FORMAT OF THE DELAYED SIGNAL 710 AA = (A1 + A2) 720 BB = (B1 + B2) 730 REM RECTANGULAR TO POLAR CONVERSION 740 AMP = SQR(AA ^ 2 + BB ^ 2) 750 AMP1 = AMP * 200 760 QAMP1 = ATN(BB / AA) 770 REM LOG IS TO THE BASE "E", SO (LOG(AMP)/LOG(10)) SCALES TO THE 780 REM LOG OF BASE 10 790 DBAMP = 20 * (LOG(AMP1) / LOG(10)) 800 DBAMP1 = 10 * (LOG(AMP) / LOG(10)) 810 REM BELOW LINES ARE USED TO PRINT OUT DATA VARIABLE INFO 820 IF FLAG2 = 0 THEN DBLREF = DBAMP1: DBUREF = DBAMP1: FLAG2 = 1 830 IF DBUREF < DBAMP1 THEN DBUREF = DBAMP1: PRINT TAB(25,4) " MAX GAIN = "; DBUREF; " dB " 840 IF DBLREF > DBAMP1 THEN DBLREF = DBAMP1: PRINT TAB(25,5) " MIM GAIN = "; DBLREF; " dB " 850 REM DBNULL = 10 * (LOG(1 / AMP1)/LOG(10)) 860 REM USE THE NEXT LINE TO CALIBRATE THE ZERO REFERENCE CIRLCE 870 REM IF AMP < 1 THEN END 880 X = X + 1.5 890 XX = XX + .5 900 REM MAX VALUE OF DBAMP = 39 910 IF DBAMP < -16 THEN GOTO 970 920 PRINT TAB(25,2) " xplot yplot amp DB amp" 930 YPLOT = (COS(AR) * DBAMP * PGAIN) + 750 940 XPLOT = (SIN(AR) * DBAMP * PGAIN) + 550 950 PRINT TAB(25,3) ; XPLOT; " "; YPLOT; " "; AMP; " "; DBAMP1; " " 960 IF FLAG = 0 THEN PXPLOT = XPLOT: PYPLOT = YPLOT: FLAG = 1 970 LINE PXPLOT, PYPLOT,XPLOT, YPLOT 980 PXPLOT = XPLOT 990 PYPLOT = YPLOT 1000 IF FLAG1 = 0 THEN LXPLOT = XX + 700: LYPLOT = 750 - DBAMP: FLAG1 = 1 1010 LINE LXPLOT, LYPLOT,XX + 700, 750 - DBAMP 1020 LXPLOT = XX + 700 1030 LYPLOT = 750 - DBAMP 1040 NEXT R 1050 1060 REM *CHDIR C:\Users\alastair\Pictures 1070 REM *SCREENSAVE 2element5.bmp 1,1,2000,1200