Skip to main content
`Ctrl`+`K`

# SNESConvergedReasonViewSet

Sets an ADDITIONAL function that is to be used at the end of the nonlinear solver to display the convergence reason of the nonlinear solver.

## Synopsis

    #include "petscsnes.h"
    PetscErrorCode SNESConvergedReasonViewSet(SNES snes, PetscErrorCode (*f)(SNES snes, void *vctx), void *vctx, PetscCtxDestroyFn *reasonviewdestroy)

Logically Collective

## Input Parameters

- snes - the `SNES` context

- f - the `SNESConvergedReason` view function

- vctx - [optional] user-defined context for private data for the `SNESConvergedReason` view function (use `NULL` if no context is desired)

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

## Calling sequence of `f`

- snes - the `SNES` context

- vctx - [optional] context for private data for the function

## Options Database Keys

- -snes_converged_reason - sets a default `SNESConvergedReasonView()`

- -snes_converged_reason_view_cancel - cancels all converged reason viewers that have been hardwired into a code by calls to `SNESConvergedReasonViewSet()`, but does not cancel those set via the options database.

## Note

Several different converged reason view routines may be set by calling `SNESConvergedReasonViewSet()` multiple times; all will be called in the order in which they were set.

## See Also

SNES: Nonlinear Solvers, `SNES`, `SNESSolve()`, `SNESConvergedReason`, `SNESGetConvergedReason()`, `SNESConvergedReasonView()`, `SNESConvergedReasonViewCancel()`, `PetscCtxDestroyFn`

## Level

intermediate

## Location

src/snes/interface/snes.c

## Examples

src/snes/tutorials/ex6.c

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