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.