> Erwin is right: the Fourier TRANSFORM does not assume periodicity, > because it calculates the fourier 'coefficients' for every frequency > on the real axis. Sure? Well, the DISCRETE fourier transform DOES assume periodicity, because with a finite number of base vectors which are all periodic (sin and cos), all you can get is a periodic function. In programming, you always deal with the discrete FT (unless you do computer algebra ;-), not the continuous one with the integral. What is the moral of this? If you want to to use the discrete fourier transform on a finite signal, then you have to make this finite signal artificially periodic. The FT always consideres the data block you give it as a periodic signal and you you are not carefull, you will see the probably large edge between the last and the first sample in your spectrum -> you get a pretty weird spectrum. What can you do against this? Just multiply your data block with a 'windowing function', which makes your data periodic (i.e. last sample = first sample = 0) without doing too much harm to the spectrum. A number of good windowing functions are described in every signal processing textbook. They are called Welch, Hann, Hamming, Barlet, etc. window functions. With them, you get really good spectral estimation using the DFT. All this is old well-established standard technology explained in detail in every book about digital signal processing. There's also a nice easy to understand chapter 13.4 in "Numerical Recipes in C" by W. H. Press et. al., ISBN 0-521-43108-5 about spectral estimation using the FFT. Markus -- Markus Kuhn, Computer Science student -- University of Erlangen, Internet Mail: - Germany WWW Home: