Simple Methods For DIY Loudspeaker Design

Donald A. Swanson

1. Make A Box

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. The back and sides of the box should be lined with damping material. A small box can be lined with 3-4 layers of craft felt. The backside of the driver cutout hole should be rounded to allow air to escape from the backside of the driver.

A set of short wire alligator clip test leads and a spool of 18 gauge speaker wire will be needed for connecting components.

Headphone sound is useful as a benchmark for speaker testing. Headphones should be wired, closed back, and low impedance. Two examples: Sony MDR ZX310AP and Audio Technica ATHM20x. A short list of mono and stereo rock, pop, folk music tracks should be put together. Listen carefully to the drums and vocals.

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 calculate 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 : rem 1 - (1 / (5 + 1))
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 calculate box volumn (Vb) - convert to liters
210 vb = wd * ht * dp
220 vb = vb / 61.024
230 vb = int((vb * 10) + 0.5) / 10
240 rem calculate nominal vent diameter (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

2. Make A Filter

This is a first order attenuator filter for a full range driver. The inductor has the effect of reducing the midrange while the resistor has the effect of reducing the treble. Inductor values typically range from 500-1200uh. Air core or laminated steel core inductors are preferred. Ferrite core inductors with axial leads and a DC resistance of 0.8 ohm or less can be used for testing. Resistors are wirewound type with axial leads, and a power rating of 10 watts or more.
attenuator filter for a full range speaker

The program shown below calculates first order filter values for a 2-way system. Program lines 150-160 set the range of frequency values to be scanned. Lines 210-250 set the capacitor values. Enter the HF (tweeter) and LF (woofer) impedance values. The program display will show the capacitor/inductor value pairs to be tested. Choose inductor values as close as possible to the values shown in the program display. Capacitors are Film type or bi-polar electrolytic, rated for 100 volts DC or more.

This is a first order series filter. The frequency value shown in the program display is the minimum crossover frequency and may increase with the value of resistor R1. The increase can be as much as 100hz per ohm. The resistor values range from 1-12 ohms with a power rating of 5 watts or more. Examine the LF/HF frequency response graphs. The LF output peak usually occurs at 150-200hz. The HF output peak usually occurs at 6000-8000hz. The difference in db is the starting resistor value. For example: if the LF driver graph shows a peak of 86 db at 200hz, and the HF driver graph shows a peak of 93db at 6000hz, then the starting resistor value will be 7-10 ohms.
first order series 2-way crossover filter

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 rem capacitor value flag
130 f1 = 0
140 rem set the range of frequency values
150 fq = 1500
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 test for a capacitor 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 + 3
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 c1 = f1 goto 260
370 print
380 print "F = ";fq;"  ";"C = ";c1;" (uf)";"  ";"L = ";i1;" (uh)"
390 f1 = c1
400 goto 260

References

  1. Healy Gene (1996) The Audiophile Loudspeaker Anyone Can Build, Boston Post Publishing Company
  2. Weems David B. & Koonce G.R. (2000, 1990) Great Sound Stereo Speaker Manual, The McGraw Hill Companies Inc.

Making Odds On Thoroughbred Races With Fibonacci Numbers

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.

1. Symbols

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.

Figure 1.
Symbol Description Weight
++ double plus 21
+ plus 13
N+ neutral plus 8
N neutral 5
N- neutral minus 3
Ø+ doubtful plus 2
Ø doubtful 1

2. Contender Percentage And Confidence Levels

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 (Ø).

Figure 2.
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

3. Factor Symbols And Combinations

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.

Figure 3.
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.

4. Example Race Calculation With Weighted Percentages And Odds

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.

Figure 5.
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.

Figure 6.
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.

Figure 7.
2 / 10 / + cls / dst +  -  -
#1 N+ /  N /  N .552 4 / 5
#2 N- /  Ø+ /  Ø+ .213 7 / 2

References

  1. Cramer M. (1987) The Odds On Your Side: The Logic Of Racetrack Investing, Cynthia Publishing Company
  2. McNeill D. & Freiberger P. (1993) Fuzzy Logic: The Discovery Of A Revolutionary Computer Technology And How It Is Changing Our World, Simon & Schuster
  3. Mitchell D. (1988) Winning Thoroughbred Strategies: With The Right Strategy, You Can Think Like An Investor, Not A Gambler!, William Morrow & Company
  4. Quinn J. (1987) Class Of The Field: New Performance Ratings For Thoroughbreds, William Morrow & Company
  5. Quirin W.L. (1979) Winning At The Races: Computer Discoveries In Thoroughbred Handicapping, William Morrow & Company
  6. Scott W.L. (1984) How Will Your Horse Run Today?, Amicus Press
  7. Scott W.L. (1989) Total Victory At The Track: The Promise And The Performance, Liberty Publishing Company

Appendix 1

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


das605813@yahoo.com
Modified: 09/19/2025
Use of these website contents is at your own risk.
Website contents are subject to revision.
Copyright © 2011 - 2025 Donald A. Swanson