TaoGetGradient#
Gets the gradient evaluation routine for the function being optimized
Synopsis#
#include "petsctao.h"
PetscErrorCode TaoGetGradient(Tao tao, Vec *g, PetscErrorCode (**func)(Tao tao, Vec x, Vec g, PetscCtx ctx), PetscCtxRt ctx)
Not Collective
Input Parameter#
tao - the
Taocontext
Output Parameters#
g - the vector to internally hold the gradient computation
func - the gradient function
ctx - user-defined context for private data for the gradient evaluation routine
Calling sequence of func#
tao - the optimizer
x - input vector
g - gradient value (output)
ctx - [optional] user-defined function context
Notes#
In addition to specifying an objective function using callbacks such as
TaoSetObjective() and TaoSetGradient(), users can specify
objective functions with TaoAddTerm().
TaoGetGradient() will always return the callback specified with
TaoSetGradient(), even if the objective function has been changed by
calling TaoAddTerm().
See Also#
TAO: Optimization Solvers, Tao, TaoSetObjective(), TaoSetHessian(), TaoSetObjectiveAndGradient(), TaoSetGradient()
Level#
beginner
Location#
Examples#
src/tao/unconstrained/tutorials/spectraladjointassimilation.c
Index of all Tao routines
Table of Contents for all manual pages
Index of all manual pages