petsc-3.14.5 2021-03-03
Report Typos and Errors

# TSSetRHSJacobian

Sets the function to compute the Jacobian of G, where U_t = G(U,t), as well as the location to store the matrix.

### Synopsis

    #include "petscts.h"
    PetscErrorCode  TSSetRHSJacobian(TS ts,Mat Amat,Mat Pmat,TSRHSJacobian f,void *ctx)

Logically Collective on TS

### Input Parameters

| ts | - the TS context obtained from TSCreate()
| Amat | - (approximate) Jacobian matrix
| Pmat | - matrix from which preconditioner is to be constructed (usually the same as Amat)
| f | - the Jacobian evaluation routine
| ctx | - [optional] user-defined context for private data for the Jacobian evaluation routine (may be NULL)

### Calling sequence of f

        PetscErrorCode f(TS ts,PetscReal t,Vec u,Mat A,Mat B,void *ctx);

| t | - current timestep
| u | - input vector
| Amat | - (approximate) Jacobian matrix
| Pmat | - matrix from which preconditioner is to be constructed (usually the same as Amat)
| ctx | - [optional] user-defined context for matrix evaluation routine

### Notes

You must set all the diagonal entries of the matrices, if they are zero you must still set them with a zero value

The TS solver may modify the nonzero structure and the entries of the matrices Amat and Pmat between the calls to f() You should not assume the values are the same in the next call to f() as you set them in the previous call.

### See Also

SNESComputeJacobianDefaultColor(), TSSetRHSFunction(), TSRHSJacobianSetReuse(), TSSetIJacobian()

### Level

beginner

### Location

src/ts/interface/ts.c

### Examples

src/ts/tutorials/ex1.c.html
src/ts/tutorials/ex2.c.html
src/ts/tutorials/ex3.c.html
src/ts/tutorials/ex4.c.html
src/ts/tutorials/ex5.c.html
src/ts/tutorials/ex6.c.html
src/ts/tutorials/ex13.c.html
src/ts/tutorials/ex21.c.html
src/ts/tutorials/ex31.c.html
src/ts/tutorials/extchem.c.html
src/ts/tutorials/extchemfield.c.html
Index of all TS routines
Table of Contents for all manual pages
Index of all manual pages