Ripple Pool Simulator with a Better GUI?

I have generally found that the ripple pool simulator in Hornresp works surprisingly well, to figure out the radiation patterns of:

Dipoles

Bipoles

end fire and gradient arrays

It probably seems counter intuitive that software that was based on nothing but "dropping stones in a pool" can work so well, but I've had good results. If you guys remember my thread about the Bang and Olufsen Acoustic Lens, a lot of the early sims were done with nothing but the ripple pool simulator.

The problem is that the GUI is unbearable.

Having to click on individual pixels like it's 1985 and I'm making sprites on a Commodore 64? There's gotta be a better way.[/b]

Does anyone know?


    • I know that Vituixcad can simulate the response. Something that's tricky with Vituixcad is that you can't watch the wave propagation. And being able to do that is really helpful. For instance, the Hornresp ripple pool simulator clued me in to the fact that the sharp edge on the B&O lens is a problem. (They never fixed it, so they may not even know!)
    • ABEC can obviously do it, but making loudspeaker meshes with ABEC is about as much fun as going to the dentist
Someone on Facebook made a post about a piece of software called "Treble Audio Suite" which looks like it can do it, but it's $1500 for a license, per year. Way too much for me.

Edit:

ripple-2-png.965546


Looks like Mabat had the same idea (see above.) But I don't think it ever made it into any of the releases. And, also, the ability to introduce delay and create arrays is really what I'm looking for. I want to simulate gradient arrays in particular.
 
The problem is that the GUI is unbearable.

Unfortunately, when creating a custom design in the Hornresp Wavefront Simulator, there is no way around it but for a non-straight wall to be generated element by element.

The Up, Down, Left and Right arrow navigation keys can however be used to make the task a little easier.

To add a wall, click the mouse on the first element of the required wall and then use the navigation keys to extend the wall in the direction(s) required.

To delete a section of an existing wall, click the mouse on the first element of the existing wall and then use the navigation keys to remove the required section.

In addition, it is sometimes possible to generate the walls (and source/s) using a lower resolution as shown in Attachment 1, but to then switch to a higher resolution for the actual simulation, as shown in the Attachment 2.

All available features in the Wavefront Simulator are documented in the Help File, as shown in Attachments 3 to 5.
 

Attachments

  • Attach_1.png
    Attach_1.png
    12 KB · Views: 45
  • Attach_2.png
    Attach_2.png
    27.2 KB · Views: 42
  • Attach_3.png
    Attach_3.png
    25.5 KB · Views: 43
  • Attach_4.png
    Attach_4.png
    25.3 KB · Views: 45
  • Attach_5.png
    Attach_5.png
    25.4 KB · Views: 40
  • Like
Reactions: stv
Hi, I think mabat used the falstadt rippletank allenb linked to, but made customs script to insert the waveguide easily. The rippletank has import/export as text and it's quite easy to reverse engineer and write scripts to generate what ever shape you want. It's not too accurate system though, quite poor resolution for example, and some issues.

I made some quick and dirty simple Javascript gui for my own use to wonder edge diffraction, it spits out link/text to ripple tank, let me see if I find it.
 
I have generally found that the ripple pool simulator in Hornresp works surprisingly well, to figure out the radiation patterns of:

Dipoles

Bipoles

end fire and gradient arrays

It probably seems counter intuitive that software that was based on nothing but "dropping stones in a pool" can work so well, but I've had good results.

I suspect a lot, possibly most, acoustic software works like this if by it one means summing in various ways the analytical solution of acoustic point, line, and plane waves. BEM for example works like this although FEM doesn't.

If you guys remember my thread about the Bang and Olufsen Acoustic Lens, a lot of the early sims were done with nothing but the ripple pool simulator.

The problem is that the GUI is unbearable.

Having to click on individual pixels like it's 1985 and I'm making sprites on a Commodore 64? There's gotta be a better way.[/b]

What is a better way?

Quite a few simulation packages use a Cartesian grid and block out cells to form castellated boundaries particularly when the bodies are moving about in the simulation region. There is quite a bit of existing software around but, obviously, this is not in Hornresp and will add a degree of messing about.

The most straightforward way to create castellated approximations of complex smooth shapes is likely with a tree of CSG primitive shapes. The coordinates of the centre of each Cartesian cell is then tested against all the CSG primitive shapes and flagged if it is inside one of them. For the common basic CSG shapes this requires only a few lines of code and can be comfortably done in an evening. Here is a javascript example but there are many more.
 
Why not, like this one I was writing a few years back

Before digital computing other engineering areas like solid and fluid dynamics used analytical and semi-methods. With the growing use of FEM in the 60s and 70s these progressively disappeared for linear structural engineering problems. In the 70s, 80s and 90s nonlinear fluid engineering problem were increasingly addressed with CFD rather than analytical approaches. In acoustics the adoption of fully numerical methods (e.g. FEM, CAA) has been slower with semi-analytical (e.g. BEM) and analytical approaches remaining in use mainly because of the range of scales. For example, if we want to sort out the acoustics of a room that means accurately simulating 20-20kHz. FEM can simulated 20 Hz accurately but will need 1000*1000*1000 as many cells to simulate 20 kHz to the same level of accuracy so one tends to use FEM for low-mid frequencies and something more approximate for mid-high. If we want to simulate acoustic waves in a moving fluid the acoustic pressure gradients are many orders of magnitude smaller than those for the main flow leading to small errors in the evaluation of the main pressure gradients being large errors in the acoustic pressure gradients causing substantial numerical issues. Analytical methods tend not to have these sorts of scaling issues.

The increase in speed and lowering in cost of computing is getting fairly close though for practical numerical acoustics. The simulation of acoustic waves on a Cartesian grid with a finite difference simulation is just about viable now for hobbyists with expensive graphic cards. This is effectively the OPs ripple tanks but on a larger scale. Unfortunately, unlike analytical acoustic waves the ones simulated numerically will include small dissipative and dispersive errors which accumulate as time progresses eventually degrading the quality of the simulation. Here's an example one could play with but there are others or, if familiar with programming, one could write one's own in an evening or two given the simplicity of the coding (see example). One just needs a lot of computing horsepower to do something useful with it.
 
  • Like
Reactions: hifijim
Andy, it's easy to get carried away and lose sight of the goal. Many methods shown today don't separate out the early reflections or diffractions, but instead show lumped quantities.

The method I was working with was leading to the analysis of early reflections. They needed to be switchable by time or by number of reflections. Seeing what happens in general, or over a long time, would have been counterproductive.