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

261 visualizaciones (últimos 30 días)
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));

Respuesta aceptada

dpb
dpb el 19 de Oct. de 2017
Editada: dpb el 19 de Oct. de 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

Más respuestas (2)

Paul Clarkson
Paul Clarkson el 20 de Oct. de 2017
Thank you!

Shivam Bahuguna
Shivam Bahuguna el 19 de Ag. de 2020
How to take care of the window ccorrection factor while doing this?

Categorías

Más información sobre Fourier Analysis and Filtering en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by