TaoLineSearchSetGradientRoutine#
Sets the gradient evaluation routine for the line search
Synopsis#
#include "petsctaolinesearch.h"
PetscErrorCode TaoLineSearchSetGradientRoutine(TaoLineSearch ls, PetscErrorCode (*func)(TaoLineSearch ls, Vec x, Vec g, void *), void *ctx)
Logically Collective
Input Parameters#
ls - the
TaoLineSearch
contextfunc - the gradient evaluation routine
ctx - the (optional) user-defined context for private data
Calling sequence of func
#
PetscErrorCode func(TaoLinesearch ls, Vec x, Vec g, void *ctx);
ls - the linesearch object
x - input vector
g - gradient vector
ctx (optional) user- defined context
Note#
Use this routine only if you want the line search gradient
evaluation routine to be different from the Tao
’s gradient
evaluation routine. If you use this routine you must also set
the line search function and/or function/gradient routine.
Some algorithms (lcl, gpcg) set their own gradient routine for the line search, application programmers should be wary of overriding the default gradient routine.
See Also#
TAO: Optimization Solvers, Tao
, TaoLineSearch
, TaoLineSearchCreate()
, TaoLineSearchSetObjectiveRoutine()
, TaoLineSearchSetObjectiveAndGradientRoutine()
, TaoLineSearchUseTaoRoutines()
Level#
beginner
Location#
src/tao/linesearch/interface/taolinesearch.c
Index of all TaoLineSearch routines
Table of Contents for all manual pages
Index of all manual pages