# SNESFASSetRestriction
Sets the matrix to be used to restrict the defect from level l to l-1. 
## Synopsis
```
#include "petscsnes.h"  
PetscErrorCode SNESFASSetRestriction(SNES snes, PetscInt level, Mat mat)
```

## Input Parameters

- ***snes  -*** the `SNESFAS` nonlinear multigrid context
- ***mat   -*** the restriction matrix
- ***level -*** the level (0 is coarsest) to supply [Do not supply 0]





## Notes
Usually this is the same matrix used also to set the interpolation
for the same level.

One can pass in the interpolation matrix or its transpose; PETSc figures
out from the matrix size which one it is.

If you do not set this, the transpose of the Mat set with SNESFASSetInterpolation()
is used.


## See Also
 `SNESFAS`, `SNESFASSetInterpolation()`, `SNESFASSetInjection()`

## Level
advanced

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/snes/impls/fas/fasfunc.c.html#SNESFASSetRestriction">src/snes/impls/fas/fasfunc.c</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/snes/impls/fas/fasfunc.c)


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