petsc-3.7.1 2016-05-15
Report Typos and Errors

# PCApplyBAorABTranspose

Applies the transpose of the preconditioner and operator to a vector. That is, applies tr(B) * tr(A) with left preconditioning, NOT tr(B*A) = tr(A)*tr(B).

### Synopsis

    #include "petscksp.h"
    PetscErrorCode  PCApplyBAorABTranspose(PC pc,PCSide side,Vec x,Vec y,Vec work)

Collective on PC and Vec Many br

### Input Parameters

| pc | - the preconditioner context Many br
| side | - indicates the preconditioner side, one of PC_LEFT, PC_RIGHT, or PC_SYMMETRIC Many br
| x | - input vector Many br
| work | - work vector Many br

### Output Parameter

y -output vector Many br

Notes: this routine is used internally so that the same Krylov code can be used to solve A x = b and A' x = b, with a preconditioner Many brdefined by B'. This is why this has the funny form that it computes tr(B) * tr(A) Many br

Many br

### Keywords

PC, apply, operator, transpose

### See Also

PCApply(), PCApplyTranspose(), PCApplyBAorAB()

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