petsc-main 2021-04-20
Report Typos and Errors

KSPConvergedRateView

Displays the reason a KSP solve converged or diverged to a viewer

Synopsis

#include "petscksp.h" 
#include "petscmat.h" 
PetscErrorCode KSPConvergedRateView(KSP ksp, PetscViewer viewer)
Collective on ksp

Input Parameters

ksp - iterative context obtained from KSPCreate()
viewer - the viewer to display the reason

Options Database Keys

-ksp_converged_rate - print reason for convergence or divergence and the convergence rate (or 0.0 for divergence)

Notes

To change the format of the output, call PetscViewerPushFormat(viewer,format) before this call.

Suppose that the residual is reduced linearly, $r_k = c^k r_0$, which means $log r_k = log r_0 + k log c$. After linear regression, the slope is $\log c$. The coefficient of determination is given by $1 - \frac{\sum_i (y_i - f(x_i))^2}{\sum_i (y_i - \bar y)}$, see also https://en.wikipedia.org/wiki/Coefficient_of_determination

See Also

KSPConvergedReasonView(), KSPGetConvergedRate(), KSPSetTolerances(), KSPConvergedDefault()

Level

intermediate

Location

src/ksp/ksp/interface/itfunc.c
Index of all KSP routines
Table of Contents for all manual pages
Index of all manual pages