Recently, I’m trying to prove all the eigenvalues of a class of matrices are real. The matrices are complex and not hermitian. The problem for me is I don't know any properties for a matrix with all the eigenvalues real. So would you please tell me any sufficient or necessary conditions for such matrices? Thank you!

  • 53
  • 1
  • 1
  • 3

1 Answers1


It is easy to construct complex matrices having all real eigenvalues that are not necessarily hermitian. Start with an upper triangular matrix having all real diagonal entries (which are the eigenvalues of the matrix). If we want the eigenvectors to form a complete basis, this is guaranteed by making the eigenvalues (diagonal entries) distinct.

Further, if $A$ is a complex matrix with real eigenvalues, so will be $PAP^{-1}$ for any invertible matrix $P$, by similarity. Any eigenvalue of $A$, say $Av = \lambda v$, will give the same eigenvalue for $PAP^{-1}$:

$$ PAP^{-1} u = \lambda u \; \text{ where } \; u=Pv $$

Indeed this can be framed as a necessary and sufficient condition, however difficult to apply in practice. Complex matrix $B$ has only real eigenvalues if and only if $B$ is similar to an upper triangular matrix $A$ with real diagonal entries. If we wish to impose a condition of a complete basis of eigenvectors for $B$, then in addition we require $A$ to be a real diagonal matrix (and to avoid hermitian examples, impose a condition that $P$ is not unitary).

As a quick necessary condition to check, the trace of the matrix is the sum of its eigenvalues (taken according to algebraic multiplicity), and accordingly the trace would be real if all the eigenvalues are real. This is of course far from being a sufficient condition for that.

  • 35,235
  • 19
  • 69
  • 133