For a repeated eigenvalue only one eigenvctor is being returned
Afficher commentaires plus anciens
for my matrix
A = [1 1 4 0; 1 1 1 -1; 0 0 3 1; 0 0 3 1], it is showing there is a repeated eigenvalue of 0, which is correct however the eigenvectors from when i do [V,D] = eig(A) for the 0's are both [-1; 1; 0; 0] when i have calculated there is a second one of [4/3; 0; -1/3; 1] just confused to why it is not outputting the eigenvectors.
Réponse acceptée
Plus de réponses (2)
Bruno Luong
le 17 Mar 2024
Modifié(e) : Bruno Luong
le 17 Mar 2024
0 votes
Indeed in case of eigenvalue with multiplicity > 1; the problemie is numerical challenging and MATLAB might fail to find the correct eigen vectors as with your case.
1 commentaire
The issue is that MATLAB numerical error will make matrix reduces to Jordan form and think that 0 has incorrectly 1-dimentional eigenspace and not 2 due to tiny numerical error.
Symbolic eig would work since there is no roundoff error
A = [1 1 4 0; 1 1 1 -1; 0 0 3 1; 0 0 3 1];
[V,D] = eig(sym(A))
Bruno Luong
le 14 Avr 2024
Déplacé(e) : Bruno Luong
le 14 Avr 2024
UPDATE: From the discussion here using EIG with 2 arguments can do the trick and overcome the issue and return an independent eigen vector associate with 0
A = [1 1 4 0; 1 1 1 -1; 0 0 3 1; 0 0 3 1];
[V,D] = eig(A,eye(size(A)));
V4 = V(:,4)
A*V4
Catégories
En savoir plus sur Linear Algebra dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

