For example the C++ sparse matrix libraries I used -- Eigen and SuiteSparse, they seem not to have any SVD funcitionality for sparse matrix. So just curious, is SVD more difficult than QR/LU for sparse matrix?


1 Answer 1


The LU factors of a sparse matrix are at least somewhat sparse. The $Q$ matrix in QR can also somewhat preserve sparsity, and is typically used when the matrix is very long and skinny. The SVD of a sparse matrix will almost always have fully dense $U$ and $V$ factors, so it destroys any reason to perform the computations treating the matrix sparsely.

  • 6
    $\begingroup$ More importantly in the typical case of the QR factorization you only need to apply $Q^{T}$ to a right hand side vector $b$. This can be done during the QR factorization process without storing the $Q$ matrix or all of the Householder reflections used in the factorization. There's no similar trick for the SVD. $\endgroup$ Oct 4, 2013 at 19:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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