MATLAB: Matlab cannot return orthogonal eigenvectors for a normal matrix

linear algebramatrix analysis

Now I have a normal matrix
A = [0 1 0 1 0 0 0 0 0;
0 0 1 0 1 0 0 0 0;
1 0 0 0 0 1 0 0 0;
0 0 0 0 1 0 1 0 0;
0 0 0 0 0 1 0 1 0;
0 0 0 1 0 0 0 0 1;
1 0 0 0 0 0 0 1 0;
0 1 0 0 0 0 0 0 1;
0 0 1 0 0 0 1 0 0];
It should have orthogonal eigenvectors, however, matlab eig function cannot return the orthogonal ones. Is it the problem with the algorithm?

Best Answer

Hello Ran, If a matrix A is normal it can be diagonalized with a unitary matrix, A = U D U', but no one is saying that the set of eigenvectors of A necessarily provides the matrix U. Lot of times it doesn't.