11

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?

user5302
  • 211
  • 1
  • 4

1 Answers1

13

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.

Victor Liu
  • 4,480
  • 18
  • 28
  • 6
    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. – Brian Borchers Oct 04 '13 at 19:28