Extraction of modal parameters from state-space model
2 次查看(过去 30 天)
显示 更早的评论
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
0 个评论
回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Dynamic System Models 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!