petsc-3.3-p7 2013-05-11

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"  
#include "petscdmshell.h" 
#include "petscsys.h" 
PetscErrorCode  SNESMonitorSet(SNES snes,PetscErrorCode (*monitor)(SNES,PetscInt,PetscReal,void*),void *mctx,PetscErrorCode (*monitordestroy)(void**))
Logically Collective on SNES

Input Parameters

snes - the SNES context
func - monitoring routine
mctx - [optional] user-defined context for private data for the monitor routine (use PETSC_NULL if no context is desired)
monitordestroy - [optional] routine that frees monitor context (may be PETSC_NULL)

Calling sequence of func

    int func(SNES snes,PetscInt its, PetscReal norm,void *mctx)

snes - the SNES context
its - iteration number
norm - 2-norm function value (may be estimated)
mctx - [optional] monitoring context

Options Database Keys

-snes_monitor - sets SNESMonitorDefault()
-snes_monitor_draw - sets line graph monitor, uses SNESMonitorLGCreate()
-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.

Notes

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 notes: Only a single monitor function can be set for each SNES object

Keywords

SNES, nonlinear, set, monitor

See Also

SNESMonitorDefault(), SNESMonitorCancel()

Level:intermediate
Location:
src/snes/interface/snes.c
Index of all SNES routines
Table of Contents for all manual pages
Index of all manual pages

Examples

src/snes/examples/tutorials/ex2.c.html
src/snes/examples/tutorials/ex3.c.html
src/snes/examples/tutorials/ex21.c.html
src/snes/examples/tutorials/ex22.c.html
src/snes/examples/tutorials/ex43.c.html
src/ts/examples/tutorials/ex7.c.html
src/ts/examples/tutorials/ex12.c.html