Skip to main content
`Ctrl`+`K`

# PCSide

Determines if the preconditioner is to be applied to the left, right or symmetrically around the operator in `KSPSolve()`.

## Synopsis

    typedef enum {
      PC_SIDE_DEFAULT = -1,
      PC_LEFT         = 0,
      PC_RIGHT        = 1,
      PC_SYMMETRIC    = 2
    } PCSide;

## Values

- `PC_LEFT` - applied after the operator is applied

- `PC_RIGHT` - applied before the operator is applied

- `PC_SYMMETRIC` - a portion of the preconditioner is applied before the operator and the transpose of this portion is applied after the operator is applied.

## Note

Certain `KSPType` support only a subset of `PCSide` values

## See Also

Preconditioners, `PC`, `KSPSetPCSide()`, `KSP`, `KSPType`, `KSPGetPCSide()`, `KSPSolve()`

## Level

beginner

## Location

include/petscpctypes.h

Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages