I'm trying to understand this great answer from Matt L. . It's said that "One advantage of IIR filters is that steep filters with high stopband attenuation can be realized with much fewer coefficients (and delays) than in the FIR case, i.e. they are computationally more efficient." First of all why this is true? Is this because of poles? Actually this comes from my previous question on removing 400Hz noise. There are two filters for that purpose. The first one is a FIR filter with following frequency response and pole-zero plot: enter image description here And the second one is a IIR filter: enter image description here Removing noise using the IIR filter was far better. Why this happens? According to the frequency responses, attenuation in the case of FIR filter is greater in the magnitude relative to IIR filter. Also I don't understand why zeros in the FIR filter are placed so that and how this positioning corresponds to that frequency response. I understand well the relation between pole-zero plot and frequency response for the IIR filter.


Your assumption why IIR filters can have steeper transitions from passbands to stopbands compared to FIR filters of the same order is correct: IIR filter have poles away from the origin of the complex plane, and poles inside the unit circle close to zeros on the unit circle cause the corresponding frequency response to change rapidly with frequency.

The FIR filter in your question has a much broader notch than the IIR filter. This is not only caused by the fundamental difference between FIR and IIR filters, but also because for some reason the FIR filter has two zeros close to the notch frequency instead of only one. This makes the filter more robust with respect to errors in the estimation of the noise frequency, but it may also attenuate desired frequency components. It's also much harder for an FIR filter to approximate a constant response away from the notch frequency because the frequency response of an FIR filter is a polynomial and not a rational function as is the case for IIR filters.

From the zero locations of the FIR filter you can see that the filter is a linear phase filter: the zeros are either on the unit circle or they are mirrored at the unit circle. Note that FIR filters don't need to have linear phase. The required filter order for a certain specification can often be somewhat reduced if we don't impose the linear phase constraint.

  • $\begingroup$ Thanks. Does increasing the order of FIR filter cause steeper transitions? I agree that IIR filter has tighter notch but the magnitude of attenuation is much less than FIR. Why it removes noise completely but FIR can't do that? $\endgroup$ – S.H.W Jul 27 '20 at 19:26
  • $\begingroup$ @S.H.W: Increasing the order of the FIR filter makes the transitions steeper. I don't understand what you mean by "the magnitude of attenuation is much less than FIR". The attenuation at the notch frequency is infinite in both cases because you have a zero in the frequency response at that frequency. If you know the noise frequency, both FIR and IIR filters can completely cancel the noise - assuming that it's a sinusoid - if you place a zero at the exact frequency of the interference. $\endgroup$ – Matt L. Jul 27 '20 at 20:38
  • $\begingroup$ Could you elaborate on the reason for steeper transitions when the order is increased, please? Oh, you're right. I misunderstood the frequency responses that are in dB unit. There is an asymptote at the notch frequency when the magnitude of the frequency response is expressed in dB, right? $\endgroup$ – S.H.W Jul 27 '20 at 21:10
  • $\begingroup$ @S.H.W: A higher filter order means more coefficients, i.e., more degrees of freedom to improve the approximation. It's just like approximating some function with a polynomial: a higher polynomial order will generally result in a better approximation than a low order. $\endgroup$ – Matt L. Jul 28 '20 at 9:42
  • $\begingroup$ I see. Thank you so much. $\endgroup$ – S.H.W Jul 28 '20 at 19:08

Is this because of poles?

Yes. A steep drop or rise in a filter's frequency-domain response can only be achieved with a filter that has a long memory. In a FIR filter, this long memory can only come from, well, being long. In IIR filter, this long memory can come from having poles that are close to the unit circle.

  • $\begingroup$ Why a steep drop or rise in a filter's frequency-domain response is related to the long memory? Also what's the mathematical definition of the filter's memory? $\endgroup$ – S.H.W Jul 27 '20 at 21:15
  • $\begingroup$ The question about steep skirts and long memory is a question that should be posted separately -- it's too big to handle in a comment. It's probably been asked and answered already, but I couldn't find one (but then, my Google Fu is poor). Within the context of a comment -- it just is (sorry). $\endgroup$ – TimWescott Jul 28 '20 at 2:49
  • $\begingroup$ The "memory" comment was a bit vague, but more or less it's the filter's settling time, i.e. the amount of time it takes to completely or mostly settle out from an impulse (because an IIR filter will never completely settle out). $\endgroup$ – TimWescott Jul 28 '20 at 2:51
  • $\begingroup$ Okay, thanks. So you mean poles near the unit circle increase the settling time of the impulse response? $\endgroup$ – S.H.W Jul 28 '20 at 4:41
  • $\begingroup$ Yes -- and that's a basic fact about working in the z domain that you really should verify for yourself with pencil and paper, just to gain the mathematical chops you need. $\endgroup$ – TimWescott Jul 28 '20 at 15:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.