In today’s post I suggest a method for evaluating diffraction from a loudspeaker cabinet/enclosure that involves solving acoustics only with simple sources. It is an approximation to a model with the complete structural mechanics of the drivers included, but on the other hand the effects of diffraction solely from the cabinet are extracted in an efficient manner.
The geometrical setup is as follows: An enclosure with a given shape is chosen, possible set up in a manner, where the shape can be varied via parameters, e.g. the height, depth, width, fillets, and so on. In addition, two sources are included via having a smaller flat and circular surface representing a tweeter, and a larger flat and circular surface representing a woofer. The size and position of each surface should be parameterized too.
The two driver surfaces cover each their frequency range, with a second-order Linkwitz-Riley crossover function applied. (You need either to be able to input this function directly in your simulation software, or at the very least the software must accept complex-valued tabular inputs.)
This may not be the most relevant function, since for each driver both the cross-over and the driver itself needs to be taken into account, but for our purpose, it will do just fine. Since the function sums to a magnitude of 1 (with the phase being the same for the low-pass section, the high-pass section, and their sum, respectively), we should see this magnitude response for the on-axis response in the far-field with the drivers in a baffle with the acceleration on each driver scaled with their respective areas. This is checked easily once the simulation has been run. For the results related to the enclosure, any deviation from a flat amplitude response will be due to the enclosure, and hence we can easily assess the diffraction.
Setting up the simulation is straightforward: Apply boundary conditions, input air properties, mesh sufficiently, choose frequency range. For this case, calculation time is probably the biggest issue, since we want to do 3D analyses with no symmetry planes, due to the fact that we want to be able to move the tweeter away from the mid-plane, to see how that affects the resulting sound pressure. I used the newly implemented Boundary Element Method in COMSOL Multiphysics for this case, but you could also use the Finite Element Method. Which is faster? Depends on your setup and the mesh. Try both for a few frequencies, and decide for yourself.
Here is the result for a setup as shown in the second figure. The first thing to notice is the shelving effect, where at low frequencies the sound pressure is 6 dB lower than at high frequencies. If you have worked with crossovers you might have heard of the term “baffle step correction”; this is exactly this effect. At low frequencies the loudspeaker essentially sees at 4Pi environment, whereas at high frequencies it is more of a baffled 2Pi situation. If so desired, you can apply a baffle step correction function in post-processing. The ripples in the response are due to diffraction, and with our setup we are free to try out other geometries, and see for example if cutting the two side edges had a positive compared to a reactangular cuboid or not.
Since the geometry is very simple, you can set up a study with many parameters without risking that it won’t mesh. You can learn a lot even if the overall project is nowhere near in place within your organization, as long as you have a rough idea of the enclosure dimensions and the drivers likely to be used. The crossover frequency is of course also a possible parameter. So why not go to the initial project meetings frontloaded with this information, that you can extract in a day or two? Once you do indeed know more about the project, you can always revisit and update your simulations, possibly with drivers included.
And that's it; a quick and simple engineering approach, thought up in minutes, executed in hours, based on years of practice, to an issue that is often misunderstood, but rarely investigated, at least in the sense that the consumer never sees the results, should they exist in the first place.