Large sparse matrix LU decomposition

조회 수: 12 (최근 30일)
chan yeoung woo
chan yeoung woo 2021년 6월 29일
댓글: Christine Tobler 2021년 6월 30일
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

채택된 답변

Christine Tobler
Christine Tobler 2021년 6월 29일
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
chan yeoung woo
chan yeoung woo 2021년 6월 30일
thank you~!! Then is there any way to use L and U separately?
Christine Tobler
Christine Tobler 2021년 6월 30일
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개)

카테고리

Help CenterFile Exchange에서 Sparse Matrices에 대해 자세히 알아보기

제품


릴리스

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by