Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

spike in my inverse fourier transform

I am trying to compare two data sets in MATLAB. To do this I need to filter the data sets by Fourier transforming the data, filtering it and then inverse Fourier transforming it.

When I inverse Fourier transform the data however I get a spike at either end of the red data set (picture shows the first spike), it should be close to zero at the start, like the blue line. I am comparing many data sets and this only happens occasionally.

I have three questions about this phenomenon. First, what may be causing it, secondly, how can I remedy it, and third, will it affect the data further along the time series or just at the beginning and end of the time series as it appears to from the picture.

Any help would be great thanks.

alt text

like image 749
Jon Avatar asked Dec 23 '22 07:12

Jon


1 Answers

When using DFT you must remember the DFT assumes a Periodic Signal (As a Superposition of Harmonic Functions). As you can see, the start point is exact continuation of the last point in harmonic function manner.

Did you perform any Zero Padding in the Spectrum Domain? Anyhow, Windowing might reduce the Overshooting.

Knowing more about the filter and the Original data might be helpful.

like image 63
Royi Avatar answered Dec 28 '22 08:12

Royi