Skip to main content
`Ctrl`+`K`

# PCPatchSetComputeFunction

Set the callback function used to compute patch residuals

## Synopsis

    #include "petscpc.h"
    #include "petscmat.h"
    PetscErrorCode PCPatchSetComputeFunction(PC pc, PetscErrorCode (*func)(PC pc, PetscInt point, Vec x, Vec f, IS cellIS, PetscInt n, const PetscInt *dofsArray, const PetscInt *dofsArrayWithAll, void *ctx), void *ctx)

Logically Collective

## Input Parameters

- pc - The `PC`

- func - The callback function

- ctx - The user context

## Calling sequence of `func`

- pc - The `PC`

- point - The point

- x - The input solution (not used in linear problems)

- f - The patch residual vector

- cellIS - An array of the cell numbers

- n - The size of `dofsArray`

- dofsArray - The dofmap for the dofs to be solved for

- dofsArrayWithAll - The dofmap for all dofs on the patch

- ctx - The user context

## Note

The entries of `f` (the output residual vector) have been set to zero before the call.

## See Also

KSP: Linear System Solvers, `PCPatchSetComputeOperator()`, `PCPatchGetComputeOperator()`, `PCPatchSetDiscretisationInfo()`, `PCPatchSetComputeFunctionInteriorFacets()`

## Level

advanced

## Location

src/ksp/pc/impls/patch/pcpatch.c

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