How to identify repeated eigenvalues of a matrix?

12 visualizzazioni (ultimi 30 giorni)
Take the matrix A as an example:
A = [1 1 0 0;0 1 1 0;0 0 1 0;0 0 0 3]
The eigenvalues of A are: 1,1,1,3. How can I identify that there are 2 repeated eigenvalues? (the value 1 repeated two times)
Thank you in advance.

Risposta accettata

Aditya Deshpande
Aditya Deshpande il 17 Apr 2018
Modificato: Aditya Deshpande il 17 Apr 2018

You can find the number of times an eigen value is repeated as follows.

A = [1 1 0 0;0 1 1 0;0 0 1 0;0 0 0 3];
E = eig(A);
u = unique(E);
R = histc(E,u)-1;

Output is:

E =
     1
     1
     1
     3
u =
     1
     3
R =
     2
     0

NOTE: if R(i) = 0, eigen value is not repeated, but has occurred only once in vector E.

Più risposte (1)

Christine Tobler
Christine Tobler il 17 Apr 2018

For general matrices, the eigenvalues will typically have a bit of round-off error, so repeated eigenvalues will not be exactly identical. In those cases, you should use uniquetol instead of just unique in the algorithm proposed by Aditya.

Categorie

Scopri di più su Eigenvalues & Eigenvectors in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by