TaoLineSearchSetObjectiveRoutine#

Sets the function evaluation routine for the line search

Synopsis#

#include "petsctaolinesearch.h" 
PetscErrorCode TaoLineSearchSetObjectiveRoutine(TaoLineSearch ls, PetscErrorCode (*func)(TaoLineSearch ls, Vec x, PetscReal *, void *), void *ctx)

Logically Collective

Input Parameters#

  • ls - the TaoLineSearch context

  • func - the objective function evaluation routine

  • ctx - the (optional) user-defined context for private data

Calling sequence of func#

PetscErrorCode func(TaoLinesearch ls, Vec x, PetscReal *f, void *ctx);
  • ls - the line search context

  • x - input vector

  • f - function value

  • ctx (optional) user- defined context

Notes#

Use this routine only if you want the line search objective evaluation routine to be different from the Tao’s objective evaluation routine. If you use this routine you must also set the line search gradient and/or function/gradient routine.

Some algorithms (lcl, gpcg) set their own objective routine for the line search, application programmers should be wary of overriding the default objective routine.

See Also#

TAO: Optimization Solvers, Tao, TaoLineSearch, TaoLineSearchCreate(), TaoLineSearchSetGradientRoutine(), TaoLineSearchSetObjectiveAndGradientRoutine(), TaoLineSearchUseTaoRoutines()

Level#

advanced

Location#

src/tao/linesearch/interface/taolinesearch.c


Edit on GitLab

Index of all TaoLineSearch routines
Table of Contents for all manual pages
Index of all manual pages