:orphan:
# PCEisenstatSetNoDiagonalScaling
Causes the Eisenstat preconditioner, `PCEISENSTAT` not to do additional diagonal preconditioning. For matrices with a constant along the diagonal, this may save a small amount of work.
## Synopsis
```
#include "petscpc.h"
PetscErrorCode PCEisenstatSetNoDiagonalScaling(PC pc, PetscBool flg)
```
Logically Collective
## Input Parameters
- ***pc -*** the preconditioner context
- ***flg -*** `PETSC_TRUE` turns off diagonal scaling inside the algorithm
## Options Database Key
- ***-pc_eisenstat_no_diagonal_scaling -*** Activates `PCEisenstatSetNoDiagonalScaling()`
## Note
If you use the `KSPSetDiagonalScaling()` or -ksp_diagonal_scale option then you will
likely want to use this routine since it will save you some unneeded flops.
## See Also
`PCEisenstatSetOmega()`, `PCEISENSTAT`
## Level
intermediate
## Location
src/ksp/pc/impls/eisens/eisen.c
## Implementations
PCEisenstatSetNoDiagonalScaling_Eisenstat in src/ksp/pc/impls/eisens/eisen.c
---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/ksp/pc/impls/eisens/eisen.c)
[Index of all PC routines](index.md)
[Table of Contents for all manual pages](/manualpages/index.md)
[Index of all manual pages](/manualpages/singleindex.md)