From: Duraisamy sundararajan on 17 Oct 2009 14:30 "Sven Schulz" <sven-schu(a)arcor.de> wrote in message <4a8f0ffe$0$31873$9b4e6d93(a)newsspool3.arcor-online.net>... > hi, > > i am searching for a matlab-function or code to get a full discret > Fourier analysis (DFT)which is easy-to-use. > > I would avoid the "problems" with the Fast Fourier analysis (FFT), like > input-vector must have 2^x numbers. I have input-vectors which are > between one 2^n and another 2^n. The fft will fill the difference with > zeros (with an error at the spectrum). > > Sven > hi, Most of the practical signals are aperiodic. A most common application of DFT is computation of convolution. In analyzing an aperiodic waveform or computing convolution, zero-padding is allowed. Therefore, power of two restriction on the length of sequence for dft algorithms is not a problem in almost all applications. If you insist on other lengths, you can always design an algorithm. But, the efficiency will be much lower than that of the power-of two algorithms. In addition, the computed DFT coefficients will be less accurate. Eventually, if your sequence length is a prime number, then the DFT definition itself is the algorithm. Please ensure that your application requires a non power of two algorithm. A DFT algorithm for a sequence length that is a factor of three is given in my book Discrete Fourier Transform. You can use that approach for designing DFT algorithms for other data lengths.
From: Greg Heath on 17 Oct 2009 23:26 On Aug 21, 5:22 pm, "Sven Schulz" <sven-s...(a)arcor.de> wrote: > hi, > > i am searching for a matlab-function or code to get a full discret > Fourier analysis (DFT)which is easy-to-use. > > I would avoid the "problems" with the Fast Fourier analysis (FFT), like > input-vector must have 2^x numbers. I have input-vectors which are > between one 2^n and another 2^n. The fft will fill the difference with > zeros (with an error at the spectrum). MATLAB's fft does not do that. Therefore, as long as your data is uniformly spaced, there is no reason for not using it. However, if your data is not uniformly spaced, you can use my DFT code by searching greg-heath DFT Hope this helps. Greg
From: Greg Heath on 18 Oct 2009 00:19 On Oct 17, 11:26 pm, Greg Heath <he...(a)alumni.brown.edu> wrote: > On Aug 21, 5:22 pm, "Sven Schulz" <sven-s...(a)arcor.de> wrote: > > > hi, > > > i am searching for a matlab-function or code to get a full discret > > Fourier analysis (DFT)which is easy-to-use. > > > I would avoid the "problems" with the Fast Fourier analysis (FFT), like > > input-vector must have 2^x numbers. I have input-vectors which are > > between one 2^n and another 2^n. The fft will fill the difference with > > zeros (with an error at the spectrum). > > MATLAB's fft does not do that. > Therefore, as long as your data is uniformly > spaced, there is no reason for not using it. > > However, if your data is not uniformly spaced, > you can use my DFTcode by searching > > greg-heath DFT Forget that. There are fast versions for nonuniform spacing. For example, searching NNFFT yields http://www-user.tu-chemnitz.de/~potts/nfft/ Hope this helps. Greg
|
Pages: 1 Prev: Ezplot constants? Next: Unsteady Navier-Stokes Equation Solution |