1
$\begingroup$

Following shows the discrete time Fourier transform of an ideal low pass filter with cutoff frequency $\omega_c$: $$H\left(e^{j\omega}\right) = \begin{cases} 1, & \text{if $|\omega| \le \omega_c$} \\ 0, & \text{otherwise} \end{cases} $$ Taking inverse discrete time Fourier transform would result in following infinite support impulse response: $$h[n] = \frac{\omega_c}{\pi} \operatorname{sinc}\left(\frac{\omega_c n}{\pi}\right)$$ If we want to filter out high frequency components of a finite support sequence $x[n]$ in time domain, we have to compute the convolution product of $x[n]$ and $h[n]$. Since $h[n]$ is of infinite length, it is not possible to implement it for example in a computer program and we must use a truncated version of it. But in frequency domain, we can simply multiply $X(e^{j\omega})$ (i.e. discrete time Fourier transform of $x[n]$) with $H(e^{j\omega})$ and then take inverse discrete time Fourier transform to evaluate filtered version of sequence $x[n]$. In brief, my question is why don't researchers and engineers employ frequency response of ideal low pass filters and instead, they have developed a vast body of literature on filter design?

In other words, $h[n]$ is ideal but its frequency response $H(e^{j\omega})$ is practical and realistic.

$\endgroup$
1

2 Answers 2

0
$\begingroup$

This might work with pencil and paper, but not with real-world signals represented in a computer or processor. In order to multiply $X(z)$ and $H(z)$ the spectra need to be sampled in frequency as well. I.e you have to pick a sampling interval in frequency as well or you get time-domain aliasing. Multiplication of discrete spectra is circular convolution, not linear convolution.

Since the impulse response of an ideal lowpass filters is infinite, it CAN NOT be sampled in the frequency domain without some amount of error. In other words: you need to pick a FFT size where BOTH signal and filter impulse response fit, but you can't.

$\endgroup$
1
$\begingroup$

In other words, $h[n]$ is ideal but its frequency response $H(e^{jω})$ is practical and realistic.

This is not true. To compute $H(e^{j\omega})$, you must evaluate the summation $\sum_{n=-\infty}^{\infty}h[n]e^{-j\omega n}$. A real system can't do this because $h[n]$ is not finite length.

Say you choose to use a rectangular window $w[n]$ (with length $2M+1$) to force $h[n]$ to a finite length and the summation becomes $\sum_{n=-\infty}^{\infty} h[n]w[n]e^{-j\omega n} =\sum_{n=-M}^M h[n] e^{-j\omega n}$. There is still the problem of $\omega$ being a continuous variable. For example, a computer can represent $h[n]w[n]$ in an array, but how is a computer supposed to store $H(e^{j\omega})$ in memory? It should have to store all function values between $-\pi$ and $\pi$ of which there are infinite.

$\endgroup$
2
  • 2
    $\begingroup$ Yes, it is. But the same is true about other filters. $\endgroup$
    – Pirooz
    Aug 5, 2020 at 18:22
  • $\begingroup$ @Pirooz Yes what is? What filter are you talking about that implements $H(e^{j\omega})$? $\endgroup$
    – Engineer
    Aug 6, 2020 at 12:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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