petsc-3.12.1 2019-10-22
Report Typos and Errors

# PCShellSetPostSolve

Sets routine to apply to the operators/vectors before a KSPSolve() is applied. This usually does something like scale the linear system in some application specific way.

### Synopsis

    #include "petscpc.h"
    PetscErrorCode  PCShellSetPostSolve(PC pc,PetscErrorCode (*postsolve)(PC,KSP,Vec,Vec))

Logically Collective on PC

### Input Parameters

| pc | - the preconditioner context
| postsolve | - the application-provided presolve routine

### Calling sequence of postsolve

       PetscErrorCode postsolve(PC,KSP ksp,Vec b,Vec x)

| pc | - the preconditioner, get the application context with PCShellGetContext()
| xin | - input vector
| xout | - output vector

### Notes

the function MUST return an error code of 0 on success and nonzero on failure.

### See Also

PCShellSetApplyRichardson(), PCShellSetSetUp(), PCShellSetApplyTranspose(), PCShellSetPreSolve(), PCShellSetContext()

### Level

developer

### Location

src/ksp/pc/impls/shell/shellpc.c

### Implementations

PCShellSetPostSolve_Shell(PC pc,PetscErrorCode (*postsolve) in src/ksp/pc/impls/shell/shellpc.c
Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages