Donald A. Swanson
This work describes a method of loudspeaker design. It does not rely on measuring tools other than a pair of wired headphones which are used for comparative listening.
Examine the specifications and design notes. What is the sensitivity and frequency range of the woofer and tweeter? Is the woofer designed for a closed box or a vented (inverted) box? Calculate (Fs / Qes). Fs is the resonance frequency. A number of 100 or more tends toward a vented box. A number of 80 or less tends toward a closed box.
A set of short wire alligator test leads and a small spool of 18 gauge speaker wire will be needed to connect the speaker and filter parts.
Headphone sound is the reference standard for comparison with the speaker. Headphones used for testing should be wired, closed back, and low impedance. Two examples: Sony MDR ZX310AP and Audio Technica ATHM20x. A short list of mono and stereo music tracks should be put together. Key things to listen for when testing speakers: the bass drum from heavy rock, the string bass from acoustic jazz, and vocals from pop and folk music.
The program shown below can be copy and pasted into the window box of the online BASIC interpreter. Click the RUN button to execute the program. Enter in the nominal driver size. There are 3 box sizes to choose from. The box size can be changed by entering a slightly larger or smaller driver size. Width, height, depth values shown in the display are the interior dimensions of the box. Dv is the nominal vent tube diameter. Vent tubes are cut to various lengths and tested to get the best bass output without sounding boomy or dirty. Tubes are usually test fitted from outside of the box where they can be swapped out quickly.
10 rem Loudspeaker Box Interior Dimension Calculator 20 rem Donald Swanson - das605813@yahoo.com 30 rem online BASIC interpreter - https://www.calormen.com/jsbasic/ 40 clear 50 home 60 data 0.9 70 data 1 80 data 1.1253 90 input "Enter nominal driver size (in) = ";dz 100 for i = 1 to 3 110 rem calc width (wd), height (ht), depth (dp) 120 read s1 130 ds = dz * s1 140 wd = ds * 1.618 150 ht = wd * 1.618 160 dp = wd * 0.84 170 wd = int((wd * 4) + 0.5) / 4 180 ht = int((ht * 4) + 0.5) / 4 190 dp = int((dp * 4) + 0.5) / 4 200 rem calc Vb 210 vb = wd * ht * dp 220 vb = vb / 61.024 230 vb = int((vb * 10) + 0.5) / 10 240 rem calc Dv 260 dv = ds / 3 290 dv = int(dv * 8) / 8 310 print"---------------------------------------" 320 print 330 print "Vb";i;": ";vb;" (L)";" Dv: ";dv;" (in)" 340 print 350 print "w,h,d: ";wd;", ";ht;", ";dp;" (in)" 360 print 370 next i 380 restore 390 print 400 input "hit enter to continue ";en$ 410 goto 40
The program shown below can be copy and pasted into the window box of the online BASIC interpreter. Click the RUN button to execute the program. Enter the impedance values for the HF (tweeter) and LF (woofer). Program lines 150-160 set the frequency range. Lines 210-250 set the capacitor values. The program display will show the capacitor/inductor value pairs. Choose inductors that are as close to the display values as possible. A slightly higher value is preferred over a slightly lower one. Test all of the pairs shown in the display. If two pairs sound equally best, prefer the lower value pair.
A first order parallel filter. Dayton Audio TCP-115-4 woofer (4-ohms), ND-20FA-6 tweeter (6-ohms).
The program display value pairs are (15uf, 720uh) (10uf, 480uh) (6.8uf, 330uh) (4.7uf, 230uh).
If the tweeter needs to be attenuated, then wirewound or metal oxide (MOX) resistors can be used. The values range from 1-12 ohms with a 5 watt or more power rating, and a 5 percent tolerance.
Film type capacitors rated at 100 volts DC or more are preferred. Non-polar or bi-polar electrolytic capacitors rated at 50 volts DC or more can also be used.
Inductors that are laminated steel or air core are preferred. Ferrite core inductors with axial leads can be used. They should have a DC resistance (DCR) of 0.6 ohm or less, and a current rating of at least 1 amp. Lower cost ferrite core inductors that come close on specification can be used for testing.
10 rem Solen Split First Order Filter Calculator 20 rem Donald Swanson - das605813@yahoo.com 30 rem online BASIC interpreter - https://www.calormen.com/jsbasic/ 40 clear 50 home 60 input "HF ohms = ";rh 70 vtab 1 : htab 15 80 input "LF ohms = ";rl 90 vtab 1 : htab 30 100 print "running" 110 print 120 f1 = 0 130 f2 = 0 140 rem set the range of frequency values 150 fq = 1000 160 fh = 4500 170 rem calculate capacitor value 180 c1 = 0.1125 / (rh * fq) 190 c1 = int((c1 * 10 ^ 7) + 0.5) / 10 200 rem look for a match 210 if c1 = 15 goto 340 220 if c1 = 10 goto 340 230 if c1 = 6.8 goto 340 240 if c1 = 4.7 goto 340 250 if c1 = 3.3 goto 340 260 fq = fq + 2 270 if fq < fh goto 180 280 vtab 1 : htab 30 290 print " " 300 vtab 1 : htab 30 310 print "** done **" 320 end 330 rem calculate inductor value 340 i1 = 0.2251 * rl / fq 350 i1 = int((i1 * 10 ^ 5) + 0.5) * 10 360 if i1 = f1 goto 260 370 if c1 <> f2 then print 380 print "F = ";fq;" ";"C = ";c1;" (uf)";" ";"L = ";i1;" (uh)" 390 f1 = i1 400 f2 = c1 410 goto 260
Donald A. Swanson
This work describes a subjective method of making odds from the analysis of a thoroughbred horse race. Symbols are chosen by the handicapper to represent the race analysis. Fibonacci numbers are used to convert symbol combinations into weighted percentages.
The leftmost column in figure 1 shows the seven symbols used in the method. The left side symbol part is the base (+, N, Ø). The right side symbol part (+, -) is the modifier. Descriptions are names for the symbols. The symbols are usually hand-written with a forward slash "/" as a separator, for example: (N+ / + / Ø+). Symbol selection starts with consideration of (+, N, Ø) before moving up or down to the appropriate symbol. Memorize the symbols and descriptions. The rightmost column in figure 1 shows the matching Fibonacci numbers which will be used to calculate the weighted percentages.
Symbol | Description | Weight |
---|---|---|
++ | double plus | 21 |
+ | plus | 13 |
N+ | neutral plus | 8 |
N | neutral | 5 |
N- | neutral minus | 3 |
Ø+ | doubtful plus | 2 |
Ø | doubtful | 1 |
The race is analyzed to decide which horses will be contenders. The handicapper will have some level of confidence that one of the contenders will win the race. A symbol is selected to represent the confidence level. Figure 2 shows the symbols and matching confidence levels. Symbol selection starts with consideration of (N+) before moving up or down to the appropriate symbol. Non-contenders get a (Ø).
Symbol | Confidence Level |
---|---|
++ | maximum |
+ | high |
N+ | moderate high |
N | moderate |
N- | moderate low |
Ø+ | low |
Ø | minimum |
cp - contender percentage
nc - number of contenders
fs - field size
wt - weight
cp = (wt * nc) / ((wt * nc) + (fs - nc))
Four contenders in an eight horse field with moderate high confidence.
4 / 8 / N+
N+ / N+ / N+ / N+ / Ø / Ø / Ø / Ø
8 + 8 + 8 + 8 + 1 + 1 + 1 + 1
cp = 32 / 36 = .889
cp = (8 * 4) / ((8 * 4) + (8 - 4)) = .889
Races with two or more contenders will use one to three factors which must be arranged from left to right in order of importance, for example: class, form, distance. Factors can be two-part compounded, for example: form-surface, jockey-trainer, form-age, distance-surface.
The (N) symbol can be extended to (NN) making the neutral base symbols (N+, NN, N-). The factor symbols are the right side symbol parts (+, N, -) matched up with Fibonacci numbers 8, 5, 3 respectively. Figure 3 shows the six factor symbol combinations and weighted percentages. A symbol combination is chosen that indicates the relative importance of each factor.
Symbols | Percent | Doubled |
---|---|---|
N N N | 33,33,34 | 66,34 |
+ N N | 44,28,28 | - |
N N - | 38,38,24 | 76,24 |
+ N - | 50,31,19 | - |
+ - - | 56,22,22 | 56,44 |
+ + - | 42,42,16 | 84,16 |
Weighted percentage calculation for the (+ N -) combination.
8 + 5 + 3 = 16
8 / 16 = .5
5 / 16 = .3125
3 / 16 = .1875
Factors can be doubled, for example: speed, speed, form making a two factor race. The factor symbol representing the doubled factor must be duplicated in the combination as shown in figure 3. A single factor can be tripled (N N N) making a one factor race.
Two contenders in an eight horse field with high confidence.
cp = (13 * 2) / ((13 * 2) + (8 - 2)) = .813
Three factors are chosen: class, form, distance with the (+ N -) combination.
8 + 5 + 3 = 16
(8 / 16) * .813 = .407
(5 / 16) * .813 = .254
(3 / 16) * .813 = .152
Each contender gets three symbols one for each factor as shown in figure 5 second column.
Horse | cls / fm / dst | Weights |
---|---|---|
#1 | + / N / N | 13 / 5 / 5 |
#2 | N- / N+ / + | 3 / 8 / 13 |
13 + 3 = 16
(13 / 16) * .407 = .331 (#1)
(3 / 16) * .407 = .076 (#2)
5 + 8 = 13
(5 / 13) * .254 = .098 (#1)
(8 / 13) * .254 = .156 (#2)
5 + 13 = 18
(5 / 18) * .152 = .042 (#1)
(13 / 18) * .152 = .110 (#2)
Sum the three percentages for each contender.
.331 + .098 + .042 = .471 (#1)
.076 + .156 + .110 = .342 (#2)
Sort the percentages (pct) in descending order before converting into odds.
odds = (1 / pct) - 1
(1 / .471) - 1 = 1.123 (#1)
(1 / .342) - 1 = 1.924 (#2)
Select the increment (inc) for rounding off.
if odds < 0.3 then inc = 20 elseif odds < 1 then inc = 10 elseif odds < 2 then inc = 5 elseif odds < 5 then inc = 2 else inc = 1
odds = (int ((odds * inc) + .5)) / inc
(int ((1.123 * 5) + .5)) / 5 = 1.2 (#1)
(int ((1.924 * 5) + .5)) / 5 = 2 (#2)
Convert rounded odds into fractions.
n = 0.5 // numerator d = 0 // denominator while int(n)<> n d = d + 1 n = odds * d end print n,"/",d
Finished calculation shown in figure 6 with percentages and fractional odds.
2 / 8 / + | cls / fm / dst | + N - | |
---|---|---|---|
#1 | + / N / N | .471 | 6 / 5 |
#2 | N- / N+ / + | .342 | 2 / 1 |
Figure 7 is a two factor race with the distance factor doubled.
2 / 10 / + | cls / dst | + - - | |
---|---|---|---|
#1 | N+ / N / N | .552 | 4 / 5 |
#2 | N- / Ø+ / Ø+ | .213 | 7 / 2 |
Measure the strength of the betting favorite in an eight horse field.
1 / 8 / N-
cp = (3 * 1) / ((3 * 1) + (8 - 1)) = 0.30 or 5/2
1 / 8 / N
(fs - 1) / 5
(8 - 1) / 5 = 7/5
cp = (5 * 1) / ((5 * 1) + (8 - 1)) = 0.42 or 7/5
1 / 8 / N+
cp = (8 * 1) / ((8 * 1) + (8 - 1)) = 0.53 or 4/5