Is there a "standard" for how eigenvectors are returned when there are duplicate eigenvalues?

77 Views Asked by At

Matlab will scale all eigenvectors to be unit eigenvectors. However, when a matrix has an eigenspace that is a linear combination of multiple vectors, how are those vectors chosen? I was assuming that free variables would be set to 1s and 0s, and then scaled to unit vectors, but that does not seem to be the case.

M=[3 2 4;2 0 2;4 2 3];
[A,B]= eig(M);

    -0.49410  -0.55805   0.66667
A = -0.47202   0.81614   0.33333
     0.73011   0.14998   0.66667

while I was assuming something simpler like: $$ \left( \begin{array}{ccc} \frac{1}{\sqrt{5}} & 0 & \frac{2}{3}\\ \frac{-2}{\sqrt{5}} & \frac{-2}{\sqrt{5}} & \frac{1}{3}\\ 0 & \frac{1}{\sqrt{5}} & \frac{2}{3}\\ \end{array} \right) $$

I know that mathematically the values that I was assuming are no less accurate since I can combine them to produce the Matlab vectors, but I would like to know what they choose, and possibly why, to ease testing if my calculations are correct.