1

1

Given a symmetric nxn matrix matrix and m of the eigenvalue/vector pairs, is there an efficient and numerically stable way to factor out the known structure such that only a smaller (n-m)x(n-m) problem needs to be solved to get the full set of eigenvalues/vectors ? The known eigenvalues are all zero, so the corresponding eigenvectors span the kernel of the matrix.

flag
2 
Assuming that you've got the complete kernel and the matrix is real, the other eigenvectors span the orthogonal complement of the kernel. Complete the given eigenvectors to a basis of the whole space (e.g., by including suitable elementary vectors) and orthogonalize it using Gram–Schmidt. Switch to the new basis, you'll get an $(n-m)\times(n-m)$ matrix (and a lot of zeros). – Emil Jeřábek Mar 4 2011 at 17:20
I've thought about this solution, but Gram-Schmidt is not numerically most stable method, so I was hoping for something better. – Rasmus Tamstorf Mar 6 2011 at 0:47
1 
You can replace Gram-Schmidt with a QR factorization, computed via one of the "usual" methods (Householder reflections or Givens transformation). – Federico Poloni Mar 15 2011 at 22:21

1 Answer

1

If you already know that all the known eigenvalues of your matrix are zero, it might prove profitable to reduce your original symmetric matrix to tridiagonal form; the nice thing about reducing your matrix to tridiagonal form is that your matrix splits into smaller submatrices if your original matrix had repeated eigenvalues to begin with.

link|flag

Your Answer

Get an OpenID
or

Not the answer you're looking for? Browse other questions tagged or ask your own question.