How to do a fft from a sine signal with hanning function
48 views (last 30 days)
Show older comments
Hello, i want to do a fast fourier transformation on a sine signal. By using the hanning function. Btw i am a newbie, concering matlab programming so, dont be to hard too me. If you could also help me explain the hanning function properly, i would really appreciate it.
0 Comments
Answers (2)
Jan Orwat
on 4 Oct 2016
Edited: Jan Orwat
on 4 Oct 2016
You can try starting with something like this
fs = 44100; % sampling frequency
T = 1; % period, 1 second
n = T*fs;
t = linspace(1/fs, T, n);
% calculate hanning window, if you have Signal Processing Toolbox just use hann(n)
window = 0.5 - 0.5*cos(2*pi*linspace(0, 1, n));
% generate simplest sine signal
freq = 1000; % 1kHz sine wave
s = sin(2*pi*freq);
% calculate fft
z = fft(s.*window);
hanning window is just 1 - one period of cosine function, it's usually normalised to 1.
5 Comments
mehdi fathizad
on 23 Mar 2019
hi everone
Now i am doing a project about damage detection of structure based on ARMA model. I have already taken all the accelerations for damaged and undamaged system and I want to use pre-whitening procedure to remove correlation between the story's responses. I read somewhere that for doing pre-whitening its better to do hanning window at first on my response time series. then carry out the fft fallowing the normalization. at the end, inverse FFT and then start the ARMA procedure on the obtained new time series.
I am wondering if its correct (whole concept and the arrangement)?
and also normalization means dividing all magnitude by the maximum amount?
if so, after producing the new time series, how can I check to find out the procedure was rigth or not?(for example checking the variance, mean and so on)
thanks
See Also
Categories
Find more on Filter Analysis 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!