Acoustic Horn Design – The Easy Way (Ath4)

No, miero is the author and owner.
Some more examples of speakers built locally (none of them mine) -
 

Attachments

  • box2.jpg
    box2.jpg
    50.3 KB · Views: 251
  • WG.jpg
    WG.jpg
    126.9 KB · Views: 258
I have a confession: I don't know what I'm doing, but...

I'm learning and reading all I can about speakers and am currently at the horns. I found ath/abec a week ago or so and now I found https://kolbrek.hornspeakersystems.info/index.php/sw/mmm-toolbox . I added the OS-SE formula to it and changed some plot options and now I get these graphs for the demo1.cfg from the ath 4.8 manual.

HornProfile.png HornThroatImpedance.png FieldPointPressures.png PolarMap_Directivity.png

I think this would allow one to optimize whatever parameter. I guess you could even program this into ath and you'll have a one stop shop.

Interesting idea or total nonsense?
 
[...]
I think this would allow one to optimize whatever parameter. I guess you could even program this into ath and you'll have a one stop shop.

Interesting idea or total nonsense?
I'm afraid I don't follow. I understand that you've managed to simulate an OS-SE profile (infinite-baffle terminated) in another program but how is that different from Ath/ABEC? Does the mentioned toolbox offer some optimization routines or how would you like to optimize it? I don't understand what could I program into Ath.

- For a meaningful optimization you need to include a real termination, either a baffle/enclosure (a lot more complex model if rectangular) or some axisymmetric "rollback" for a simple free-standing waveguide (which works extremely well). The latter is already implemented in Ath and the whole optimization can be simply generating a set of random mutations from which you select the one(s) you like - this is how the CE series was "discovered".

Good job, BTW.
 
Last edited:
I'm afraid I don't follow. I understand that you've managed to simulate an OS-SE profile (infinite-baffle terminated) in another program but how is that different from Ath/ABEC? Does the mentioned toolbox offer some optimization routines or how would you like to optimize it? I don't understand what could I program into Ath.

It think it is that both Ath and ABEC are black boxes and new to me; for others (you) that might not be the case. Although I also don't understand MMM, it is open source and written in Matlab/Octave which is very handy for plotting, optimizing and data manipulation (to me). Matlab/octave has an optimization function that you need to give a function that returns the error between what you want and what is the current outcome and then some magic happens and it starts optimizing stuff (varying the OS-SE params). I understand you have something like that in Ath, which I was unaware of.

As the MMM code is open source and some documentation is present, one might implement it in Ath so one isn't dependent on ABEC anymore (for axisymmetric horns) . Again, that might just be my fear of ABEC that others don't have.

Here is the result for the ST260B:
ST260B.png


Directivity Index is a bit suspicous. Different from yours and doesn't seem to match the polar map.
 
OK, thanks, now I understand. I'm actually very comfortable with ABEC, especially the CircSym mode, as it allows general and even some pretty complicated stuff very easily and quickly, once you get the idea how to generate the scripts (ESP being an example).

- Beware of the parameter 'Rot' which rotates the whole profile contour (that's not a part of the OS-SE formula but becomes handy sometimes):
z' = z*cos(Rot) - (r - r0)*sin(Rot)
r' = r0 + z*sin(Rot) + (r - r0)*cos(Rot)

The DI shown is obviously not correct.
 
The Mode Matching Method is a semi-analytical approach rather than the numerical simulation of BEM. Unlike lumped element models, MMM includes the modal response up to a defined order and therefore can model reflections, diffraction, and directivity. According to Bjørn’s thesis describing it, the results are comparable to BEM but calculate much faster once an initial lookup table is generated, and being analytical allows for easier optimisation approaches. There are also some examples of coupling BEM to MMM for complex multi-segment horns in the High-Quality Horn Loudspeakers book. I think that method was used for Bjørn's great recent series of blog posts on the Big Bend Horn too.

With Ath, you are sort of extending ABEC3/Akabak BEM into a similar semi-analytical approach. Similar to using a MATLAB script to generate, analyse or optimise COMSOL models. Unfortunately, I haven’t had much time to experiment on that front myself, after having to earn some pocket money following my studies.

I played with the MMM Matlab toolbox over the summer but didn’t go as far as Tom has. I think it’s really cool to have tweaked it that way - are you still using two series elements as per the example models included with the toolbox? I presume that your implementation of the OS-SE formula is currently only for axisymmetric cases?

I’m not sure if the MMM-Toolbox relies on any Matlab functions which aren’t available in Octave, but if it works in the latter then it’s a good accompaniment to Ath for people comfortable with scripting input. You could quickly iterate to some prime candidates for more in-depth numerical analysis, for example.

Either way, great work @Tom Kamphuys - I’d love it if you’d be up for sharing?
 
The DI shown is obviously not correct.
The MMM_ToolboxAxiSym computes DI from complex values of computed pressure(?), which seems to produce incorrect DI curve.

After replacing data.pRad with abs(data.pRad) in the MMM_ASgetDI.m file, the DI for the ST260B is following.

BTW, I had to remove the last 5 points of 250 generated from the coords.txt, because x coordinate was not monotonic.

There is still offset in DI, but the computation seems to follow the (4.144) on the https://www.sciencedirect.com/topics/computer-science/directivity-index
 

Attachments

  • MMM-DI-fix-ST260B.png
    MMM-DI-fix-ST260B.png
    9.9 KB · Views: 54