TSMonitorSet#

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

Synopsis#

#include "petscts.h"  
PetscErrorCode TSMonitorSet(TS ts, PetscErrorCode (*monitor)(TS ts, PetscInt steps, PetscReal time, Vec u, void *ctx), void *mctx, PetscCtxDestroyFn *mdestroy)

Logically Collective

Input Parameters#

  • ts - the TS context obtained from TSCreate()

  • monitor - monitoring routine

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

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

Calling sequence of monitor#

  • ts - the TS context

  • steps - iteration number (after the final time step the monitor routine may be called with a step of -1, this indicates the solution has been interpolated to this time)

  • time - current time

  • u - current iterate

  • ctx - [optional] monitoring context

Note#

This routine adds an additional monitor to the list of monitors that already has been loaded.

Fortran Notes#

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

See Also#

TS: Scalable ODE and DAE Solvers, TSMonitorDefault(), TSMonitorCancel(), TSDMSwarmMonitorMoments(), TSMonitorExtreme(), TSMonitorDrawSolution(), TSMonitorDrawSolutionPhase(), TSMonitorDrawSolutionFunction(), TSMonitorDrawError(), TSMonitorSolution(), TSMonitorSolutionVTK(), TSMonitorLGSolution(), TSMonitorLGError(), TSMonitorSPSwarmSolution(), TSMonitorError(), TSMonitorEnvelope(), PetscCtxDestroyFn

Level#

intermediate

Location#

src/ts/interface/tsmon.c

Examples#

src/ts/utils/dmplexlandau/tutorials/ex1.c
src/ts/tutorials/ex5.c
src/ts/tutorials/ex3.c
src/ts/utils/dmplexlandau/tutorials/ex2.c
src/ts/tutorials/ex53.c
src/ts/tutorials/ex11_sa.c
src/ts/tutorials/ex20opt_ic.c
src/ts/tutorials/ex52.c
src/ts/tutorials/extchem.c
src/ts/tutorials/ex20adj.c


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