Skip to main content
`Ctrl`+`K`

# 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