Large sparse matrix LU decomposition

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

 采纳的回答

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 个评论

thank you~!! Then is there any way to use L and U separately?
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?

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Linear Algebra 的更多信息

产品

版本

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by