PEPStoppingBasic#
Default routine to determine whether the outer eigensolver iteration must be stopped.
Synopsis#
#include "slepcpep.h"
PetscErrorCode PEPStoppingBasic(PEP pep,PetscInt its,PetscInt max_it,PetscInt nconv,PetscInt nev,PEPConvergedReason *reason,void *ctx)
Collective
Input Parameters#
pep - eigensolver context obtained from PEPCreate()
its - current number of iterations
max_it - maximum number of iterations
nconv - number of currently converged eigenpairs
nev - number of requested eigenpairs
ctx - context (not used here)
Output Parameter#
reason - result of the stopping test
Notes#
A positive value of reason indicates that the iteration has finished successfully (converged), and a negative value indicates an error condition (diverged). If the iteration needs to be continued, reason must be set to PEP_CONVERGED_ITERATING (zero).
PEPStoppingBasic() will stop if all requested eigenvalues are converged, or if the maximum number of iterations has been reached.
Use PEPSetStoppingTest() to provide your own test instead of using this one.
See Also#
PEPSetStoppingTest()
, PEPConvergedReason
, PEPGetConvergedReason()
Level#
advanced
Location#
src/pep/interface/pepdefault.c
Index of all PEP routines Table of Contents for all manual pages Index of all manual pages