KSPLSQRGetNorms#

Get the norm estimates that KSPLSQR computes internally during KSPSolve().

Synopsis#

#include "petscksp.h" 
PetscErrorCode KSPLSQRGetNorms(KSP ksp, PetscReal *arnorm, PetscReal *anorm)

Not Collective

Input Parameter#

  • ksp - iterative context

Output Parameters#

  • arnorm - good estimate of \(\|(A*Pmat^{-T})*r\|\), where \(r = A*x - b\), used in specific stopping criterion

  • anorm - poor estimate of \(\|A*Pmat^{-T}\|_{frobenius}\) used in specific stopping criterion

Notes#

Output parameters are meaningful only after KSPSolve().

These are the same quantities as normar and norma in MATLAB’s lsqr(), whose output lsvec is a vector of normar / norma for all iterations.

If -ksp_lsqr_exact_mat_norm is set or KSPLSQRSetExactMatNorm(ksp, PETSC_TRUE) called, then anorm is the exact Frobenius norm.

See Also#

KSP: Linear System Solvers, KSPSolve(), KSPLSQR, KSPLSQRSetExactMatNorm()

Level#

intermediate

Location#

src/ksp/ksp/impls/lsqr/lsqr.c


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