petsc-3.14.6 2021-03-30
TaoSetObjectiveAndGradientRoutine
Sets a combined objective function and gradient evaluation routine for minimization
Synopsis
#include "petsctao.h"
PetscErrorCode TaoSetObjectiveAndGradientRoutine(Tao tao, PetscErrorCode (*func)(Tao, Vec, PetscReal *, 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, PetscReal *f, Vec g, void *ctx);
| x | - input vector
|
| f | - objective value (output)
|
| 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/ts/tutorials/ex20opt_p.c.html
src/ts/tutorials/ex20opt_ic.c.html
src/tao/unconstrained/tutorials/eptorsion1.c.html
src/tao/unconstrained/tutorials/eptorsion2.c.html
src/tao/unconstrained/tutorials/minsurf2.c.html
src/tao/unconstrained/tutorials/rosenbrock1.c.html
src/tao/unconstrained/tutorials/spectraladjointassimilation.c.html
src/tao/unconstrained/tutorials/eptorsion2f.F.html
src/tao/unconstrained/tutorials/rosenbrock1f.F90.html
src/tao/constrained/tutorials/maros.c.html
src/tao/constrained/tutorials/toy.c.html
Index of all Tao routines
Table of Contents for all manual pages
Index of all manual pages