Skip to main content
`Ctrl`+`K`

# 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

KSP: Linear System Solvers, `PCEisenstatSetOmega()`, `PCEISENSTAT`

## Level

intermediate

## Location

src/ksp/pc/impls/eisens/eisen.c

## Implementations

PCEisenstatSetNoDiagonalScaling_Eisenstat() in src/ksp/pc/impls/eisens/eisen.c

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