home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / math / formulas / filters.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1989-01-18  |  6.4 KB  |  177 lines

  1. 12270  CLS
  2. 12275  PRINT
  3. 12276  PRINT "          ";:FOR A=1 TO 50:PRINT CHR$(178);:NEXT A
  4. 12277  PRINT "          WEND                                                WEND
  5. 12280  PRINT "          WEND         FILTER COMPUTATIONS.  OPTIONS:         WEND
  6. 12281  PRINT "          WEND                                                WEND
  7. 12300  PRINT "          WEND      1) RLC LOW PASS FILTER                    WEND
  8. 12310  PRINT "          WEND      2) RLC HIGH PASS FILTER                   WEND
  9. 12320  PRINT "          WEND      3) RLC BAND PASS OR NOTCH FILTER          WEND
  10. 12330  PRINT "          WEND      4) RC PASSIVE OR ACTIVE FILTER            WEND
  11. 12340  PRINT "          WEND      5) GO TO MASTER MENU                      WEND
  12. 12341  PRINT "          WEND                                                WEND
  13. 12345  PRINT "          ";:FOR A=1 TO 50:PRINT CHR$(178);:NEXT A
  14. 12347  PRINT:PRINT
  15. 12350  PRINT "          INPUT NUMBER OF YOUR CHOICE";
  16. 12360  INPUT N
  17. 12370  IF N=1 THEN GOTO 12440
  18. 12380  IF N=2 THEN GOTO 12810
  19. 12390  IF N=3 THEN GOTO 13180
  20. 12400  IF N=4 THEN GOTO 13320
  21. 12410  IF N=5 THEN RUN "MENU"
  22. 12420  PRINT:PRINT "          INVALID INPUT":BEEP
  23. 12430  GOTO 12350
  24. 12440  CLS
  25. 12450  PRINT "                    RLC LOW PASS FILTER":PRINT
  26. 12451  PRINT "          SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND L SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDBSAVESOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDBSAVESOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND
  27. 12452  PRINT "             CALL              CALL          CALL          CALL
  28. 12453  PRINT "             CALL              CALL          CALL          CALL
  29. 12454  PRINT "            Vin             C          R         Vout
  30. 12456  PRINT "             CALL              CALL          CALL          CALL
  31. 12457  PRINT "             CALL              CALL          CALL          CALL
  32. 12458  PRINT "          SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDMOTORSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDMOTORSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND
  33. 12459  PRINT
  34. 12460  GOSUB 13500
  35. 12470  IF R+F>0 THEN GOTO 12520
  36. 12480  R=SQR(L/C)
  37. 12490  PRINT
  38. 12500  PRINT "          RESISTOR  = ";R;" OHMS"
  39. 12510  PRINT "          FREQUENCY = ";R/(3.14*L);" HERTZ"
  40. 12520  IF R+L>0 THEN GOTO 12570
  41. 12530  R=1/(3.14*F*C)
  42. 12540  PRINT
  43. 12550  PRINT "          RESISTOR = ";R;" OHMS"
  44. 12560  PRINT "          INDUCTOR = ";R*R*C;" HENRIES"
  45. 12570  IF R+C>0 THEN GOTO 12620
  46. 12580  R=3.14*L*F
  47. 12590  PRINT
  48. 12600  PRINT "          RESISTOR  = ";R;" OHMS"
  49. 12610  PRINT "          CAPACITOR = ";1/(3.14*F*R);" FARADS"
  50. 12620  IF F+L>0 THEN GOTO 12660
  51. 12630  PRINT
  52. 12640  PRINT "          INDUCTOR  = ";R*R*C;" HENRIES"
  53. 12650  PRINT "          FREQUENCY = ";1/(3.14*C*R);" HERTZ"
  54. 12660  IF F+C>0 THEN GOTO 12700
  55. 12670  PRINT
  56. 12680  PRINT "          FREQUENCY = ";R/(3.14*L);" HERTZ"
  57. 12690  PRINT "          CAPACITOR = ";L/(R*R);" FARADS"
  58. 12700  IF L+C>0 THEN GOTO 12740
  59. 12710  PRINT
  60. 12720  PRINT "          INDUCTOR  = ";R/(3.14*F);" HENRIES"
  61. 12730  PRINT "          CAPACITOR = ";1/(3.14*F*R);" FARADS"
  62. 12740  PRINT:PRINT "          INPUT 1 TO REPEAT CALCULATION."
  63. 12750  PRINT "          INPUT 2 TO GO TO FILTERS MENU.";
  64. 12760  INPUT N
  65. 12770  IF N=1 THEN GOTO 12440
  66. 12780  IF N=2 THEN GOTO 12270
  67. 12790  PRINT:PRINT "          INVALID INPUT":BEEP
  68. 12800  GOTO 12740
  69. 12810  CLS
  70. 12820  PRINT "                       RLC HIGH PASS FILTER":PRINT
  71. 12821  PRINT "           SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND C SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDBSAVESOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDBSAVESOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND
  72. 12822  PRINT "              CALL              CALL          CALL          CALL
  73. 12823  PRINT "              CALL              CALL          CALL          CALL
  74. 12824  PRINT "             Vin             L          R         Vout
  75. 12826  PRINT "              CALL              CALL          CALL          CALL
  76. 12827  PRINT "              CALL              CALL          CALL          CALL
  77. 12828  PRINT "           SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDMOTORSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDMOTORSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND
  78. 12829  PRINT
  79. 12830  GOSUB 13500
  80. 12840  IF F+R>0 THEN GOTO 12890
  81. 12850  R=SQR(L/C)
  82. 12860  PRINT
  83. 12870  PRINT "          RESISTOR  = ";R;" OHMS"
  84. 12880  PRINT "          FREQUENCY = ";R/(12.6*L);" HERTZ"
  85. 12890  IF R+L>0 THEN GOTO 12940
  86. 12900  R=1/(12.6*F*C)
  87. 12910  PRINT
  88. 12920  PRINT "          RESISTOR = ";R;" OHMS"
  89. 12930  PRINT "          INDUCTOR = ";R*R*C;" HENRIES"
  90. 12940  IF R+C>0 THEN GOTO 12990
  91. 12950  R=12.6*F*L
  92. 12960  PRINT
  93. 12970  PRINT "          RESISTOR  = ";R;" OHMS"
  94. 12980  PRINT "          CAPACITOR = ";L/(R*R);" FARADS"
  95. 12990  IF F+L>0 THEN GOTO 13030
  96. 13000  PRINT
  97. 13010  PRINT "          FREQUENCY = ";1/(12.6*C*R);" HERTZ"
  98. 13020  PRINT "          INDUCTOR  = ";R*R*C;" HENRIES"
  99. 13030  IF F+C>0 THEN GOTO 13070
  100. 13040  PRINT
  101. 13050  PRINT "          FREQUENCY = ";R/(12.6*L);" HERTZ"
  102. 13060  PRINT "          CAPACITOR = ";L/(R*R);" FARADS"
  103. 13070  IF L+C>0 THEN GOTO 13110
  104. 13080  PRINT
  105. 13090  PRINT "          INDUCTOR  = ";R/(12.6*F);" HENRIES"
  106. 13100  PRINT "          CAPACITOR = ";1/(12.6*F*R);" FARADS"
  107. 13110  PRINT:PRINT "          INPUT 1 TO REPEAT CALCULATION."
  108. 13120  PRINT "          INPUT 2 TO GO TO FILTERS MENU.";
  109. 13130  INPUT N
  110. 13140  IF N=1 THEN GOTO 12810
  111. 13150  IF N=2 THEN GOTO 12270
  112. 13160  PRINT:PRINT "          INVALID INPUT":BEEP
  113. 13170  GOTO 13110
  114. 13180  CLS
  115. 13190  PRINT "           RLC BAND PASS       OR        NOTCH FILTER":PRINT
  116. 13191  PRINT "                                        VARPTRSOUNDSOUND L SOUNDSOUNDCOLOR
  117. 13192  PRINT "     SOUNDSOUNDSOUNDSOUND C SOUNDSOUNDSOUND L SOUNDSOUNDBSAVESOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND      SOUNDSOUNDSOUNDSOUNDSOUND<0xB4!>       BLOADSOUNDSOUNDSOUNDSOUNDBSAVESOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND
  118. 13193  PRINT "       CALL            CALL     CALL          CALL  CLSSOUNDSOUND C SOUNDSOUND'    CALL    CALL
  119. 13194  PRINT "       CALL            CALL     CALL          CALL               CALL    CALL
  120. 13195  PRINT "      Vin           R    Vout       Vin              R   Vout
  121. 13196  PRINT "       CALL            CALL     CALL          CALL               CALL    CALL
  122. 13197  PRINT "       CALL            CALL     CALL          CALL               CALL    CALL
  123. 13198  PRINT "     SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDMOTORSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND      SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDMOTORSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND
  124. 13199  PRINT
  125. 13200  PRINT "          INPUT 0 FOR UNKNOWN VALUE":PRINT
  126. 13210  GOSUB 13540
  127. 13220  IF F=0 THEN PRINT:PRINT "          FREQUENCY = ";1/(6.28*SQR(L*C));" HERTZ"
  128. 13230  IF L=0 THEN PRINT:PRINT "          INDUCTOR  = ";1/(39.5*C*F*F);" HENRIES"
  129. 13240  IF C=0 THEN PRINT:PRINT "          CAPACITOR = ";1/(39.5*L*F*F);" FARADS"
  130. 13250  PRINT:PRINT "          INPUT 1 TO REPEAT CALCULATION."
  131. 13260  PRINT "          INPUT 2 TO GO TO FILTERS MENU.";
  132. 13270  INPUT N
  133. 13280  IF N=1 THEN GOTO 13180
  134. 13290  IF N=2 THEN GOTO 12270
  135. 13300  PRINT:PRINT "          INVALID INPUT":BEEP
  136. 13310  GOTO 13250
  137. 13320  CLS
  138. 13325  PRINT "                   RESISTOR - CAPACITOR FILTERS":PRINT
  139. 13326  PRINT "     SOUNDSOUNDSOUND R SOUNDSOUNDSOUNDSOUNDBSAVESOUNDSOUNDSOUNDSOUND  SOUNDSOUND C SOUNDSOUNDSOUNDSOUNDBSAVESOUNDSOUNDSOUNDSOUND  SOUNDSOUNDBSAVESOUNDSOUND R SOUNDSOUNDBSAVESOUNDSOUND R SOUNDBSAVESOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND
  140. 13327  PRINT "      CALL        CALL               CALL        CALL       CALL      CALL    CALL
  141. 13328  PRINT "      CALL        CALL               CALL        CALL      2*C     CALL    CALL
  142. 13329  PRINT "      CALL        CALL               CALL        CALL       CALL      CALL    CALL
  143. 13330  PRINT "     Vin       C               R        CLSSOUND C BSAVESOUNDSOUNDCALLSOUNDSOUND C SOUND'   Vout
  144. 13331  PRINT "      CALL        CALL               CALL             CALL  CALL           CALL
  145. 13332  PRINT "      CALL  LOW   CALL         HIGH  CALL             R  CALL NOTCH     CALL
  146. 13333  PRINT "      CALL  PASS  CALL         PASS  CALL             CALL  CALL           CALL
  147. 13334  PRINT "     SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDMOTORSOUNDSOUNDSOUNDSOUND  SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDMOTORSOUNDSOUNDSOUNDSOUND  SOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDMOTORSOUNDSOUNDMOTORSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUNDSOUND
  148. 13335  PRINT "
  149. 13336  PRINT "
  150. 13340  PRINT "          INPUT FREQUENCY IN HERTZ (0 IF UNKNOWN)";
  151. 13350  INPUT F
  152. 13360  PRINT "          INPUT RESISTOR VALUE IN OHMS (0 IF UNKNOWN)";
  153. 13370  INPUT R
  154. 13380  PRINT "          INPUT CAPACITOR VALUE IN FARADS (0 IF UNKNOWN)";
  155. 13390  INPUT C
  156. 13400  IF F=0 THEN PRINT:PRINT "          FREQUENCY = ";1/(6.28*R*C);" HERTZ"
  157. 13410  IF R=0 THEN PRINT:PRINT "          RESISTOR  = ";1/(6.28*F*C);" OHMS"
  158. 13420  IF C=0 THEN PRINT:PRINT "          CAPACITOR = ";1/(6.28*F*R);" FARADS"
  159. 13430  PRINT:PRINT "          INPUT 1 TO REPEAT CALCULATION."
  160. 13440  PRINT "          INPUT 2 TO GO TO FILTERS MENU.";
  161. 13450  INPUT N
  162. 13460  IF N=1 THEN GOTO 13320
  163. 13470  IF N=2 THEN GOTO 12270
  164. 13480  PRINT:PRINT "          INVALID INPUT":BEEP
  165. 13490  GOTO 13430
  166. 13500  PRINT "          INPUT 0 FOR ANY TWO OF THE FOLLOWING (R, F, L, OR C)"
  167. 13510  PRINT
  168. 13520  PRINT "          INPUT RESISTOR VALUE IN OHMS";
  169. 13530  INPUT R
  170. 13540  PRINT "          INPUT FREQUENCY IN HERTZ";
  171. 13550  INPUT F
  172. 13560  PRINT "          INPUT INDUCTOR VALUE IN HENRIES";
  173. 13570  INPUT L
  174. 13580  PRINT "          INPUT CAPACITOR VALUE IN FARADS";
  175. 13590  INPUT C
  176. 13600  RETURN
  177.