# Is there any faster way than Eigensystem to diagonalize a Hermitian matrix?

Is there any faster way than using Eigensystem to diagonalize (get all the eigenvectors and eigenvalues) of a Hermitian (self-adjoint) matrix?

That would be amazing :).

Thanks.

-
You are talking about matrices with numbers as elements, right? – halirutan Jan 21 '14 at 14:34
@halirutan , yes indeed, complex numbers in general. – Mencia Jan 21 '14 at 14:35
In the case where it is positive definite, possibly diagonalizing, via eigensystem, a Cholesky factor might give a speed boost. – Daniel Lichtblau Jan 21 '14 at 15:33

## 1 Answer

I think the answer is no. Eigensystem already uses faster algorithms for Hermitian matrices. See what happens when I add a small non-Hermitian matrix:

n = 1000;

m = RandomComplex[1 + I, {n, n}];
h = m + ConjugateTranspose[m];
d = 10^-10 RandomComplex[1 + I, {n, n}];

Eigensystem[h]; // AbsoluteTiming
(* {2.971269, Null} *)

Eigensystem[h + d]; // AbsoluteTiming
(* {14.567275, Null} *)

-