I would like to do an eigenvalue decomposition on a matrix $A^{\top} A$ - positive definite. Eigenvalue decomposition algorithms typically give eigenvectors which are orthogonal to each other, even when the eigenspaces have dimension larger than 1.

However, I would like the resulting eigenvectors $U$ to be orthonormal to each other (i.e. $A^{\top}A = U^{\top} \Sigma U$) under a different inner-product, and not the regular dot product.

Is there an eigendecomposition algorithm that does that? Or should I just use eigenvalue decomposition as usual and then orthonormalize each eigenspace separately using Gram-Schmidt? Is there more natural way to do it?

(note that I assume that eigenvalues from different eigenspaces will be orthogonal under the new inner-product, since the inner product is $\langle x,y\rangle = x^{\top} B^{\top}By$, and $Bu_i$ is an eigenvector of another matrix for any $u_i$ column of $U$ with the corresponding eigenvalue from $\Sigma$).

  • $\begingroup$ Look up "generalized singular value decomposition". $\endgroup$ – J. M. is a poor mathematician Aug 15 '12 at 13:14
  • $\begingroup$ I just looked it up in wikipedia: en.wikipedia.org/wiki/Generalized_singular_value_decomposition. I am not sure how it is related? thanks. $\endgroup$ – kloop Aug 15 '12 at 13:33
  • $\begingroup$ Hmm, the discussion there is somewhat spotty. See this instead. $\endgroup$ – J. M. is a poor mathematician Aug 15 '12 at 13:42
  • $\begingroup$ For normal matrices, their eigenvectors from different eigenspaces are already orthogonal (regular inner product) to each other, how can these eigenvectors be orthogonal under new inner product? $\endgroup$ – chaohuang Aug 16 '12 at 3:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.