Eigenvalues corresponds to eigenvectors

조회 수: 9 (최근 30일)
AVM
AVM 2020년 2월 8일
댓글: Vladimir Sovkov 2020년 2월 9일
In matlab, the command [V,L]=eig(h) produces the eigenvectors and eigenvalues of the square matirx h. But I would like to know in which order this eigenvectors appear? I mean how can I observe that which eigenvalues corresponds to which eigenvectors. I am really confused at this point. Pl somebody help me to understand this. Here I have taken an example.
clc;clear;
syms a b c
h=[a 0 1 0;0 b 2 0;1 0 c 0;0 3 0 a];
[V,L]=eig(h)
This produces the output as
V =
[ 0, 0, a/12 - b/6 + c/12 - (a^2 - 2*a*c + c^2 + 4)^(1/2)/12, a/12 - b/6 + c/12 + (a^2 - 2*a*c + c^2 + 4)^(1/2)/12]
[ 0, b/3 - a/3, c/6 - a/6 - (a^2 - 2*a*c + c^2 + 4)^(1/2)/6, c/6 - a/6 + (a^2 - 2*a*c + c^2 + 4)^(1/2)/6]
[ 0, 0, (a*b)/6 - (a*c)/6 - (b/6 - c/6)*(a/2 + c/2 - (a^2 - 2*a*c + c^2 + 4)^(1/2)/2) + 1/6, (a*b)/6 - (a*c)/6 - (b/6 - c/6)*(a/2 + c/2 + (a^2 - 2*a*c + c^2 + 4)^(1/2)/2) + 1/6]
[ 1, 1, 1, 1]
L =
[ a, 0, 0, 0]
[ 0, b, 0, 0]
[ 0, 0, a/2 + c/2 - (a^2 - 2*a*c + c^2 + 4)^(1/2)/2, 0]
[ 0, 0, 0, a/2 + c/2 + (a^2 - 2*a*c + c^2 + 4)^(1/2)/2]
But how do I associate the eigenvector with its corresponding eigenvealue.

채택된 답변

Vladimir Sovkov
Vladimir Sovkov 2020년 2월 8일
Absolutely standard: L(k,k) ~ V(:,k).
You can check it with the code:
for k=1:size(h,1)
disp(strcat('k=',num2str(k),'; h*v-lambda*v=',num2str(double(norm(simplify(h*V(:,k) - L(k,k)*V(:,k)))))));
end
  댓글 수: 10
AVM
AVM 2020년 2월 8일
And what about in this case also?
clc;
clear;
syms a b c
assume(a,'real');
assume(b,'real');
assume(c,'real');
h=[a 1 0;3 b 1;1 0 c];
[V,L]=eig(h);
u=simplify(V(:,1),'Steps',50)
The u is here
u =
a/3 + b/3 - (2*c)/3 + ((((a*b)/3 + (a*c)/3 + (b*c)/3 - (a + b + c)^2/9 - 1)^3 + ((a + b + c)^3/27 - ((a + b + c)*(a*b + a*c + b*c - 3))/6 - (3*c)/2 + (a*b*c)/2 + 1/2)^2)^(1/2) - (3*c)/2 - ((a + b + c)*(a*b + a*c + b*c - 3))/6 + (a + b + c)^3/27 + (a*b*c)/2 + 1/2)^(1/3) - ((a*b)/3 + (a*c)/3 + (b*c)/3 - (a + b + c)^2/9 - 1)/((((a*b)/3 + (a*c)/3 + (b*c)/3 - (a + b + c)^2/9 - 1)^3 + ((a + b + c)^3/27 - ((a + b + c)*(a*b + a*c + b*c - 3))/6 - (3*c)/2 + (a*b*c)/2 + 1/2)^2)^(1/2) - (3*c)/2 - ((a + b + c)*(a*b + a*c + b*c - 3))/6 + (a + b + c)^3/27 + (a*b*c)/2 + 1/2)^(1/3)
a*c + (a/3 + b/3 + c/3 + ((((a*b)/3 + (a*c)/3 + (b*c)/3 - (a + b + c)^2/9 - 1)^3 + ((a + b + c)^3/27 - ((a + b + c)*(a*b + a*c + b*c - 3))/6 - (3*c)/2 + (a*b*c)/2 + 1/2)^2)^(1/2) - (3*c)/2 - ((a + b + c)*(a*b + a*c + b*c - 3))/6 + (a + b + c)^3/27 + (a*b*c)/2 + 1/2)^(1/3) - ((a*b)/3 + (a*c)/3 + (b*c)/3 - (a + b + c)^2/9 - 1)/((((a*b)/3 + (a*c)/3 + (b*c)/3 - (a + b + c)^2/9 - 1)^3 + ((a + b + c)^3/27 - ((a + b + c)*(a*b + a*c + b*c - 3))/6 - (3*c)/2 + (a*b*c)/2 + 1/2)^2)^(1/2) - (3*c)/2 - ((a + b + c)*(a*b + a*c + b*c - 3))/6 + (a + b + c)^3/27 + (a*b*c)/2 + 1/2)^(1/3))^2 - (a + c)*(a/3 + b/3 + c/3 + ((((a*b)/3 + (a*c)/3 + (b*c)/3 - (a + b + c)^2/9 - 1)^3 + ((a + b + c)^3/27 - ((a + b + c)*(a*b + a*c + b*c - 3))/6 - (3*c)/2 + (a*b*c)/2 + 1/2)^2)^(1/2) - (3*c)/2 - ((a + b + c)*(a*b + a*c + b*c - 3))/6 + (a + b + c)^3/27 + (a*b*c)/2 + 1/2)^(1/3) - ((a*b)/3 + (a*c)/3 + (b*c)/3 - (a + b + c)^2/9 - 1)/((((a*b)/3 + (a*c)/3 + (b*c)/3 - (a + b + c)^2/9 - 1)^3 + ((a + b + c)^3/27 - ((a + b + c)*(a*b + a*c + b*c - 3))/6 - (3*c)/2 + (a*b*c)/2 + 1/2)^2)^(1/2) - (3*c)/2 - ((a + b + c)*(a*b + a*c + b*c - 3))/6 + (a + b + c)^3/27 + (a*b*c)/2 + 1/2)^(1/3))
1
Now if I would like to call 2nd component of this column matrix u, then what should I have to do?
Vladimir Sovkov
Vladimir Sovkov 2020년 2월 9일
E.g., you address the entire k-th column of a matrix as V(:,k).

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Linear Algebra에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by