petsc-3.7.1 2016-05-15
Report Typos and Errors

# TaoSetJacobianDesignRoutine

Sets the function to compute the Jacobian of the constraint function with respect to the design variables. Used only for pde-constrained optimization.

### Synopsis

    #include "petsctao.h"
    PetscErrorCode TaoSetJacobianDesignRoutine(Tao tao, Mat J, PetscErrorCode (*func)(Tao, Vec, Mat, void*), void *ctx)

Logically collective on Tao Many br

### Input Parameters

| tao | - the Tao context Many br
| J | - Matrix used for the jacobian Many br
| jac | - Jacobian evaluation routine Many br
| ctx | - [optional] user-defined context for private data for the Many brJacobian evaluation routine (may be NULL) Many br

### Calling sequence of jac

       jac (Tao tao,Vec x,Mat *J,void *ctx);

| tao | - the Tao context Many br
| x | - input vector Many br
| J | - Jacobian matrix Many br
| ctx | - [optional] user-defined Jacobian context Many br

### Notes

The function jac() takes Mat * as the matrix arguments rather than Mat. Many brThis allows the Jacobian evaluation routine to replace A and/or B with a Many brcompletely new new matrix structure (not just different matrix elements) Many brwhen appropriate, for instance, if the nonzero structure is changing Many brthroughout the global iterations. Many br

Many br

### See Also

TaoComputeJacobianDesign(), TaoSetJacobianStateRoutine(), TaoSetStateDesignIS()

Level:intermediate
Location:src/tao/interface/taosolver_hj.c
Index of all Tao routines
Table of Contents for all manual pages
Index of all manual pages

### Examples

src/tao/pde_constrained/examples/tutorials/elliptic.c.html
src/tao/pde_constrained/examples/tutorials/parabolic.c.html
src/tao/pde_constrained/examples/tutorials/hyperbolic.c.html