Skip to main content
`Ctrl`+`K`

# TaoSetJacobianRoutine

Sets the function to compute the Jacobian as well as the location to store the matrix.

## Synopsis

    #include "petsctao.h"
    PetscErrorCode TaoSetJacobianRoutine(Tao tao, Mat J, Mat Jpre, PetscErrorCode (*func)(Tao tao, Vec x, Mat J, Mat Jpre, PetscCtx ctx), PetscCtx ctx)

Logically Collective

## Input Parameters

- tao - the `Tao` context

- J - Matrix used for the Jacobian

- Jpre - Matrix that will be used to construct the preconditioner, can be same as `J`

- func - Jacobian evaluation routine

- ctx - [optional] user-defined context for private data for the Jacobian evaluation routine (may be `NULL`)

## Calling sequence of `func`

- tao - the `Tao` context

- x - input vector

- J - Jacobian matrix

- Jpre - matrix used to construct the preconditioner, usually the same as `J`

- ctx - [optional] user-defined Jacobian context

## See Also

TAO: Optimization Solvers, `Tao`, `TaoSetGradient()`, `TaoSetObjective()`

## Level

intermediate

## Location

src/tao/interface/taosolver_hj.c

## Examples

src/tao/complementarity/tutorials/blackscholes.c
src/tao/complementarity/tutorials/minsurf1.c

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