home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Overload
/
ShartewareOverload.cdr
/
games
/
alpha.zip
/
SYSAR3M.BAS
< prev
next >
Wrap
BASIC Source File
|
1986-12-09
|
5KB
|
112 lines
100 REM ar-3 woofer to morel mdm75 midrange
110 DEF FNPHLP1(W,WC,D) = -ATN(W/WC)
120 DEF FNPHHP1(W,WC,D) = ATN(WC/W)
130 DEF FNPHLP2(W,WC,D) = -ATN( D*W /(WC*(1.000001-(W/WC)^2 ) ) ) + PI*(W>WC)
140 DEF FNPHHP2(W,WC,D) = ATN( D*WC/(W *(1.000001-(WC/W)^2 ) ) ) - PI*(W<WC)
150 DEF FNAMLP1(W,WC,D) = 1 / SQR(1!+(W/WC)^2)
160 DEF FNAMHP1(W,WC,D) = 1 / SQR(1!+(WC/W)^2)
170 DEF FNAMLP2(W,WC,D) = 1 / SQR(1+(W/WC)^4+(D*D-2!)*(W/WC)^2)
180 DEF FNAMHP2(W,WC,D) = 1 / SQR(1+(WC/W)^4+(D*D-2.000001)*(WC/W)^2)
190 DEF FNDBV(AMP) = 20!*LOG(AMP)/LOG(10!)
200 DEF FNPHD(RAD) = 180!*RAD/PI
210 DEF FNSUMA(AA,AB,PA,PB) = SQR((AA*SIN(PA)+AB*SIN(PB))^2 + (AA*COS(PA)+AB*COS(PB))^2 )
220 DEF FNSUMPW(AA,AB,PA,PB) = SQR((AA*AA*SIN(PA)+AB*AB*SIN(PB))^2 + (AA*AA*COS(PA)+AB*AB*COS(PB))^2 )
230 DEF FNSUMPN(AA,AB,PA,PB) = AA*SIN(PA)+AB*SIN(PB)
240 DEF FNSUMPD(AA,AB,PA,PB) = AA*COS(PA)+AB*COS(PB)
250 DEF FNDIRF(AA,AB,PA,PB) = ABS((SIN((PA-PB))*(((AA >= AB)*AB/AA)+((AB > AA)*AA/AB) )))
260 PI = ATN(SQR(3!))*3
270 DIM FREQT(10)
280 FREQT(1)=20:FREQT(2)=25:FREQT(3)=32:FREQT(4)=40:FREQT(5)=50:FREQT(6)=64:
290 FREQT(7)=80:FREQT(8)=100:FREQT(9)=128:FREQT(10)=160
300 REM Crossover characteristics
310 FCL = 900.1 :QCL = .62 :REM first section of low-pass
320 FCL2 = 900000.1 :QCL2 = .707 :REM second section of low-pass
330 FCH = 900.1 :QCH = .62 :REM first section of high-pass
340 PRINT "Enter QCL1 at F=";FCL;" or hit enter for ";QCL
350 INPUT ANS
360 IF ANS > 0 THEN QCL = ANS
370 PRINT "Enter QCL2 at F=";FCL2;" or hit enter for ";QCL2
380 INPUT ANS
390 IF ANS > 0 THEN QCL2 = ANS
400 PRINT "Enter QCH1 at F=";FCH;" or hit enter for ";QCH
410 INPUT ANS
420 IF ANS > 0 THEN QCH = ANS
430 REM driver characteristics
440 FLB = .025 :QLB = .707 :REM woofer Box resonance
450 FLL = .45 :QLL = 1.1 :REM woofer resonance
460 FLH = 1200! :QLH = 1.1 :REM woofer high end roll off
470 FHL = 600.1 :QHL = 1.1 :REM midrange low-end roll-off (B2)
480 FHH = 6000! :QHH = .6 :REM midrange high-end roll-off
490 REM Upper driver is dist inches in front of lower driver
500 DIST = 1!
510 REM End of variables
520 WLB = FLB*2*PI
530 DLB = 1!/QLB
540 WCH = FCH*2*PI
550 WCL2 = FCL2*2*PI
560 DCL2 = 1!/QCL2
570 WCL = FCL*2*PI
580 DCL = 1!/QCL
590 DCH = 1!/QCH
600 WLL = FLL*2*PI
610 WLH = FLH*2*PI
620 DLL = 1!/QLL
630 DLH = 1!/QLH
640 WHL = FHL*2!*PI
650 WHH = FHH*2!*PI
660 DHL = 1!/QHL
670 DHH = 1!/QHH
680 GOSUB 1050
690 FOR ID = 2 TO 4
700 FOR IO = 1 TO 10
710 IF ID = 5 AND IO > 1 THEN GOTO 1030
720 F = FREQT(IO)*10^(ID-2)
730 IF F=1000! THEN GOSUB 1050
740 W = F*2!*PI
750 REM basic equations for response
760 LPPHAS = FNPHLP2(W,WCL,DCL) + FNPHLP2(W,WCL2,DCL2) + FNPHLP2(W,WLH,DLH) + FNPHHP2(W,WLL,DLL) + FNPHHP2(W,WLB,DLB)
770 LPGAIN = FNAMLP2(W,WCL,DCL) * FNAMLP2(W,WCL2,DCL2) * FNAMLP2(W,WLH,DLH) * FNAMHP2(W,WLL,DLL) * FNAMHP2(W,WLB,DLB)
780 HPPHAS = FNPHHP2(W,WCH,DCH) + FNPHHP2(W,WHL,DHL) + FNPHLP2(W,WHH,DHH) + DIST * W /(12!*1100)
790 HPGAIN = FNAMHP2(W,WCH,DCH) * FNAMHP2(W,WHL,DHL) * FNAMLP2(W,WHH,DHH)
800 REM
810 DIRC = FNDIRF(HPGAIN,LPGAIN,HPPHAS,LPPHAS)
820 AMPR = FNSUMA(HPGAIN,LPGAIN,HPPHAS,LPPHAS)
830 AMPR = AMPR * FNAMHP2(W,WEL,DEL)^4
840 POWR = FNSUMPW(HPGAIN,LPGAIN,HPPHAS,LPPHAS)
850 POWR = POWR * FNAMHP2(W,WEL,DEL)^4
860 PHASN = FNSUMPN(HPGAIN,LPGAIN,HPPHAS,LPPHAS)
870 PHASD = FNSUMPD(HPGAIN,LPGAIN,HPPHAS,LPPHAS)
880 PHAS = ATN(PHASN/PHASD)
890 REM PHAS = PHAS * FNPHHP2(W,WEL,DEL)*2!
900 IF (PHASN<0! AND PHASD<0!)THEN PHAS = PHAS-PI
910 IF (PHASN>0! AND PHASD<0!)THEN PHAS = PI+PHAS
920 LPAMP = FNDBV(LPGAIN)
930 HPAMP = FNDBV(HPGAIN)
940 AMPRD = FNDBV(AMPR)
950 POWRD = FNDBV(POWR)*.5
960 HPPHAS = FNPHD(HPPHAS)
970 PHASD = FNPHD(PHAS)
980 LPPHAS = FNPHD(LPPHAS)
990 PRINT USING"###### ####.## ####.## ####.## ####.## #.## ###.## ###.## ###.## ####.##";F;LPPHAS;LPAMP;HPPHAS;HPAMP;DIRC;HPPHAS-LPPHAS,AMPRD,POWRD,PHASD
1000 NEXT IO
1010 NEXT ID
1020 PRINT" "
1030 REM LIST 200-250
1040 STOP
1050 PRINT " "
1060 PRINT "Lower Crossover (1) at:";FCL;" Q:";QCL
1070 PRINT "Lower Crossover (2) at:";FCL2;" Q:";QCL2
1080 PRINT "Upper Crossover at:";FCH;" Q:";QCH
1090 PRINT " Lower driver (1) lower Fc:";FLL;" Q:";QLL
1100 PRINT " Lower driver (2) lower Fc:";FLB;" Q:";QLB
1110 PRINT " Lower driver upper Fc:";FLH;" Q:";QLH
1120 PRINT " Upper driver lower Fc:";FHL;" Q:";QHL
1130 PRINT " Upper driver upper Fc:";FHH;" Q:";QHH
1140 PRINT "Upper driver is:";DIST;" Inches in front of lower driver"
1150 PRINT " "
1160 PRINT " Lower driver Upper driver
1170 PRINT " ---------------- --------------
1180 PRINT " Freq phase amp,dB phase amp,dB Dirf Ph Diff Vsum Psum Phsum"
1190 PRINT "------ ------- -------- ------- ------- ---- ------- ------ ----- -----"
1200 RETURN