Skip to main content
`Ctrl`+`K`

# PCDeflationSetSpace

Set the deflation space matrix (or its (Hermitian) transpose).

## Synopsis

    #include "petscksp.h"
    PetscErrorCode PCDeflationSetSpace(PC pc, Mat W, PetscBool transpose)

Logically Collective

## Input Parameters

- pc - the preconditioner context

- W - deflation matrix

- transpose - indicates that W is an explicit transpose of the deflation matrix

## Notes

Setting W as a multipliplicative `MATCOMPOSITE` enables use of the multilevel deflation. If W = W0W1W2*…*Wn, W0 is taken as the first deflation space and the coarse problem (W0’AW0)^{-1} is again preconditioned by deflation with W1 as the deflation matrix. This repeats until the maximum level set by PCDeflationSetLevels() is reached or there are no more matrices available. If there are matrices left after reaching the maximum level, they are merged into a deflation matrix …*W{n-1}*Wn.

## See Also

KSP: Linear System Solvers, `PCDeflationSetLevels()`, `PCDEFLATION`, `PCDeflationSetProjectionNullSpaceMat()`

## Level

intermediate

## Location

src/ksp/pc/impls/deflation/deflation.c

## Implementations

PCDeflationSetSpace_Deflation() in src/ksp/pc/impls/deflation/deflation.c

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