Why is the eigenvalue a column of zeroes
10 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I'm given the matrix A and need to find it's eigenvectors. I could simply do [V,D]=eigen(A) but I need to do its proccess.The problem arrives when I've found the A−λI 's and I need to basically do systems of linear equations. A*x=B so I do A\B=x. The x for all of them ends of being zero column vectors which I guess does make sense since A*0=0 but thats not what I'm looking for. Is there something I'm doing wrong? Heres what I've been using to check my work: https://www.emathhelp.net/en/calculators/linear-algebra/eigenvalue-and-eigenvector-calculator/?i=%5B%5B4%2C0%2C1%2C0%5D%2C%5B0%2C4%2C1%2C0%5D%2C%5B1%2C1%2C4%2C2%5D%2C%5B0%2C0%2C2%2C4%5D%5D
A=[4,0,1,0;0,4,1,0;1,1,4,2;0,0,2,4];
p=poly(A);%Coefficients of polynomial
x=roots(p);%Eigenvalues
x=real(x); %same as eig(A)
A1=[(4-x(1)),0,1,0;0,(4-x(1)),1,0;1,1,(4-x(1)),2;0,0,2,(4-x(1))];
A2=[(4-x(2)),0,1,0;0,(4-x(2)),1,0;1,1,(4-x(2)),2;0,0,2,(4-x(2))];
A3=[(4-x(3)),0,1,0;0,(4-x(3)),1,0;1,1,(4-x(3)),2;0,0,2,(4-x(3))];% These are the A-lamdaI's
A4=[(4-x(4)),0,1,0;0,(4-x(4)),1,0;1,1,(4-x(4)),2;0,0,2,(4-x(4))];
B=[0;0;0;0];
A1\B
A2\B
A3\B
A4\B
0 commentaires
Réponses (1)
Abolfazl Chaman Motlagh
le 18 Fév 2022
for the system , is technically a solution. you should search for non-trivial solution. for this you should create null space of matrix. and because this phenomena is numerically very sensitive to matrix, by using default functions you almost always get nothing (empty null space). because the matrix become full-rank by small purturbation caused by approximating eigenvalues. (to be more precise isn't invertible so numerically condition number of it is very high, making it critically non stable for any purturbation)
A=[4,0,1,0;0,4,1,0;1,1,4,2;0,0,2,4];
lambdas = (roots(poly(A)));
T1 = A - lambdas(1) * eye(4); % A - lambda*I
null(T1)
the thing you can do is try numerically find null space of T1 or equally eigenvector of A. one method that is iterative itself is finding SVD decomposition of matrix. as MATLAB documentation mentioned even the null function use SVD algorithm. the rest is up to you for finding eigenvector, but for example :
[U,S,V] = svd(A);
[S , zeros(4,1) , diag(real(lambdas))]
as you can see the S is diagonal of our lambdas.
norm(T1 * V(:,1))
you can see columns of matrix V are very close to eigenvectors.
0 commentaires
Voir également
Catégories
En savoir plus sur Linear Algebra dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!