Hi all,
Simulating speaker response gives me great joy and my personal 'challenge' is to be able to achieve the same as software like WinISD and Hornresp. I use Matlab for generating the plots, and if the acoustic part cannot be represented by lumped elements I use ANSYS Mechanical to generate the acoustic impedance by applying a velocity to the diaphragm and export the average pressure over the diaphragm. The complete circuit is solved for all frequencies in Matlab, by applying the 2-port network approach, which I got from Leo. L. Beranek & Tim J. Mellow's "Acoustics".
All of the above is fine, but there is a more complex problem, for which I am looking for some help (or motivation 🙂). 2 loudspeaker diaphragms enter a horn, where they are not loaded equally. My current workflow cannot deal with this. Below is a fictional example.
Summary:
- 1 speaker diagram, see below. This Matlab Simulink model is not used for calculation, only to show how my 2-port network Matlab script works. This is solved fine, and if required the acoustic impedance from ANSYS Mechanical is used for Zafront and/or Zarear.
- 2 speaker diagram (wired parallel), see below. The electrical and mechanical parts are put in subsystems for readability.
And a generic design in which these speakers are located, see below. 2 10" speakers, where both diaphragms have a velocity of 1mm/s. The 2nd speaker has a round obstruction in its way. The model is 1/2 symmetry. All boundaries are rigid, only the sphere's surface has absorption elements on it to allow wave propagation outside the mesh domain.
At 10hz the obstruction does not really affect the pressure on both diaphragms (or at least equal to both):
At higher frequencies we see the diaphragms are loaded differently (219Hz):
My parallel speaker diagram is probably not correct, because both diaphragms are affecting each other, so there must be a link between them somewhere. Beranek's book shows an impedance matrix which (I think) can be used to solve this problem. It needs 4 elements (z11, z12, z21, z22) which describe the relation between the pressure at both diaghrams, as functions of both velocities of the diaphragms.
Maybe some acoustical or mathematical wizards can help me solve this, maybe by elaborating on the impedance matrix for example. In the meantime I will try to do my homework by solving it myself 🙂.
Simulating speaker response gives me great joy and my personal 'challenge' is to be able to achieve the same as software like WinISD and Hornresp. I use Matlab for generating the plots, and if the acoustic part cannot be represented by lumped elements I use ANSYS Mechanical to generate the acoustic impedance by applying a velocity to the diaphragm and export the average pressure over the diaphragm. The complete circuit is solved for all frequencies in Matlab, by applying the 2-port network approach, which I got from Leo. L. Beranek & Tim J. Mellow's "Acoustics".
All of the above is fine, but there is a more complex problem, for which I am looking for some help (or motivation 🙂). 2 loudspeaker diaphragms enter a horn, where they are not loaded equally. My current workflow cannot deal with this. Below is a fictional example.
Summary:
- 1 speaker diagram, see below. This Matlab Simulink model is not used for calculation, only to show how my 2-port network Matlab script works. This is solved fine, and if required the acoustic impedance from ANSYS Mechanical is used for Zafront and/or Zarear.
- 2 speaker diagram (wired parallel), see below. The electrical and mechanical parts are put in subsystems for readability.
And a generic design in which these speakers are located, see below. 2 10" speakers, where both diaphragms have a velocity of 1mm/s. The 2nd speaker has a round obstruction in its way. The model is 1/2 symmetry. All boundaries are rigid, only the sphere's surface has absorption elements on it to allow wave propagation outside the mesh domain.
At 10hz the obstruction does not really affect the pressure on both diaphragms (or at least equal to both):
At higher frequencies we see the diaphragms are loaded differently (219Hz):
My parallel speaker diagram is probably not correct, because both diaphragms are affecting each other, so there must be a link between them somewhere. Beranek's book shows an impedance matrix which (I think) can be used to solve this problem. It needs 4 elements (z11, z12, z21, z22) which describe the relation between the pressure at both diaghrams, as functions of both velocities of the diaphragms.
Maybe some acoustical or mathematical wizards can help me solve this, maybe by elaborating on the impedance matrix for example. In the meantime I will try to do my homework by solving it myself 🙂.
I believe you want to look at papers on mutual coupling. I haven't investigated this myself, so I'm afraid I can''t be much help. Most of the old work I have seen on this suggests that for direct radiators this is a small effect. Your work looks interesting though, love the Ansys mechano-acoustic coupling into the electromechanical system!
Thanks Ron E. I think I am on the right track by using the impedance matrix, see below. It gives front side pressures for both diaphragms (P1 and P2) as function of both volume velocities (Q1 and Q2). The 4 Z parameters can be easily exported from ANSYS, I just have to actuate only 1 diaphragm at a time.
For this example the 4 impedances look like this:
Z12 and Z21 are equal, which means it is a reciprocal network (for whatever that means 🙂).
Together with the electro and mechanical 2-ports this can be solved (somehow). To be continued.
For this example the 4 impedances look like this:
Z12 and Z21 are equal, which means it is a reciprocal network (for whatever that means 🙂).
Together with the electro and mechanical 2-ports this can be solved (somehow). To be continued.
It seems I got my first decent results, the cone excursion for both woofers. I entered the driver data for the B&C 10NW76-8.
For each speaker there is (the same) transmission matrix A, which represents the area of the circuit below.
And for the other speaker:
Combined with the impedance matrix from my previous post:
There are 6 equations and 6 unknowns so rearranged it looks like this:
Setting 2.83V as generator voltage the cone excursion for both diaphragms (derived from Q1 and Q2) is as follows:
I am pretty stoked. However, 2 questions remain: 1) how to include the rear acoustic impedance and 2) how to calculate the SPL in the far-field.
For each speaker there is (the same) transmission matrix A, which represents the area of the circuit below.
And for the other speaker:
Combined with the impedance matrix from my previous post:
There are 6 equations and 6 unknowns so rearranged it looks like this:
Setting 2.83V as generator voltage the cone excursion for both diaphragms (derived from Q1 and Q2) is as follows:
I am pretty stoked. However, 2 questions remain: 1) how to include the rear acoustic impedance and 2) how to calculate the SPL in the far-field.
In the previous post there are a some capital vs. small letter errors: z_{11} = Z_{11}, and p_1 = P_1 etc. Meanwhile I have made scripts to include the rear acoustic radiation impedance of the diaphragm and am able to calculate pressure in the far field combined.
Model: added a rear chamber + port.
The group who is interested in this is maybe small 🙂, but for someone who is trying to do the same as me in the future, here a small summary:
The rear pressure of diaphragm 1 is P3, and the rear pressure of diaphragm 2 is P4. The electro-mechanical matrices become:
Speaker 1:
Speaker 2:
Both speakers wired parallel. The impedance matrix for 4 diaphragms:
Unfortunately the simulation has to be runned 4 times, each time actuating a different diaphragm (I think this can be simplified, more on that later). The volume velocity of Q3 and Q4 are equal to Q1 and respectively Q2, only the sign is reversed. Doing some rearranging:
Throwing the 2 electro mechanical 2-ports together with the impedance matrix the system of equations becomes:
And apparantly, the cone excursion for both diaphragms becomes: (the mesh and frequency step size is big, to reduce simulation time)
Impedance:
Sound pressure level:
To validate the results, I have entered the complex diaphragm velocities for 1 frequency calculated by the script into the ANSYS Mechanical simulation (1 simulation, all 4 diaphragms actuated). The pressure at the diaphragms is equal to the result from the Matlab script, as well as the pressure at 1m. The error is in the 0.005% region.
The SPL at microphone position for the validation simulation (f = 56.072Hz):
The result in ANSYS Mechanical is 3dB less (SPL) than the value in my Matlab script. That's because my Matlab script assumes an RMS voltage signal voor e_g, but I entered the diaphragm velocity in the simulation as magnitude.
Model: added a rear chamber + port.
The group who is interested in this is maybe small 🙂, but for someone who is trying to do the same as me in the future, here a small summary:
The rear pressure of diaphragm 1 is P3, and the rear pressure of diaphragm 2 is P4. The electro-mechanical matrices become:
Speaker 1:
Speaker 2:
Both speakers wired parallel. The impedance matrix for 4 diaphragms:
Unfortunately the simulation has to be runned 4 times, each time actuating a different diaphragm (I think this can be simplified, more on that later). The volume velocity of Q3 and Q4 are equal to Q1 and respectively Q2, only the sign is reversed. Doing some rearranging:
Throwing the 2 electro mechanical 2-ports together with the impedance matrix the system of equations becomes:
And apparantly, the cone excursion for both diaphragms becomes: (the mesh and frequency step size is big, to reduce simulation time)
Impedance:
Sound pressure level:
To validate the results, I have entered the complex diaphragm velocities for 1 frequency calculated by the script into the ANSYS Mechanical simulation (1 simulation, all 4 diaphragms actuated). The pressure at the diaphragms is equal to the result from the Matlab script, as well as the pressure at 1m. The error is in the 0.005% region.
The SPL at microphone position for the validation simulation (f = 56.072Hz):
The result in ANSYS Mechanical is 3dB less (SPL) than the value in my Matlab script. That's because my Matlab script assumes an RMS voltage signal voor e_g, but I entered the diaphragm velocity in the simulation as magnitude.
Fascinating simulations delving into the ramifications of unequal loading, appears to be little difference in the impedance and excursion between the drivers.The SPL at microphone position for the validation simulation (f = 56.072Hz):
The SPL difference inside the rear chamber to the throats of ~16dB, and at one meter of ~36dB is an eye-opener, interior SPL could reach peaks well over 160dB in the upper range.
Your simulations here and of the Danley Sound Labs BC-218 makes me curious as to what goes on in multiple entrant horns like the DSL J6-42 and the shorter J7-95 where the low frequency horn's expansion is restricted to a fraction of it's area by small ports, then couples to the main ("final") horn:
Very large restrictions compared to your fictional example, but they obviously are working well in the real world:
Thanks for sharing your insights, some of the most interesting posts to come along here!
Art
Thanks! The reason why I started this is actually because of the BC218 simulations. For the "eye" configuration (2x2x18") the speaker closer to the ground plane is loaded differently and if I considered both speakers to move equally there were soms weird peaks/valleys in the SPL curve and I wanted to know if this was because of unequal loading. This must still be confirmed, but at least there is a way to check this now 🙂.
Those Jericho boxes are in my opinion the coolest you can build (and design). Maybe there will be some plots showing the pressure at these taps in the future.
Those Jericho boxes are in my opinion the coolest you can build (and design). Maybe there will be some plots showing the pressure at these taps in the future.
Yes @weltersys, since BC118 project was taking so long, in meantime me and @Vermond actually started designing cab similar to J7 privately. This is primary reason for those sims. LF section actually proved to be quite difficult to design due to being ported and horn loaded and many things are still a bit unclear. Actually J7 are quite ''small'' speakers considering everything else, I have seen bigger 2x12" old designs before.Your simulations here and of the Danley Sound Labs BC-218 makes me curious as to what goes on in multiple entrant horns like the DSL J6-42 and the shorter J7-95 where the low frequency horn's expansion is restricted to a fraction of it's area by small ports, then couples to the main ("final") horn:
We split work into 2 parts, I am designing MF/HF combiner and already have working prototype with 4 compression drivers and 2 midranges.
Vermond is designing LF section with 6 10" drivers, driver of choice for now is 10NW76, with relatively high compression ratio of about 5:1 (this was reccomended by B&C as optimal for this driver)
LF section actually proved to be quite difficult to design due to being ported and horn loaded and many things are still a bit unclear.
The J7-95 bass reflex ports may not do do much acoustically, but with so many drivers in such a small cabinet, using the "chimney effect" to get rid of heat is a good idea!
https://forums.prosoundweb.com/index.php?topic=171327.100
Peter Morris commented: "the other interesting trick with the J7 is how the LF horn enters the main horn mouth through 8 holes on the horn walls. The trick here is the size and spacing of the hole inside of the mouth are such that they look like a giant speaker grill to the low frequencies and they pass though it without reflection … this is to do with 1 / 4 wavelength spacing."
- Home
- Loudspeakers
- Subwoofers
- Acoustical and mathematical advice requested