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 (APmatT)r\|(A*Pmat^{-T})*r\|, where r=Axbr = A*x - b, used in specific stopping criterion

  • anorm - poor estimate of APmatTfrobenius\|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