Acoustic Horn Design – The Easy Way (Ath4)

To all users -

I have written this several times but I will repeat as it is really crucial (for now and the current release 4.3.4):
You have to set the Out.DestDir item in your script files to some (already existing *) directory in your system. Using a full path (e.g. "D:\Acoustics\ATH_results") is the best. There will be stored your results. Otherwise the output files could be mixed up or not generated at all.

* already existing means that this directory must exist when ath4 is launched, i.e. it is not created automatically. You can create it beforehand by yourself of course :)
 
Last edited:
Hi Patrick,

Here's what I came up with:

3D Modeling Tips and Tricks

This is great! Thanks a lot for your detailed description. I'll try to use your approach for my next sims...

That is great, Patrick (or John). The first step, i.e. converting STL to solid, can also be easily automated. I'll definitely do that, to generate the STL as solid right away, I just have been quite busy for the last several months so not much work has been done on ath4.

I'd definitely appreciate this. Thanks again for your great work!

BW,
Christoph
 
That is great, Patrick (or John). The first step, i.e. converting STL to solid, can also be easily automated. I'll definitely do that, to generate the STL as solid right away, I just have been quite busy for the last several months so not much work has been done on ath4.

The crazy thing, is that I could SWEAR that I was able to get meshmixer to close that waveguide. Last month in meshmixer I used some combination of settings in meshmixer, and it simply "filled in" the inside of the waveguide.

For the life of me, I couldn't get it to do that yesterday.

It's not the end of the world; extruding the shape gets the job done too, but it's messier.
 
Really cool stuff this! I even managed to run it on a Mac :D

Did some quick and dirty experiment with a 80x40 horn:

775453d1565891967-cover-spectrum-spl-low-distortion-2-a-screenshot-2019-08-15-19-58-21-jpg

775454d1565892128-cover-spectrum-spl-low-distortion-2-a-screenshot-2019-08-15-20-01-33-jpg


One question though: is there an easy way to control the size of the horn? What I did now is tweak the depth and angles to get in the ballpark of the size I'd like, but that limits me to a specific range of angles. Let's say I want to make a 2:1 (w:h) sized horn that is 90x90 deg. Can the tool do that for me?
 
I've thought for a long time about a way how to specify the shape and the size. Finally I settled for exactly the way that you just descried - it may seem a bit odd at first but it gives you the most freedom. It could be done the other way, i.e. to set the mouth dimensions fixed and calculate the other parameters but that would mean something would need to be standardized in some way. I may re-think for the next release. Maybe I will make it an option.

BTW, you should probably increase the number of angular segments. It can be much finer than that (but the BEM analysis will take much longer).


- For anyone interested in the underlying principles of how it is really done, I can recommend the Appendix A in the User Guise. There's the math.

http://www.at-horns.eu/release/Ath4_UserGuide.pdf
 
That's not possible at the moment, I'm afraid, because you must enter the angles first. Together with the depth (and other variables) this will lead to some mouth dimensions. You see, when the mouth is squarish, it's strange to have the two coverage angles different, and vice versa.

I see a simple solution however. For a rectangular horn (i.e. for Shape = raw2rect), I will make parameters available for any target mouth dimensions you may like (now it is taken from the raw shape's width and height before the final transformation).

Stay tuned :)
 
One question though: is there an easy way to control the size of the horn? What I did now is tweak the depth and angles to get in the ballpark of the size I'd like, but that limits me to a specific range of angles. Let's say I want to make a 2:1 (w:h) sized horn that is 90x90 deg. Can the tool do that for me?

I don't think that's possible.

Here's why:

This software, to an extent, works similar to an oblate spheroid curve

attachment.php


The OS curve isn't exactly the same as the Peavey curve pictured above, but it is close. The fundamental idea with this waveguide shape is that we're making a gentle transition from the EXIT of the compression driver to the EXIT of the waveguide mouth.

And ATH4 works on a similar concept: if you look at all the parameters, they're mostly there to determine when we transition from one curve to the next.

If all of that makes sense... Then it should be apparent why you can't do a 90x90 horn with a ratio of two to one:

To do so would require a diffraction slot.

I've pondered this quite a bit, and the only method that I could come up with would be to do this:

step 1: make your horn or waveguide in ath4

step 2: then load that into your 3D program to add a diffraction slot after the fact.

But doing it in ath4, without the use of external software, I don't think that's possible. If you have a horn that is twice as wide as it is tall, with a coverage angle of 90x90, it's going to have a diffraction slot.
 
That's the other way how to look at it (and it didn't occured to me) and it's true in a sense.

What you CAN do however, is to take an arbitrary, say round, waveguide and make the mouth termination flare to any arbitrary shape, say rectangle 2:1. No problem with that. This is exactly how the outer rectangular shape in Ath4 is done now. It only makes the mouth bigger than necessary (or not?).
 
That's the other way how to look at it (and it didn't occured to me) and it's true in a sense.

What you CAN do however, is to take an arbitrary, say round, waveguide and make the mouth termination flare to any arbitrary shape, say rectangle 2:1. No problem with that. This is exactly how the outer rectangular shape in Ath4 is done now. It only makes the mouth bigger than necessary (or not?).

Hmmm. This doesn't make sense to me. If I wanted a mouth that measured 2:1, I would have to define that using the parameters "coverage_horizontal" and "coverage_vertical."

IE, if I use a "coverage_horizontal" and a "coverage_vertical" of 90 degrees, I'm not going to get a waveguide that measures 2:1.

To achieve what you describe, you would need to have two variables for "termination.angle", one for horizontal and one for vertical. Right now there's only one "termination.angle"
 
I only mentioned a possibility to introduce new parameters that will make it doable. But it's probably not a very good way of making horns anyway. I would allways just let the mouth grow as necessary for the desired coverage. If there are any limits on the mouth size (as allways are), just tweak the parameters to get into that limits.

That's not possible at the moment, I'm afraid ... I see a simple solution however. For a rectangular horn, I will make parameters available for any target mouth dimensions you may like (now it is taken from the raw shape's width and height before the final transformation).
 
Do you think Abec could do phase plug sim too?

I was triyng to do simulations of compression driver in Comsol using linear acoustics module. The simulation results were in good agreement with measurements up to a certain frequency. However, in the upper midrange and at higher frequency, when a thermoviscous layer depth become comparable with linear dimension of the slit, there was a noticeable difference in the measured and modelled SPLs. This is because to get the correct results in the higher frequency range you need to include thermoviscous effects. It is seems, that ABEC3 can include viscous dampg effects (see for meaning of parameters "Ra=", "eta=" and "visc="), however, I did not go into details. If you want to model the phase plugs with ABEC3, you need to learn how to include thermoviscous effect into the phaseplug.