petsc-3.7.7 2017-09-25
Report Typos and Errors


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.


#include "petscpc.h" 
PetscErrorCode  PCShellSetPreSolve(PC pc,PetscErrorCode (*presolve)(PC,KSP,Vec,Vec))
Logically Collective on PC

Input Parameters

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

Calling sequence of presolve

   PetscErrorCode presolve (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.


PC, shell, set, apply, user-provided

See Also

PCShellSetApplyRichardson(), PCShellSetSetUp(), PCShellSetApplyTranspose(), PCShellSetPostSolve(), PCShellSetContext()

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