Large sparse matrix LU decomposition
12 views (last 30 days)
Show older comments
chan yeoung woo
on 29 Jun 2021
Commented: Christine Tobler
on 30 Jun 2021
KK matrix is 305461 x 305461 sparse matrix
1)An out of memory error appears when running LU
is there a solution?
[L,U] = lu(KK)
2)What should I do to see the LU when using dk?
dK= decomposition(KK,'lu')
[L,U]= lu(dK) <== error : Error occurred while using:lu Invalid data type. The first argument must be double or single
0 Comments
Accepted Answer
Christine Tobler
on 29 Jun 2021
If the call to lu runs out of memory, but the call to decomposition(__, 'lu') doesn't, likely the reason is that decomposition uses the five-output syntax of LU, which is much more efficient. You could try calling that syntax directly.
Decomposition doesn't support extracting the factors directly, just solving a linear system based on those factors which are internally stored in a quite different format.
2 Comments
Christine Tobler
on 30 Jun 2021
It depends what you want to do with L and U. The five-output syntax returns L, U, and additional permutation and scaling matrices, perhaps you can adapt your usage of L and U to this case?
More Answers (0)
See Also
Categories
Find more on Sparse Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!