Skip to main content
`Ctrl`+`K`

# VecNormAvailable

Returns the vector norm if it is already known. That is, it has been previously computed and cached in the vector

## Synopsis

    #include "petscvec.h"
    PetscErrorCode VecNormAvailable(Vec x, NormType type, PetscBool *available, PetscReal *val)

Not Collective

## Input Parameters

- x - the vector

- type - one of `NORM_1` (sum_i |x[i]|), `NORM_2` sqrt(sum_i (x[i])^2), `NORM_INFINITY` max_i |x[i]|. Also available `NORM_1_AND_2`, which computes both norms and stores them in a two element array.

## Output Parameters

- available - `PETSC_TRUE` if the val returned is valid

- val - the norm

## See Also

Vectors and Parallel Data, `Vec`, `VecDot()`, `VecTDot()`, `VecNorm()`, `VecDotBegin()`, `VecDotEnd()`, `VecNormBegin()`, `VecNormEnd()`

## Level

intermediate

## Location

src/vec/vec/interface/rvector.c

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