Hornresp

Hello David,

In the attached image you can see two phase plots. The only parameter difference between both is the box volume, in one pic its 262l in the other 261l. Should this happen?

regards,

Mathias
 

Attachments

  • Problem.jpg
    Problem.jpg
    44.3 KB · Views: 226

Attachments

  • pd2450-h.txt
    477 bytes · Views: 40
  • PD2450_ sissy-horn.JPG
    PD2450_ sissy-horn.JPG
    243.3 KB · Views: 217
The PD2450 sims well there and is no1 runner for me currently. Need 20Hz to 110Hz
With a fold that horn looks doable. In hornresp how do i sim a 60cm high horn (similar in design to lazy cats horns and similar but on a smaller scale to those bass horns in Milano), not a circular horn?
 
The PD2450 sims well there and is no1 runner for me currently. Need 20Hz to 110Hz
With a fold that horn looks doable. In hornresp how do i sim a 60cm high horn (similar in design to lazy cats horns and similar but on a smaller scale to those bass horns in Milano), not a circular horn?

I never designed a large sub horn with an aspect ratio larger than 4:1 so for Your 5:1 design: I hand over this question to whom this is an easy question to answer.

b:)
 
In the attached image you can see two phase plots. The only parameter difference between both is the box volume, in one pic its 262l in the other 261l. Should this happen?

Hi Mathias,

Thanks for the feedback.

The following formula is used in the Hornresp phase un-wrapping algorithm. It was kindly provided by Jean-Michel Le Cléac'h.

PUNW(N) = PHASE(N) + Pi * Round((2.0144 * PUNW(N - 1) - 1.0144 * PUNW(N - 2) - PHASE(N)) / Pi)

On some occasions, particularly when resonances are unmasked, the formula can produce undesired results. This is the case for the examples you have quoted, resulting in a significant difference in the offset delay correction applied to the displayed phase (0.0 msec versus 1.4 msec).

I am not aware of the theoretical basis of the above phase un-wrapping formula - specifically, I don’t know how the multiplying factors 2.0144 and 1.0144 are arrived at.

If 2.0144 is changed to 2.016 however, then the anomaly you have identified can be eliminated, but this may possibly just shift the problem somewhere else.

Using your two examples to illustrate how the phase un-wrapping formula can break down under certain conditions:

EXAMPLE 1 - Vrc = 261 litres

N = 249
Freq = 347.0345 hertz

PHASE(N) = -0.4271 radians
PUNW(N - 1) = -5.0184 radians
PUNW(N - 2) = -4.8949 radians
PUNW(N) = -6.7103 radians

EXAMPLE 2 - Vrc = 262 litres

N = 249
Freq = 347.0345 hertz

PHASE(N) = -0.4387 radians
PUNW(N - 1) = -5.0181 radians
PUNW(N - 2) = -4.8946 radians
PUNW(N) = -3.5803 radians

Notice how that at 347 hertz the PHASE(N), PUNW(N -1) and PUNW(N - 2) values are quite similar for the two examples quoted (as expected), but that the resulting PUNW(N) unwrapped phase values are quite different. This ultimately means that the corrected phase chart results will also be quite different, as you have observed.

If Jean-Michel happens to read this post, he may care to comment further on the theory behind the phase un-wrapping technique, and if there is anything that can possibly be done to improve it.

Kind regards,

David
 
Hello MaVo and David,

As David said what differs between the 2 cases is that a resonance due to the undamping of the rear load has slightly moves and changes in its intensity.

In such undamped closed box the resonances as calculated by Hornresp can be more than +6dB above the max of the "normal response of the driver". How this plays on the phase as displayed by default in Hornresp is because we choose to define a useful response interval limited (at -6dB) by 2 frequencies F1 and F2.

In MaVo'case F2 which is the upper frequency limit of the "useful part of the response" is sensitive to the presence of a strong resonance in the rear close volume this explains that the mean group delay calculation (which should be 0 in the case of closed box without front horn) is fooled and given around 1.5ms.


Notice that when the graph phase is diplayed and if in both cases (261l and 262l) you set the delay at 0 the 2 graphs phase become the same. This means that the problem concerns only the default presentation of the phase graph but all the phases values in every cases are OK.

In the same time you can also verify that the Impulses Responses in both cases are the same.

I'l try to find a solution to the problem but it is possible that the only will be to remove the resonances in the closed box.

About the value of 2.0144 and 1,0144 in the unwrapping formula, those coefficients are due to the fact that the interpolation has to be performed on a logarithmic frequency scale (the relation between a given frequency F(n) and the previous frequency F(n-1) at the time I wrote this unwrapping module was :

F(n) = 1.0144 * F(n-1)

Note to David : if you happened to modify that frequency multiplier then the values 1.0144 and 2.0144 in the unwrapping formula has to be modified too.

Best regards from Paris, France

Jean-Michel Le Cléac'h
 
Last edited:
Hi 3GGG,

For the purposes of the simulation, assume that the horn is axisymmetric (circular). At bass frequencies the predictions will be accurate enough. A horn mouth 3 metres wide x 60 cm high will have a cross-sectional area of 18000 sq cm.

Kind regards,

David

Thank you David

Is there a trick to sim a Le Cleach Horn this large? Also do those stand type bass stands just use a half of the cross section of the horn ? If that makes sense;)
 
