The default Hamming window length when using function 'etfe'

7 views (last 30 days)
In the algorithm section of 'etfe' function description it is written: You obtain the smoothed versions (_*_M less than the length of z_*_) by applying a Hamming window to the output fast Fourier transform (FFT) times the conjugate of the input FFT, and to the absolute square of the input FFT, respectively, and subsequently forming the ratio of the results.
I tried this with my 1000-point data set and plotted the frequency response using default window length setting and 1000 (my data length). The result is NOT the same. With 1000 window length the spectrum is still smoothed. I could not reproduce the default setting plot until I raised the window length to around 1340.
Could some one please explain to me why it is like this??
The code to explain what I'm talking about could be: estimate1 = etfe(testData, [], 128); bode(estimate1); estimate2 = etfe(testData, 1000, 128); bode(estimate2); Where testData is a 1000-point data set with single i/o signal.
  2 Comments
Wayne King
Wayne King on 23 Aug 2012
Can you please provide a simple example with MATLAB code to demonstrate what you are talking about.
Yingzhi
Yingzhi on 27 Aug 2012
There's no code. I tried it with GUI.
But if you feel more comfortable with code let's put it like this: testData is my 1000-sample iddata object(single i/o). estimate1 = etfe(testData, [], 128); bode(estimate1); estimate2 = etfe(testData, 1000, 128); bode(estimate2);
I'm expecting the two Bode plots to be same because the reason mentioned in the main post. However, the result shows that estimate2 is still a smoothed version compared to the default(estimate1). This is contradictory to what is documented for function 'etfe' which says "You obtain the smoothed versions (M less than the length of z) by applying a Hamming window" and "When M is specified other than the default value M = [], a smoothing operation is performed on the raw spectral estimates."
My understanding of these two sentences is that default is no smoothing and specifying M smaller than my data length is smoothing. Then when I specify M to be equal to my data length(1000 here) there should be no smoothing. The results nevertheless show otherwise.
I hope my explanation is good enough this time. Thanks for your comment.

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!