petsc-3.7.7 2017-09-25
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

Input Parameters

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

Calling sequence of jac

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

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

Notes

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

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