Eigenvalue algorithm