if the number of samples for doing fft is not n power of 2 the results accuracy would be affected or it is just matter of speed of calculations ?
이전 댓글 표시
Hello
I am wondering if I use 10000 samples and do the fft my results would be much different comparing to when I have exactly the samples equal to n power of 2 ? is Matlab doing the zero padding automatically ? or I should do zero padding ?
further information :
I am using matlab version 2012b, fft function to perform the dft on my samples. I have the time domain data for 10 minutes with sampling rate of 50 KHz. type of my work necessitates me to devide the time domain data in 200 ms windows. and after performing the fft on these 200 ms windows, I make an average over the different window results. 200 ms in 50 Hz frequency system which is sampled by 50Khz means about 10000 samples for each fft operation.
regards, Ali
댓글 수: 2
Greg Dionne
2014년 8월 15일
You won't need to do zero padding, so feel free to just use your samples as-is.
MATLAB internally computes the FFT without any zero padding at all. Since your sample size is easily factorizable into small primes (10000 = 2*2*2*2*5*5*5*5), it will break down the FFT into smaller sizes. Then it will use split- and mixed- radix FFT's to build the larger 10,000 pt. FFT.
If you have a large prime factor, P, the FFT will use Rader's algorithm to sub-divide that portion of the FFT into a circular convolution of size P-1.
Hope this helps.
-Greg
Ali
2014년 8월 24일
채택된 답변
추가 답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 Fourier Analysis and Filtering에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!