MATLAB Answers

Eigenvalues corresponds to eigenvectors

2 views (last 30 days)
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.

  0 Comments

Sign in to comment.

Accepted Answer

Vladimir Sovkov
Vladimir Sovkov on 8 Feb 2020
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 Comments

Show 7 older comments
AVM
AVM on 8 Feb 2020
@Vladimir: Is there any way to call c particular compoment of a column vector? I mean to say how can I call a component of column matrix in matlab? Here, I taken an example,
syms a b c d
h=[a;b;c;d]
How can I call 'c' element? What is the corresponding command? Pl help me.
AVM
AVM on 8 Feb 2020
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?

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!