NEPMonitorSet#

Sets an ADDITIONAL function to be called at every iteration to monitor the error estimates for each requested eigenpair.

Synopsis#

#include "slepcnep.h" 
PetscErrorCode NEPMonitorSet(NEP nep,NEPMonitorFn *monitor,void *mctx,PetscCtxDestroyFn *monitordestroy)

Logically Collective

Input Parameters#

  • nep - eigensolver context obtained from NEPCreate()

  • monitor - pointer to function (if this is NULL, it turns off monitoring), see NEPMonitorFn

  • mctx - [optional] context for private data for the monitor routine (use NULL if no context is desired)

  • monitordestroy - [optional] routine that frees monitor context (may be NULL), see PetscCtxDestroyFn for the calling sequence

Options Database Keys#

  • -nep_monitor - print only the first error estimate

  • -nep_monitor_all - print error estimates at each iteration

  • -nep_monitor_conv - print the eigenvalue approximations only when convergence has been reached

  • -nep_monitor draw::draw_lg - sets line graph monitor for the first unconverged approximate eigenvalue

  • -nep_monitor_all draw::draw_lg - sets line graph monitor for all unconverged approximate eigenvalues

  • -nep_monitor_conv draw::draw_lg - sets line graph monitor for convergence history

  • -nep_monitor_cancel - cancels all monitors that have been hardwired into a code by calls to NEPMonitorSet(), but does not cancel those set via the options database.

Notes#

The options database option -nep_monitor and related options are the easiest way to turn on NEP iteration monitoring.

NEPMonitorRegister() provides a way to associate an options database key with NEP monitor function.

Several different monitoring routines may be set by calling NEPMonitorSet() multiple times; all will be called in the order in which they were set.

See Also#

NEPMonitorFirst(), NEPMonitorAll(), NEPMonitorCancel()

Level#

intermediate

Location#

src/nep/interface/nepmon.c


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