1

Why is a LPF ideal filter:

a) Not useful?

b) Hard to make?

I was asked to make a Low pass filter (simulink block) that will take an input of a cutoff frequency, and for a signal with a frequency higher then that cutoff frequency, the amplitude would be zero & with zero roll-off. Hence ideal. Is this an impossible task?

Adam
  • 37
  • 1
  • 5
  • Regarding a), one disadvantage of an ideal LPF is that it's not stable (http://dsp.stackexchange.com/questions/1032/is-ideal-lpf-bibo-unstable). Regarding b), I think you should try and see for yourself how hard it really is. – MBaz Jun 02 '15 at 17:22
  • Question (b) is a misconception: it is not possible to construct an ideal filter. Many people assume that they can create one by transforming a discrete-time signal with a DFT, zeroing out some bins, and inverse-transforming back to the time-domain. Doing this does not apply an ideal filter frequency response to the original signal; try it, look at an interpolated version of the output signal's spectrum, and see what you get. – Jason R Jun 02 '15 at 19:17
  • The causality is the problem with an ideal filter. However, if you have non-causal access (e.g. you have the sequence you want to filter stored as a file), you can implement it (say, by padding the signal before and after with zeros). – Batman Jun 02 '15 at 20:28
  • 1
    @Batman, I disagree... you still need to contend with the fact that the impulse response's duration is infinite. – MBaz Jun 03 '15 at 00:42
  • That isn't a problem. If the signal is finite length, the convolution can be written over the support of the signal giving a finite sum/integral, which is trivial to implement. Even if it is infinite though, you just need to write down the convolution integral to realize it (the realization may be hard, but its definitely possible). Having infinite impulse response duration is not a problem (IIR filters are trivial to implement) -- the problem is the non-causality in many applications. – Batman Jun 03 '15 at 02:42
  • 2
    @Batman: If the length of the input signal is finite, your output signal is still infinitely long if the system's impulse response is infinitely long. Furthermore, the problem is not only causality but also stability, because an ideal LPF is not stable, i.e. there are bounded input signals for which the output signal is unbounded. – Matt L. Jun 03 '15 at 16:09

1 Answers1

2

You can only make a finite-order digital filter, since you don't have infinite CPU capacity, infinite RAM, infinite numerical precision and infinite time to wait.

With a finite-order filter, the Z-transform will be an analytic function over the complex domain. The frequency response is the Z-transform evaluated over the closed path $z = e ^{j\Omega}$ (i.e. the unit circle), where $\Omega$ is the frequency.

An analytical function evaluated over a path will result in an infinitely derivable and continuous frequency response (property of analytical functions, as long as you don't step over poles).

An ideal LPF is discontinuous at the cutoff frequency. So not possible to implement.

In practice, since the ideal LPF is a discontinuous frequency response, adding more coefficients to your filter will converge slowly to the desired frequency response (convergence is in mean-quadratic sense, which is slow). So you will end up with a filter with many coefficients, bad frequency response, lot of delay, and lots of roundoff errors.

Juancho
  • 5,016
  • 20
  • 20
  • "An ideal LPF is discontinuous at the cutoff frequency. So not possible to implement." Can you explain in more detail why it is impossible to implement here? – emnha Jul 27 '17 at 00:27