Filter löschen
Filter löschen

How do I add a Hanning Window to this code before I FFT it?

206 Ansichten (letzte 30 Tage)
Paul Clarkson
Paul Clarkson am 19 Okt. 2017
Beantwortet: Shivam Bahuguna am 19 Aug. 2020
Hi,
I've heard adding a Hanning Window can help with data processing before you apply a Fourier Transform. With the code I have below, where can I add such a window?
Any help would be greatly appreciated.
a=dlmread('Ethanol_05273.txt');
alex_x=a(873:2048,1)/1000;
alex_y=a(873:2048,2);
plot(alex_x,alex_y); grid on;
alex_x_f=10000./alex_x;
F=linspace(min(alex_x_f),max(alex_x_f),1024);
alex_y_f=interp1(10000./alex_x,alex_y,F,'pchip');
FT=fft(alex_y_f);
figure;
plot(abs(FT));

Akzeptierte Antwort

dpb
dpb am 19 Okt. 2017
Bearbeitet: dpb am 19 Okt. 2017
FT=fft(hanning(length(alex_y_f)).*alex_y_f);
presuming your data are vectors. If not, use the proper array dimension for length() of window, of course.
See
doc hanning % details on windowing

Weitere Antworten (2)

Paul Clarkson
Paul Clarkson am 20 Okt. 2017
Thank you!

Shivam Bahuguna
Shivam Bahuguna am 19 Aug. 2020
How to take care of the window ccorrection factor while doing this?

Community Treasure Hunt

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

Start Hunting!

Translated by