# Compute eigenvectors of a matrix with known eigenvalue spectrum

If I have already accurately known the eigenvalue spectrum (i.e. all eigenvalues) of a matrix, is there any efficient numerical algorithm to compute all the eigenvectors corresponding to these eigenvalues?

I guess with the information about eigenvalues, there should be some quicker way to compute eigenvectors of the matrix compared with simply diagonalize it without any information.

• I just had a thought, maybe eigen decomposition can be used ($PDP^{-1}=A$ thus $P=APD^{-1}$, where $P$ is a matrix containing an eigen vector in each column) I have no idea if this can be made into a converging method and if so whether it would converge faster than the already mentioned method. Mar 28, 2015 at 4:22

If you can invert the matrix, the simplest choice is shifted inverse iteration, which is just power iteration for $(\mu I - A)^{-1}$, where $\mu$ is some estimate of an eigenvalue whose eigenvector you want. Convergence speed depends on how close you set $\mu$ is to your desired eigenvalue and how close other eigenvalues are to $\mu$.
• Inverse power iteration is a good idea. I just want to point out that you don't even need to invert $A$, just solve the system $(\mu I - A) v^{n+1} = v^{n}$ with $v^0$ being some guess (e.g.: a vector with each component set to one). Mar 26, 2015 at 2:12
• If you want all eigenvectors (or even a significant fraction, $O(n)$ of them, let's say), this method costs $O(n^4)$, because it needs $n$ different LU factorizations, while throwing away the eigenvalues and starting from scratch would cost $O(n^3)$. Mar 28, 2015 at 8:39
• @JuanM.Bello-Rivas Can you please tell me what is the name of the method? I.e., using $(\mu I-A)v^{n+1}=v^n$ to find eigenvectors.