Skip to main content
`Ctrl`+`K`

# KSPMonitorTrueResidual

Prints the true residual norm, as well as the (possibly preconditioned, possibly approximate) residual norm, at each iteration of a `KSPSolve()` iterative solver.

## Synopsis

    #include "petscksp.h"
    PetscErrorCode KSPMonitorTrueResidual(KSP ksp, PetscInt n, PetscReal rnorm, PetscViewerAndFormat *vf)

Collective

## Input Parameters

- ksp - iterative context

- n - iteration number

- rnorm - 2-norm (preconditioned) residual value (may be estimated).

- vf - The viewer context

## Options Database Key

- -ksp_monitor_true_residual - Activates `KSPMonitorTrueResidual()` to print both norm values at each iteration

## Notes

When using right preconditioning, the two norm values are equivalent.

This is not called directly by users, rather one calls `KSPMonitorSet()`, with this function as an argument, to cause the monitor to be used during the `KSP` solve.

## See Also

KSP: Linear System Solvers, `KSP`, `KSPMonitorSet()`, `KSPMonitorResidual()`, `KSPMonitorTrueResidualMaxNorm()`, `PetscViewerAndFormat`

## Level

intermediate

## Location

src/ksp/ksp/interface/iterativ.c

## Examples

src/ksp/ksp/tutorials/ex2f.F90

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