squared fast Fourier transform of a moving boxcar filter
8 views (last 30 days)
Show older comments
I need to calculate time evolving PSD or Squared fft of a signal at certain frequency using a moving boxcar filter. I need to show the variations of signal at certain frequencies over time.
0 Comments
Answers (1)
Wayne King
on 15 Mar 2013
Just specify the boxcar filter as the window argument in spectrogram.
t=0:0.001:2;
x=chirp(t,0,1,150);
win = 1/200*ones(200,1);
% if you want unit norm in your filter
win1 = 1/sqrt(200)*ones(200,1);
[y,f,t,p] = spectrogram(x,win,100,length(win),1E3);
The matrix, p, contains the short-time PSD estimates for a length 200 with a 100 sample overlap in the above example. Tailor it as appropriate for your case.
0 Comments
See Also
Categories
Find more on Fourier Analysis and Filtering in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!