Hi Jean-Michel,

Many thanks for your comments, they have helped me to better understand how your phase unwrapping method works.

In such undamped closed box the resonances as calculated by Hornresp can be more than +6dB above the max of the "normal response of the driver". How this plays on the phase as displayed by default in Hornresp is because we choose to define a useful response interval limited (at -6dB) by 2 frequencies F1 and F2.

Just to clarify - Hornresp is currently using -12dB bandwidth limits as included in your latest code, rather than -6dB limits. As a consequence, the upper and lower frequencies are actually the same for the two examples quoted by Mathias.

Imag1 = 100 and Imag2 = 297 in each example (F1 = 41.20 Hz and F2 = 689.46 Hz).

In MaVo'case F2 which is the upper frequency limit of the "useful part of the response" is sensitive to the presence of a strong resonance in the rear close volume this explains that the mean group delay calculation (which should be 0 in the case of closed box without front horn) is fooled and given around 1.5ms.

The calculated mean group delay values are not the same because the two examples have different calculated unwrapped phases at the limiting frequencies. As indicated above, the limiting frequencies themselves are the same for each example (F1 = 41.20 Hz and F2 = 689.46 Hz).

I'l try to find a solution to the problem

Many thanks Jean-Michel.

I tried unwrapping the phase using the following simple technique. It seems to work reasonably well, but in some instances gives different results to those generated by your more sophisticated method.

Offset = 0
For N = 1 To Nfreq
If PHASE(N) - PHASE(N - 1) > Pi Then Offset = Offset + 2 * Pi
PUNW(N) = PHASE(N) - Offset
Next N

About the value of 2.0144 and 1,0144 in the unwrapping formula, those coefficients are due to the fact that the interpolation has to be performed on a logarithmic frequency scale (the relation between a given frequency F(n) and the previous frequency F(n-1) at the time I wrote this unwrapping module was :

F(n) = 1.0144 * F(n-1)

Ah, now I understand :). Many thanks for explaining this.

Just for your information, the exact coefficient for 1.0144 is actually 10 ^ (1 / 161) in Hornresp - not that it makes any real difference to the overall results :).

Kind regards,

David
 
Last edited:
Jean Michel, how do i sim this type of horn? How does the height of the horn influence the horn. Looking to use a PD 2450:)
quoted from 2454 but the picture didn't come for the ride

Hello, David,


Thank you a lot for that.

Here attached a picture of a Le Cléac'h bass horn ("stand" type) that my friend Didier is currently finishing to build.

(BTW, the white horn is a 200Hz Le Cléac'h horn)

Best regards from Paris, France

Jean-Michel Le Cléac'h
 
I'l try to find a solution to the problem but it is possible that the only will be to remove the resonances in the closed box.

About the value of 2.0144 and 1,0144 in the unwrapping formula, those coefficients are due to the fact that the interpolation has to be performed on a logarithmic frequency scale (the relation between a given frequency F(n) and the previous frequency F(n-1) at the time I wrote this unwrapping module was :

F(n) = 1.0144 * F(n-1)

Hi Jean-Michel,

Now that I better understand the methodology of your phase unwrapping technique, I think that I may have found an error in your formula :).

Working from first principles, I derived the following expression:

PUNW(N)=PHASE(N)+2*Pi*Round(((A1*PUNW(N-1)-(A2-A1)*PUNW(N-2))/(2*A1-A2)-PHASE(N))/(2*Pi))

Where:

A1=10^(1/161)=1.0144
A2=A1*A1

The difference comes about because you use coefficients 1.0144 and 1+1.0144, whereas I am using 1.0144 and 1.0144*1.0144, which I think should be more correct.

Using the new formula I now get effectively the same result for the two examples provided by Mathias, as shown in the attachment.

I would appreciate your comments.

Kind regards,

David
 

Attachments

  • Mathias.png
    Mathias.png
    27.5 KB · Views: 235
Yes, this seems most correct!

Hi Jean-Michel,

Unfortunately when I double-checked my derivation today, I found that I had also made an error :).

I am using known values of PUNW(N-2) and PUNW(N-1) to find an approximate value for PUNW(N) using linear extrapolation.

If A1=1.0144, A2=1.0144^2 and frequency at N-2 = F, then:

(PUNW(N)-PUNW(N-1))/(A2*F-A1*F)=(PUNW(N-1)-PUNW(N-2))/(A1*F-F)

Cancelling out the common F and rearranging / simplifying gives the following approximate value for PUNW(N):

PUNW(N)=(A2-1)*PUNW(N-1)-(A2-A1)*PUNW(N-2))/(A1-1)

Resulting in the following final formula:

PUNW(N)=PHASE(N)+2*Pi*Round((((A2-1)*PUNW(N-1)-(A2-A1)*PUNW(N-2))/(A1-1)-PHASE(N))/(2*Pi))

Unfortunately this new expression does not give the result we are looking for.

Can you see where I am going wrong? Thanks.

Kind regards,

David