Is there an efficient way to perform an incomplete Cholesky factorization on a symmetric positive definite sparse matrix (CSR format), in order to use it as a preconditioner for a CG solver? Is there a FORTRAN subroutine that performs such an factorization in parallel?
1 Answer
There's no need to do it yourself: The good people who bring us PETSc, Trilinos, and a number of other linear algebra libraries have already done it for you. I'm not sure about Fortran interfaces, but I think that PETSc has them. If they don't, it should not be overly difficult to write some if the ILU is all you want to compute and apply.
-
$\begingroup$ Thank you very much for your answer. I do not intent to write the subroutine myself because it will not be optimized in any way. What I am looking for is a routine such as dcsrilu0 in mkl, in order to use it along with the iterative sparse solver included in mkl. $\endgroup$– kyperrosApr 21, 2015 at 14:03
-
$\begingroup$ I think you found what you are looking for, then, no? $\endgroup$ Apr 22, 2015 at 2:20
-
$\begingroup$ No, because it is stated in the manual that dcsrilu0 should not be used with CG as it is not for symmetric problems. This is why I am looking for something similar to dcsrilu0 but for incomplete Cholesky factorization. $\endgroup$– kyperrosApr 22, 2015 at 6:22
-
$\begingroup$ I see. I have no other suggestion than the one above. $\endgroup$ Apr 22, 2015 at 12:04