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
PCpreconditioner contextside - indicates the preconditioner side, one of
PC_LEFT,PC_RIGHT, orPC_SYMMETRICx - 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