ichol encountered a nonpositive pivot
Show older comments
I have 2527676x2527676 sparse matrix K that ichol gives up easily with the ''ichol encountered a nonpositive pivot'' error. I tried re-odering, decreasing drop tol, level of fil and type of fil. I checked that diag(diag(K)==0) shows three zeros on the main diagonal. Regularization with speye function eliminates them but the solution with pcg is not correct. Any recommendations?
Answers (1)
aniket singh
on 29 Nov 2020
0 votes
from the documentation: https://in.mathworks.com/help/matlab/ref/ichol.html
they suggest using the diagcomp option.
"
If ichol breaks down as above, you can use the diagcomp option to construct a shifted incomplete Cholesky factorization. That is, instead of constructing L such that L*L' approximates A, ichol with diagonal compensation constructs L such that L*L' approximates M = A + alpha*diag(diag(A)) without explicitly forming M. As incomplete factorizations always exist for diagonally dominant matrices, alpha can be found to make M diagonally dominant
"
Categories
Find more on Sparse Matrices in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!