DSPRelated.com
Forums

Higher resolution FFT

Started by Maria Mount January 21, 2004
Hi,
Thank u all for being so nice and supporting . Now there is another
technique of getting higher resolution fft i have learned from mathematical
journal without taking long sample here is steps involved in it

(1)On input Data perform FFT using Nres NFFT = Length of data
(2)Take chunk of data perform IFFT on it
(3) Do FFT on it Higher resolution
(4) Again do IFFT on chunk of data
(5) Do FFT on it using very narrow resolution

The journal says this algorithm of Zoom fft is recursive and can be implemented
when i tried to implement on matlab i get serious errors

clear all;
fs = 400 ; % sampling rate
Nres = 0.1 ; %spectral resolution of fft
Nfft = fs/Nres ; % number of points in fft i.e 4000
t = (0:Nfft-1)/fs ; %length of signal in time domain
sig1 = sin(2*pi*t*100); %100 Hz sinousidal signal
sig2 = sin(2*pi*t*100.3) ; %100.5Hz sinousidal signal
sig0 = sig1+sig2 ; %Adding signal together
blocksize = 4000;
wnd = hanning(blocksize)' ; %Hanning window
olap = 0.5; %Overlap by half a block each time
len = length(sig0);
overlap = 0.5 ; % overlap by half block each time
for k = 1:overlap:len/blocksize
ss = (k-1)*blocksize+1; %First block index
ee = k*blocksize ; %Last block index
sndw = fft(wnd.*sig0(ss:ee));
end Now am confused where to put ifft and fft

Regards
Maria

---------------------------------