The FFT decomposes a signal into cosine and sine functions, respectively, even and odd components of the signal. Hence, I would expect even symmetric filters to have zero imaginary parts.
Suppose a signal as the following $$x_a[n] = [x_1,\ x_2,\ \textbf{x}_3,\ x_2,\ x_1]$$
This signal is considered symmetric if $\textbf{x}_3$ is considered $t=0$.
However, when applying the FFT, in order to get a representation that has the imaginary component equal to zero, I would first need to shift the signal in order to have $$x_b[n] = [\textbf{x}_3,\ x_2,\ x_1,\ x_1,\ x_2]$$
Would it be correct to say that both $x_a$ and $x_b$ are symmetric?
Filtering a signal by both of these signals would clearly yield two different results.
Am I dealing with two different definitions of symmetric signal?
I understand that all of it is caused by the difference in representation, difference in the location of the point of symmetry. But given the task of filtering an input signal by a symmetric filter, which one should be considered, $x_a$ or $x_b$?
PS: Apologizes if my questions are confusing. I am still trying to better formulate it myself.
I am just a bit confused that for linear phase FIR filters it seem to be required to do the ifftshift
I mentioned above. I am not sure if this is due to the fact that the symmetric filters are defined in terms of DTFT
, and in my application I am working with DFT
. So, I would appreciate if someone could put some light into it. Thanks.
numpy
, for instance,np.fft.ifftshift([1, 2, 3, 2, 1])
outputsarray([3, 2, 1, 1, 2])
$\endgroup$