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

201 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?

Kategorien

Mehr zu Fourier Analysis and Filtering finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by