Skip to main content
`Ctrl`+`K`

# TSMonitorSetFromOptions

Sets a monitor function and viewer appropriate for the type indicated by the user

## Synopsis

    #include "petscts.h"
    PetscErrorCode TSMonitorSetFromOptions(TS ts, const char name[], const char help[], const char manual[], PetscErrorCode (*monitor)(TS ts, PetscInt step, PetscReal time, Vec u, PetscViewerAndFormat *vf), PetscErrorCode (*monitorsetup)(TS ts, PetscViewerAndFormat *vf))

Collective

## Input Parameters

- ts - `TS` object you wish to monitor

- name - the monitor type one is seeking

- help - message indicating what monitoring is done

- manual - manual page for the monitor

- monitor - the monitor function, this must use a `PetscViewerFormat` as its context

- monitorsetup - a function that is called once ONLY if the user selected this monitor that may set additional features of the `TS` or `PetscViewer` objects

## Calling sequence of `monitor`

- ts - the `TS` to monitor

- step - the current time-step

- time - the current time

- u - the current solution

- vf - the `PetscViewer` and format to monitor with

## Calling sequence of `monitorsetup`

- ts - the `TS` to monitor

- vf - the `PetscViewer` and format to monitor with

## See Also

TS: Scalable ODE and DAE Solvers, `TS`, `TSMonitorSet()`, `PetscOptionsCreateViewer()`, `PetscOptionsGetReal()`, `PetscOptionsHasName()`, `PetscOptionsGetString()`, `PetscOptionsGetIntArray()`, `PetscOptionsGetRealArray()`, `PetscOptionsBool()`, `PetscOptionsInt()`, `PetscOptionsString()`, `PetscOptionsReal()`, `PetscOptionsName()`, `PetscOptionsBegin()`, `PetscOptionsEnd()`, `PetscOptionsHeadBegin()`, `PetscOptionsStringArray()`, `PetscOptionsRealArray()`, `PetscOptionsScalar()`, `PetscOptionsBoolGroupBegin()`, `PetscOptionsBoolGroup()`, `PetscOptionsBoolGroupEnd()`, `PetscOptionsFList()`, `PetscOptionsEList()`

## Level

developer

## Location

src/ts/interface/tsmon.c

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