petsc-3.13.6 2020-09-29
TaoLineSearchSetObjectiveAndGradientRoutine
Sets the objective/gradient evaluation routine for the line search
Synopsis
#include "petsctaolinesearch.h"
PetscErrorCode TaoLineSearchSetObjectiveAndGradientRoutine(TaoLineSearch ls, PetscErrorCode(*func)(TaoLineSearch ls, Vec x, PetscReal *, Vec g, void*), void *ctx)
Logically Collective on TaoLineSearch
Input Parameter
| ls | - the TaoLineSearch context
|
| func | - the objective and gradient evaluation routine
|
| ctx | - the (optional) user-defined context for private data
|
Calling sequence of func
func (TaoLinesearch ls, Vec x, PetscReal *f, Vec g, void *ctx);
| x | - input vector
|
| f | - function value
|
| g | - gradient vector
|
| ctx (optional) user | - defined context
|
Note
Use this routine only if you want the line search objective and gradient
evaluation routines to be different from the Tao's objective
and gradient evaluation routines.
Note
Some algorithms (lcl, gpcg) set their own objective routine for the
line search, Section 1.5 Writing Application Codes with PETSc programmers should be wary of overriding the
default objective routine.
See Also
TaoLineSearchCreate(), TaoLineSearchSetObjectiveRoutine(), TaoLineSearchSetGradientRoutine(), 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