[petsc-dev] [petsc-users] PCFieldSplit field ksp diverging - kill outer ksp

Jed Brown jed at jedbrown.org
Sun Nov 23 18:36:38 CST 2014


"Welland, Michael J." <mwelland at anl.gov> writes:

> I'm using PCFieldSplit with 2 fields, and sometimes the ksp solver for
> one of those fields diverges. Is it possible to have it immediately
> kill the outer ksp solver when this happens?

I can't think of a nice way.  You could set a convergence test for the
outer that checks the converged reason on the inner solvers
(PCFieldSplitGetSubKSP, KSPGetConvergedReason).

This is actually a recurring issue across hierarchical preconditioners.
In many cases, the hierarchical preconditioner is attempting to add
robustness or leverage inexact component solves, in which case inner
solves don't "converge".  It would not be hard to add a crude check in
PCFieldSplit, but fine-grained control over which component solver is
expected to converge seems like it would add significant complexity.
But I see the value, so we should figure something out.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 818 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20141123/6b299419/attachment.sig>


More information about the petsc-dev mailing list