Driver in box with nonlinear air and suspension compliance.
Below is a screen shot of a Excel spreadsheet that simulates the response of a driver to an abruptly
switched on sine wave input through solution of the differential equation governing the driver's
motion. The spreadsheet computes the response of a linear system and a similar system that
optionally includes the nonlinearity of the box compliance (air compression/expansion) and/or
suspension compliance. Upon completion of the simulation the harmonic distortion in the nonlinear
solution is extracted. The suspension compliance is modeled generically.
To run the spreadsheet you enter the driver data (in red) and the code computes the driver
parameters in black and the purple data. Then enter the simulation input. If Fsim = Fb then the actual
cone excursion comes out very close to the input value unless you include the nonlinear suspension
compliance and the input value for excursion at Fb is significantly greater than Xmax. Changing the
desired Qtc will also change Fb and you should make appropriated changes to Fsim, as desired. The
nonlinear effects can be switched on or off. To include them in the nonlinear simulation enter "yes".
The "Actual excursion @ Fsim" is the max excursion that is computed in the simulation. In the linear
case this will be close to the value entered for the excursion at Fb when Fsim = Fb. When Fsim is
greater than Fb the actual excursion will increase to the input value/Qtc. Xref (purple) is the
normalizing length scale used in the plot of displacement vs. time. The compliance shape factor
controls the steepness of the reduction in suspension compliance as x exceeds Xmax. It should not
be entered less than 2. While not visible in the screen shoot, the variation of the suspension with
displacement is shown in the complete display.
If you turn off the air nonlinearity you will see that you can generate only odd order harmonics. This is
a result of the symmetry in the suspension compliance about the driver's rest position at x=0. Turning
off the suspension nonlinearity and only considering the air compliance nonlinearity shows that the
air nonlinearity can generate both even and odd order HD. Entering a value for Qtc very slightly
larger the Qts will result in a very large box volume and also result in very little air nonlinearity. If Vbox
comes out negative the values entered for Qtc is below Qts and should be corrected. If you care to
model a free air result or an open backed dipole you can turn off the air nonlinearity and examine
only the effect of the suspension nonlinearity. As noted, in this case only odd order HD is generated
at potentially high excursion. Since dipole woofers often operate near the linear excursion limits at
higher SPL if they do not poses sufficient cone area, there is a real possibility of significant odd
order distortion in such woofer systems. In real cases where the suspension compliance may exhibit
some asymmetry there is a possibility of even order HD as well. The even order HD can be
eliminated, or reduced, by using two woofers in a back configuration, but the odd order distortion can
The plots shown below are top right, SS HD. Next down is driver (cone) velocity vs. time. Additional
plots presented in the complete spread sheet include blow ups of the velocity vs. time for the first and
last 4 cycles, displacement vs. time, variation in the nonlinear air compliance over the last simulated
cycle, and suspension and total system compliance over the last cycle (the same cycle used for the
HD calculation). Please note the correct axis labels for each color as noted in the plot title. Also
presented is a plot of the suspension compliance vs. displacement where you can see the affect of
the shape factor.
One interesting thing to do is to run the code at fairly high frequency, like 1k Hz, and look at the
displacement. Notice the way the driver responds to a sudden turn on of a sine wave when initially at
rest, and the differences in behavior with and without nonlinear effects. Distortion is not exactly
meaning full when you run these higher frequency cases since the solution does not always reach
steady state after the 30 cycles simulated. This can be verified by the behavior of the nonlinear error
since it fails to become periodic. But you will notice that as the frequency rises the distortion goes
down even while the excursion is held constant. This is correct because above resonance the motion
is mass controlled and the effect of the compliance on the driver motion is diminished. So at higher
frequency distortion is primarily from motor nonlinearity (BL nonlinearity) and other sources.
A generic model for nonlinear BL will be added in the future.
The spreadsheet can be downloaded by clicking on the appropriate button for a zip file (1meg) or an
rar file (0.5 meg). Have fun with it. Contact me with questions.
Download zip file (1 meg)
Download rar file (0.5 meg)