Skip to main content
`Ctrl`+`K`

# TSSetIJacobianP

Sets the function that computes the Jacobian of F w.r.t. the parameters P where F(Udot,U,t) = G(U,P,t), as well as the location to store the matrix.

## Synopsis

    #include <petscts.h>
    PetscErrorCode TSSetIJacobianP(TS ts, Mat Amat, PetscErrorCode (*func)(TS ts, PetscReal t, Vec U, Vec Udot, PetscReal shift, Mat A, void *ctx), void *ctx)

Logically Collective

## Input Parameters

- ts - `TS` context obtained from `TSCreate()`

- Amat - JacobianP matrix

- func - function

- ctx - [optional] user-defined function context

## Calling sequence of `func`

- ts - the `TS` context

- t - current timestep

- U - input vector (current ODE solution)

- Udot - time derivative of state vector

- shift - shift to apply, see note below

- A - output matrix

- ctx - [optional] user-defined function context

## Note

Amat has the same number of rows and the same row parallel layout as u, Amat has the same number of columns and parallel layout as p

## See Also

TS: Scalable ODE and DAE Solvers, `TSSetRHSJacobianP()`, `TS`

## Level

intermediate

## Location

src/ts/interface/sensitivity/tssen.c

## Examples

src/ts/tutorials/ex23fwdadj.c
src/ts/tutorials/ex20adj.c

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