"Welland, Michael J." <[email protected]> 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.
signature.asc
Description: PGP signature
