Extraction of modal parameters from state-space model

4 visualizaciones (últimos 30 días)
Murray
Murray el 4 de Feb. de 2021
I have transformed my experiemtnal input - output responses data into a data object
Sample.Data=iddata(y,x,Ts);
where sampling frequency is 2048 Hz. I have then constructed state-space matrices of my system using an estimate 20th model order
ss.System = n4sid(Sample.Data,20,'Ts',Sample.Data.Ts);
How / what is the most efficient method of extracting the modal parameters frequencies (Hz), modal damping ratios (%) and mode shapes from the state-space matrices in matlab? To find the natural frequencies and damping ratios I have written the following however I seem to have issues with my modeshapes:
%Obtain the Eigenvalues and Eigenvectors
[V,D] = eig(ss.System.a);
%Ensure eigen values and vectors are sorted correctly
[d,ind] = sort(diag(D));EigenFreq= D(ind,ind);EigVector=V(:,ind);
% Calculate the frequencies and damping ratios from the eigenvalues of A
for jj=1:1:length(EigenFreq)
wk(jj)=abs(log(EigenFreq(jj,jj)))/Dt;
fk(jj)=wk(jj)/(2*pi);
Dk(jj)=-real(log(EigenFreq(jj,jj)))/(wk(jj)*Dt);
end
%Calculate the mode shapes from eigenvectors and C matrix
UnorderedEig(1:length(EigenFreq))=(ss.System.c*V)';
Phi=UnorderedEig(:,ind);
The mode shapes I obatin are complex numbers and I am unsure of how to convert them to real modeshapes.
Any help on the subject would be greatly appreciated. Thank you in advance

Respuestas (0)

Categorías

Más información sobre Dynamic System Models en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by