:orphan: # PCEisenstatGetNoDiagonalScaling Tells if the Eisenstat preconditioner 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 PCEisenstatGetNoDiagonalScaling(PC pc, PetscBool *flg) ``` Logically Collective ## Input Parameter - ***pc -*** the preconditioner context ## Output Parameter - ***flg -*** `PETSC_TRUE` means there is no diagonal scaling applied ## 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 , `PCEISENSTAT`, `PCEisenstatGetOmega()` ## Level intermediate ## Location src/ksp/pc/impls/eisens/eisen.c ## Implementations PCEisenstatGetNoDiagonalScaling_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)