petsc-3.12.4 2020-02-04
Report Typos and Errors

# TaoSetGradientRoutine

Sets the gradient evaluation routine for minimization

### Synopsis

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

Logically collective on Tao

### Input Parameter

| tao | - the Tao context
| func | - the gradient function
| ctx | - [optional] user-defined context for private data for the gradient evaluation routine (may be NULL)

### Calling sequence of func

         func (Tao tao, Vec x, Vec g, void *ctx);

| x | - input vector
| g | - gradient value (output)
| ctx | - [optional] user-defined function context

### See Also

TaoSetObjectiveRoutine(), TaoSetHessianRoutine() TaoSetObjectiveAndGradientRoutine()

### Level

beginner

### Location

src/tao/interface/taosolver_fg.c

### 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
Index of all Tao routines
Table of Contents for all manual pages
Index of all manual pages