squared fast Fourier transform of a moving boxcar filter

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.

Réponses (1)

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.

Catégories

En savoir plus sur Fourier Analysis and Filtering dans Centre d'aide et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by