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

# DMDASNESSetPicardLocal

set a local right hand side and matrix evaluation function for Picard iteration

### Synopsis

    #include "petscdmda.h"
    #include "petscsnes.h"
    PetscErrorCode DMDASNESSetPicardLocal(DM dm,InsertMode imode,PetscErrorCode (*func)(DMDALocalInfo*,void*,void*,void*),
                                          PetscErrorCode (*jac)(DMDALocalInfo*,void*,Mat,Mat,void*),void *ctx)

Logically Collective

### Input Arguments

| dm | - DM to associate callback with
| imode | - INSERT_VALUES if local function computes owned part, ADD_VALUES if it contributes to ghosted part
| func | - local residual evaluation
| ctx | - optional context for local residual evaluation

### Calling sequence for func

| info | - DMDALocalInfo defining the subdomain to evaluate the residual on
| x | - dimensional pointer to state at which to evaluate residual
| f | - dimensional pointer to residual, write the residual here
| ctx | - optional context passed above

### Notes

The user must use ierr = SNESSetFunction(snes,NULL,SNESPicardComputeFunction,&user);CHKERRQ(ierr); in their code before calling this routine.

### See Also

DMSNESSetFunction(), DMDASNESSetJacobian(), DMDACreate1d(), DMDACreate2d(), DMDACreate3d()

### Level

beginner

### Location

src/snes/utils/dmdasnes.c

### Examples

src/snes/examples/tutorials/ex15.c.html
Index of all SNES routines
Table of Contents for all manual pages
Index of all manual pages