Causes PC to generate an error if a floating point exception, for example a zero pivot, is detected.


#include "petscksp.h" 
PetscErrorCode PCSetErrorIfFailure(PC pc, PetscBool flg)

Logically Collective

Input Parameters#

  • pc - iterative context obtained from PCCreate()

  • flg - PETSC_TRUE indicates you want the error generated


Normally PETSc continues if a linear solver fails due to a failed setup of a preconditioner, you can call KSPGetConvergedReason() after a KSPSolve() to determine if it has converged or failed. Or use -ksp_error_if_not_converged to cause the program to terminate as soon as lack of convergence is detected.

This is propagated into KSPs used by this PC, which then propagate it into PCs used by those KSPs

See Also#

KSP: Linear System Solvers, PC, KSPSetErrorIfNotConverged(), PCGetInitialGuessNonzero(), PCSetInitialGuessKnoll(), PCGetInitialGuessKnoll()





Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages