petsc-3.13.6 2020-09-29
Report Typos and Errors

PCDiagonalScaleLeft

Scales a vector by the left scaling as needed by certain time-stepping codes.

Synopsis

#include "petscksp.h" 
PetscErrorCode  PCDiagonalScaleLeft(PC pc,Vec in,Vec out)
Logically Collective on PC

Input Parameters

pc - the preconditioner context
in - input vector
out - scaled vector (maybe the same as in)

Notes

The system solved via the Krylov method is
          D M A D^{-1} y = D M b  for left preconditioning or
          D A M D^{-1} z = D b for right preconditioning

PCDiagonalScaleLeft() scales a vector by D. PCDiagonalScaleRight() scales a vector by D^{-1}.

If diagonal scaling is turned off and in is not out then in is copied to out

See Also

PCCreate(), PCSetUp(), PCDiagonalScaleSet(), PCDiagonalScaleRight(), PCDiagonalScale()

Level

intermediate

Location

src/ksp/pc/interface/precon.c
Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages