NEPStoppingBasic#

Default routine to determine whether the outer eigensolver iteration must be stopped.

Synopsis#

#include "slepcnep.h" 
PetscErrorCode NEPStoppingBasic(NEP nep,PetscInt its,PetscInt max_it,PetscInt nconv,PetscInt nev,NEPConvergedReason *reason,void *ctx)

Collective

Input Parameters#

  • nep - nonlinear eigensolver context obtained from NEPCreate()

  • 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 NEP_CONVERGED_ITERATING (zero).

NEPStoppingBasic() will stop if all requested eigenvalues are converged, or if the maximum number of iterations has been reached.

Use NEPSetStoppingTest() to provide your own test instead of using this one.

See Also#

NEPSetStoppingTest(), NEPConvergedReason, NEPGetConvergedReason()

Level#

advanced

Location#

src/nep/interface/nepdefault.c


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