PCApplyBAorAB#
Applies the preconditioner and operator to a vector. \(y = B*A*x \) or \( y = A*B*x\).
Synopsis#
#include "petscksp.h"
PetscErrorCode PCApplyBAorAB(PC pc, PCSide side, Vec x, Vec y, Vec work)
Collective
Input Parameters#
pc - the preconditioner context
side - indicates the preconditioner side, one of
PC_LEFT
,PC_RIGHT
, orPC_SYMMETRIC
x - input vector
work - work vector
Output Parameter#
y - output vector
Note#
If the PC
has had PCSetDiagonalScale()
set then \( D M A D^{-1} \) for left preconditioning or \( D A M D^{-1} \) is actually applied.
The specific KSPSolve()
method must also be written to handle the post-solve “correction” for the diagonal scaling.
See Also#
KSP: Linear System Solvers, PC
, PCApply()
, PCApplyTranspose()
, PCApplyBAorABTranspose()
Level#
developer
Location#
Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages