polyeig gives different eigen values for the same matrices.

2 views (last 30 days)
I am trying to find eigen value for a system with the Global mass, stiffness and damping matrix. There are two sets of matrices with one set name as:
GLK - Global stiffness matrix
GLC - Global damping matrix
GLM - Global mass matrix
and the other set as
glk - Global stiffness matrix
gld - Global damping matrix
glm - Global mass matrix.
In spite of the fact that both set of matrices are exactly the same, polyeig returns different eigen values.
In the matlab file that I have attached a and b are:
a = polyeig(GLK,GLC,GLM);
b = polyeig(glk,gld,glm);

Accepted Answer

Walter Roberson
Walter Roberson on 5 Dec 2019
Edited: Walter Roberson on 5 Dec 2019
In spite of the fact that both set of matrices are exactly the same
But they are not.
>> isequal(GLC,gld)
ans =
logical
0
>> max(max(GLC-gld))
ans =
0.224105817267403
>> min(min(GLC-gld))
ans =
-0.224105817267403
I find it odd that for the two that are exactly the same, that the names are upper/lower case of each other, and that for the ones that differ, the names differ (GLC vs gld) and I have to wonder if you have accidently used the wrong matrix.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!