# SNESNGMRESSetRestartFmRise
Increase the restart count if the step x_M increases the residual F_M 
## Synopsis
```
#include "petscsnes.h" 
PetscErrorCode SNESNGMRESSetRestartFmRise(SNES snes, PetscBool flg)
```

## Input Parameters

- ***snes -*** the `SNES` context.
- ***flg  -*** boolean value deciding whether to use the option or not, default is `PETSC_FALSE`



## Options Database Key

- ***-snes_ngmres_restart_fm_rise -*** Increase the restart count if the step x_M increases the residual F_M





## Notes
If the proposed step x_M increases the residual F_M, it might be trying to get out of a stagnation area.
To help the solver do that, reset the Krylov subspace whenever F_M increases.

This option must be used with the `SNESNGMRES` `SNESNGMRESRestartType` of `SNES_NGMRES_RESTART_DIFFERENCE`


## See Also
 `SNES_NGMRES_RESTART_DIFFERENCE`, `SNESNGMRES`, `SNESNGMRESRestartType`, `SNESNGMRESSetRestartType()`

## Level
intermediate

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/snes/impls/ngmres/snesngmres.c.html#SNESNGMRESSetRestartFmRise">src/snes/impls/ngmres/snesngmres.c</A>

## Implementations

<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/snes/impls/ngmres/snesngmres.c.html#SNESNGMRESSetRestartFmRise_NGMRES">SNESNGMRESSetRestartFmRise_NGMRES in src/snes/impls/ngmres/snesngmres.c</A><BR>


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


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