[petsc-users] Schur complement with a preconditioner

Umut Tabak u.tabak at tudelft.nl
Thu Jul 25 12:29:01 CDT 2013

Dear all,

I have  a system that I would like to solve for multiple rhs, 
represented in block notation as

[ A     C ] x1    b1
[ C^T B ] x2    b2

I could solve the system

(B - C^TA^{-1}C)x2 = bupdated

with Minres algorithm in MATLAB by using the Incomplete Factorization of 
B in decent iteration counts, like 43. The problem is that B is not SPD 
and it has one negative eigenvalue. That is the reason to use MINRES.

Just as a try, I saved the matrix represented by (B - C^TA^{-1}C) in 
sparse format and used the hypre euclid preconditioner in PETSc which 
resulted in 25 iterations to convergence. But since for large problems, 
this approach is not viable, I was wondering if that is possible to use 
the complete cholesky factorization of B+alpha*diag(B) where  alpha is 
given as

alpha = max(sum(abs(A),2)./diag(A))-2

as a preconditioner for the above schur complement. Or in general use an external preconditioner
for the matrix operator.

Any pointers are appreciated.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20130725/d655d17c/attachment.html>

More information about the petsc-users mailing list