Identification of Resonance frequencies

9 vues (au cours des 30 derniers jours)
Shrinivas Gombi
Shrinivas Gombi le 6 Juil 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 commentaires
Andrew Newell
Andrew Newell le 6 Juil 2011
Please format your code (see http://www.mathworks.com/matlabcentral/answers/7885-tutorial-how-to-format-your-question).
Paulo Silva
Paulo Silva le 6 Juil 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.

Connectez-vous pour commenter.

Réponses (1)

Rick Rosson
Rick Rosson le 6 Juil 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 commentaires
Shrinivas Gombi
Shrinivas Gombi le 7 Juil 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 le 11 Juil 2011
I do not understand what you are trying to do, what is not working right now, or what your question is.

Connectez-vous pour commenter.

Tags

Aucun tag saisi pour le moment.

Community Treasure Hunt

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

Start Hunting!

Translated by