3 ms·
I think you've misunderstood the question; it was "step" in the sense of "operation" or "inference in a proof", not in the sense of "difference between successi
by gjm11 16y ago
I think you've misunderstood the question; it was "step" in the sense of "operation" or "inference in a proof", not in the sense of "difference between successive values". sireat wants to know why the FFT works, not what the relationship is between sample spacings in the input and the output.
- jacquesm 16y agoAh ok, I see. I got thrown off by the use of the words 'magic algorithm here to find frequencies', I thought that implied he was searching for what absolute frequency was tied to which bucket. Sorry. Also, the 'imaginary' bit contains the phase information, if you are only interested in the frequency domain you could discard this, but if you ever want to reconstruct the original (or if you want to construct a changed signal, such as after filtering) then you'll need that phase information. So you'll need to keep the data in its 'complex' form if you want to do anything more than naive analysis.
- gjm11 16y agoNonono, don't discard the imaginary part! If you don't care about phase information, use sqrt(real^2+imag^2) to give you the magnitude of each component.
- iskander 16y agoUhh...if I remember correctly then the Fourier transform is: F(w) = <f(x), cos(2 pi w x)> + i <f(x), sin (2 pi w x) > (where <_, _> is the inner product between functions, x is a time and w is a frequency). So the imaginary component is not the phase but how much of your function is explained by a sine wave. To get the phase you should take the angle of each complex number (and to get the amplitude you take the magnitude).