I am interested in the eigenvalues and eigenvectors of a non-normal (complex non-hermitian) matrix. I find that when I use eig the eigenvectors that were computed are not accurate i.e. when I plug them back into the matrix equation they do not satisfy the eigenvalue condition to great accuracy. The eigenvalues are all distinct and hence the matrix should be diagonalizable. The form of the matrix I am interested in is: M = [a,0,b,b;0,-conj(a),-conj(b),-conj(b);conj(b),b,4,0;-conj(b),-b,0,-4] with a = (1.3800 - 0.0364i)*10^4; and b = 0.0127 - 0.4820i for example. [v,d] = eig(M); u = M*v(:,1)-d(1,1)*ones(4,1); the vector u should ideally be very close to zero but it is not!
I think this may be a bug with Lapack but I wanted to first ask in the Matlab community before going to Lapack fora. Cheers Prasanna