# KSPNormType
Norm that is passed in the Krylov convergence test routines. 
## Synopsis
```
typedef enum {
  KSP_NORM_DEFAULT          = -1,
  KSP_NORM_NONE             = 0,
  KSP_NORM_PRECONDITIONED   = 1,
  KSP_NORM_UNPRECONDITIONED = 2,
  KSP_NORM_NATURAL          = 3
} KSPNormType;
```


Each solver only supports a subset of these and some may support different ones
depending on left or right preconditioning, see `KSPSetPCSide()`


## Developer Note
this must match petsc/finclude/petscksp.h


## See Also
 `KSPSolve()`, `KSPGetConvergedReason()`, `KSPSetNormType()`,
`KSPSetConvergenceTest()`, `KSPSetPCSide()`

## Level
advanced

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/include/petscksp.h.html#KSPNormType">include/petscksp.h</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/include/petscksp.h)


[Index of all KSP routines](index.md)  
[Table of Contents for all manual pages](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
