Identification of Resonance frequencies

9 views (last 30 days)
Shrinivas Gombi
Shrinivas Gombi on 6 Jul 2011
I want to evaluate Resonanat frequencies and Magnitude of FRF from FRF vs Frequency Plot.I have used the following steps but the answer is incorrect.Pl help me to locate the mistake a = [30000 x 1 readings]; ffa = fft(a); F =[30000 x 1 readings]; fff = fft(F); H = ffa./fff; aH = abs(H); L = 30000; NFFT = 32768; Fs = 10000; y = aH; Y = fft(y,NFFT)/L; f = Fs/2*linspace(0,1,NFFT/2+1); semilogy(f,aH) After the execution the statement is shown as ??? Error using ==> semilogy Vectors must be the same lengths.** Pl tell me length of which vector is not matching SLG
  2 Comments
Andrew Newell
Andrew Newell on 6 Jul 2011
Please format your code (see http://www.mathworks.com/matlabcentral/answers/7885-tutorial-how-to-format-your-question).
Paulo Silva
Paulo Silva on 6 Jul 2011
Just look at your workspace window and the Size tab that tells you the sizes of all the current workspace variables, you can also do size(f) and size(aH) to know their sizes.

Sign in to comment.

Answers (1)

Rick Rosson
Rick Rosson on 6 Jul 2011
The problem is that the array f is of size 1 x 16385, whereas the array aH is of size 30000 x 1. When you call semilogy(f,aH), MATLAB expects that f and aH will have the same size and shape. Since they do not, you are getting the error messaage.
Please help us help you:
1. Reformat your code as suggested in Andrew Newell's comment.
2. What size is the variable y in your code?
Thanks!
Rick
  2 Comments
Shrinivas Gombi
Shrinivas Gombi on 7 Jul 2011
Dear Sir,
Thank u very much for ur answer.Presently I have modified my program like this and is giving results.Pl let me know what I should make to get the results from using the commented statements?
The value of y=aH is also should be 30000x1 size.
a= [30000x1 array];
F=[30000x1 array];
ffa= fft(a);
fff= fft(F);
H = ffa./fff;
aH = abs(H);
% L = 30000;
% NFFT = 32768;
% Fs= 10000;
% y=aH;
% Y = fft(y,NFFT)/L;
aH1=aH(1:1000);
f=1:1:1000;f=f/pi;
%f = Fs/2*linspace(0,1,NFFT+1);
semilogy(f,aH1)
Can we make aH1=aH(1:16385); and f=1:1:16385; f=f/pi?
Rick Rosson
Rick Rosson on 11 Jul 2011
I do not understand what you are trying to do, what is not working right now, or what your question is.

Sign in to comment.

Tags

No tags entered yet.

Community Treasure Hunt

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

Start Hunting!