Modeling an Acoustic Reflection from a Wall - a Paradox?

I am trying to simulate the reflection of a sound ray, that goes from a sound source, bounces off a wall, and is received by a microphone.

The wall has a an absorption coefficient, and a specular reflection coefficient, both of which vary by frequency. Thus, the sound reflected by the wall specularly can be characterized by a certain frequency response curve.

LTI filters are characterized by a frequency response and a phase response. Thus, we can treat the contribution of the wall's specular reflection as a LTI filter (applied to the source signal) if we know the correct phase response.

The reflection path (shown in red) corresponds to a time delay proportional to the length of the path. If we assume a constant time delay across the frequency spectrum we get a linear-phase filter, that is symmetric about the time-delay corresponding to the reflection path length.

However, this filter clearly has "anti-causal" components: the filter is nonzero before the red line. Thus, the filter begins to have an effect on the signal before the length of the reflection path would suggest that it should.

It seems that either the assumption of constant time delay across the frequency spectrum must be wrong then? If so, I wonder what the correct phase response of the filter is.

2 Answers

It seems that either the assumption of constant time delay across the frequency spectrum must be wrong then?

It's indeed a wrong assumption. Physical systems are causal and zero-phase doesn't exist in the real world. Take the simple example of an first order RC lowpass: it's definitely NOT zero-phase (or linear phase).

If so, I wonder what the correct phase response of the filter is.

Minimum phase is a good starting point, but that depends on the physical mechanism that causes the absorption. If the absorption is caused by the material or surface properties than minimum phase is a good approximation. If it's caused by resonance in the wall structure (e.g. drywall vibrating on studs), then there can be significant energy storage in the wall and you get allpass components as well.

From the fact that your answer contains a matplotlib generated figure, I assume that you are doing this in Python, thus discrete time. Discrete time means bandlimiting, which means low pass filtering in return. Lowpass filtering means convolution with a $$\mathrm{sinc}$$ kind of function, which is exactly what you see in your figure.

• Not true. Minimum phase lowpass filter are fully causal. You only get a sinc for a "ideal" brickwall zero phase lowpass filter. Sep 4 at 11:20