petsc-3.4.2 2013-07-02

# SNESComputeJacobianDefaultColor

Computes the Jacobian using finite differences and coloring to exploit matrix sparsity.

### Synopsis

    #include "petscsnes.h"
    #include "petscdm.h"
    PetscErrorCode  SNESComputeJacobianDefaultColor(SNES snes,Vec x1,Mat *J,Mat *B,MatStructure *flag,void *ctx)

Collective on SNES

### Input Parameters

| snes | - nonlinear solver object
| x1 | - location at which to evaluate Jacobian
| ctx | - MatFDColoring context or NULL

### Output Parameters

| J | - Jacobian matrix (not altered in this routine)
| B | - newly computed Jacobian matrix to use with preconditioner (generally the same as J)
| flag | - flag indicating whether the matrix sparsity structure has changed

otes: If the coloring is not provided through the context, this will first try to get the coloring from the DM. If the DM type has no coloring routine, then it will try to get the coloring from the matrix. This requires that the matrix have nonzero entries precomputed. This is discouraged, as MatGetColoring() is not parallel.

### Keywords

SNES, finite differences, Jacobian, coloring, sparse

### See Also

SNESSetJacobian(), SNESTestJacobian(), SNESComputeJacobianDefault()
MatFDColoringCreate(), MatFDColoringSetFunction()

Level:intermediate
Location:src/snes/interface/snesj2.c
Index of all SNES routines
Table of Contents for all manual pages
Index of all manual pages

### Examples

src/snes/examples/tutorials/ex5s.c.html
src/snes/examples/tutorials/ex14.c.html
src/ts/examples/tutorials/ex10.c.html
src/ts/examples/tutorials/ex15.c.html
src/ts/examples/tutorials/ex17.c.html