# eigen value what i am getting from matlab software that is not exact when i am compairing with hand calculated value and the mode shape i am getting is reverse

조회 수: 3(최근 30일)
Susanta Barik 2022년 4월 21일
편집: Walter Roberson 2022년 4월 22일
format long g
m1=50000;
m2=50000;
m3=50000;
mass=diag([m1 m2 m3]);
fprintf('The mass matrix \n');
The mass matrix
disp(mass)
50000 0 0 0 50000 0 0 0 50000
k1=50*10^6;
k2=50*10^6;
k3=50*10^6;
stiffness=[k1+k2 -k2 0;-k2 k2+k3 -k3;0 -k3 k3];
fprintf('The stiffness matrix \n');
The stiffness matrix
disp(stiffness)
100000000 -50000000 0 -50000000 100000000 -50000000 0 -50000000 50000000
%Natural frequency(eigen value) and Mode shape(eigen vector) calculation FOR ANALYTICAL VALUE
[v,d]=eig(stiffness,mass);
fprintf('lambda value \n');
lambda value
disp(d);
198.062264195162 0 0 0 1554.95813208737 0 0 0 3246.97960371747
w=[sqrt(d)];
w1=w(1,1);
w2=w(2,2);
w3=w(3,3);
w=[w1,w2,w3];
fprintf('The natural frequencies of this structure are as follows(HZ) \n');
The natural frequencies of this structure are as follows(HZ)
disp(w)
14.0734595673971 39.4329574352137 56.9822744695003
fprintf('The mode shape of the structure \n');
The mode shape of the structure
disp(v)
-0.00146679475269089 0.00329585789213623 -0.00264307281555424 -0.00264307281555424 0.00146679475269089 0.00329585789213623 -0.00329585789213623 -0.00264307281555424 -0.00146679475269089
%Normalization of mode shape vectors
% for i=1:3
% v(:,i)=v(:,i)/v(3,i);
% end
% Individusal mode shapes vector
fprintf('individusal mode shapes \n');
individusal mode shapes
v1=v(:,3)
v1 = 3×1
-0.00264307281555424 0.00329585789213623 -0.00146679475269089
v2=v(:,2)
v2 = 3×1
0.00329585789213623 0.00146679475269089 -0.00264307281555424
v3=v(:,1)
v3 = 3×1
-0.00146679475269089 -0.00264307281555424 -0.00329585789213623

댓글을 달려면 로그인하십시오.

### 답변(1개)

Christine Tobler 2022년 4월 22일
The results look correct to me, can you say what you are expecting instead? Two points that are maybe relevant:
• MATLAB does numerical computation, so a round-off error compared to analytical computation is expected.
• The result of EIG doesn't give the eigenvalues in any particular order, so you may need to call sort on the eigenvalues and then reorder the eigenvectors accordingly.

댓글을 달려면 로그인하십시오.

### 범주

Find more on Linear Algebra in Help Center and File Exchange

### Community Treasure Hunt

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

Start Hunting!