[petsc-users] reporting failing pcksp solves

Barry Smith bsmith at mcs.anl.gov
Sat Jun 19 23:07:25 CDT 2010



  Hmm, this is a good question. There are tons of places where some sort of "inner solve" is imbedded in an "outer solver", in fact many levels of nesting. We should handle this in a systematic way which likely means carefully checks put in various places in the code.

  We could instead (or in addition) add an option to have KSPSolve() generate an error on "not-convergence"  instead of returning with a negative converged reason. The drawback to this is that you cannot "handle" the error and continue running, it just ends. Would this be useful?

   Barry

On Jun 18, 2010, at 11:35 AM, Stephan Kramer wrote:

> Dear all,
> 
> Is there a way in petsc, when performing inner solves like PCKSP or MatSchurComplementGetKSP, to make the outer solve stop immediately and report back a negative convergence reason? I find that often when such "inner solves" fail, the outer solve happily continues and sometimes falsely reports convergence due to the preconditioner becoming rank deficient. I'd like our code, using petsc, to be able to trap that sort of situations and give a suitable error message.
> 
> Cheers
> Stephan



More information about the petsc-users mailing list