EPSMonitorSet#
Sets an ADDITIONAL function to be called at every iteration to monitor the error estimates for each requested eigenpair.
Synopsis#
#include "slepceps.h"
PetscErrorCode EPSMonitorSet(EPS eps,EPSMonitorFn *monitor,void *mctx,PetscCtxDestroyFn *monitordestroy)
Logically Collective
Input Parameters#
eps - eigensolver context obtained from EPSCreate()
monitor - pointer to function (if this is NULL, it turns off monitoring), see EPSMonitorFn
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#
-eps_monitor - print only the first error estimate
-eps_monitor_all - print error estimates at each iteration
-eps_monitor_conv - print the eigenvalue approximations only when convergence has been reached
-eps_monitor draw::draw_lg - sets line graph monitor for the first unconverged approximate eigenvalue
-eps_monitor_all draw::draw_lg - sets line graph monitor for all unconverged approximate eigenvalues
-eps_monitor_conv draw::draw_lg - sets line graph monitor for convergence history
-eps_monitor_cancel - cancels all monitors that have been hardwired into a code by calls to EPSMonitorSet(), but does not cancel those set via the options database.
Notes#
The options database option -eps_monitor and related options are the easiest way to turn on EPS iteration monitoring.
EPSMonitorRegister() provides a way to associate an options database key with EPS monitor function.
Several different monitoring routines may be set by calling EPSMonitorSet() multiple times; all will be called in the order in which they were set.
See Also#
EPSMonitorFirst(), EPSMonitorAll(), EPSMonitorCancel()
Level#
intermediate
Location#
Index of all EPS routines Table of Contents for all manual pages Index of all manual pages