SNESMonitorSet#

Sets an ADDITIONAL function that is to be used at every iteration of the nonlinear solver to display the iteration’s progress.

Synopsis#

#include "petscsnes.h"  
PetscErrorCode SNESMonitorSet(SNES snes, PetscErrorCode (*f)(SNES, PetscInt, PetscReal, void *), void *mctx, PetscCtxDestroyFn *monitordestroy)

Logically Collective

Input Parameters#

  • snes - the SNES context

  • f - the monitor function, for the calling sequence see SNESMonitorFunction

  • mctx - [optional] user-defined 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#

  • -snes_monitor - sets SNESMonitorDefault()

  • -snes_monitor draw::draw_lg - sets line graph monitor,

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

Note#

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

Fortran Note#

Only a single monitor function can be set for each SNES object

See Also#

SNES: Nonlinear Solvers, SNES, SNESSolve(), SNESMonitorDefault(), SNESMonitorCancel(), SNESMonitorFunction, PetscCtxDestroyFn

Level#

intermediate

Location#

src/snes/interface/snes.c

Examples#

src/ts/tutorials/ex7.c
src/snes/tutorials/ex22.c
src/snes/tutorials/ex21.c
src/ts/tutorials/ex12.c
src/snes/tutorials/ex2.c
src/snes/tutorials/ex3.c
src/ts/tutorials/ex52.c


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