for your info: ch. 11 mbe: fast fourier transforms



Raymond Toy wrote:
> Robert Dodier wrote:
>> On 5/5/09, dlakelan <dlakelan at street-artists.org> wrote:

>> Having thought it over, I'm opposed to changing the definition of
>> the FFT for Maxima.
>>
>> I'm pretty sure the FFT definition should be general, and not
>> embody some particular assumption about what people are trying
>> to do. Maybe in some cases it's safe to make assumptions, but it
>> certainly isn't for FFT.
>>   
> I agree with this. The FFT is pretty-well standardized to be what Maxima
> is doing today. If you change it to fit your needs, it will certainly
> collide with my needs which are usually exactly the form that Maxima
> returns today.
> 
> However, I vaguely recall that matlab has an fftshift (fftsplit?)
> function that takes the right half and puts in before the left half so
> that the zero frequency term is in the middle. I only used this for
> plotting so that you get the expected amplitude spectrum plot (for
> low-pass signals).

I am not actually advocating changing what the FFT DOES, only how we 
describe what it does, so that people know where the frequencies are. 
The current formula in the documentation is true because frequencies 
higher than the Nyquist frequency (pi radians per sample) alias 
appropriately onto negative frequencies...

In a sampled signal, there are no frequencies representable that are 
greater in absolute value than the nyquist frequency, so the current 
formula which involves frequencies from 0 to 2pi radians per sample is 
again confusing.

I'm advocating the use of a formula (in the documentation) which 
describes what the current FFT does in a way that is more interpretable, 
but exactly equivalent (I think!). I would be happy to hear where I'm 
going wrong on the exactly equivalent part.

I agree, we should not change what the FFT does.