# SNESLINESEARCHL2#

Secant search in the L2 norm of the function or the objective function, if it is provided with `SNESSetObjective()`

. Attempts to solve \( \min_{\lambda} f(x + \lambda y) \) using the secant method with the initial bracketing of \( \lambda \) between [0,damping].
Differences of \(f()\) are used to approximate the first and second derivative of \(f()\) with respect to
\(\lambda\), \(f'()\) and \(f''()\). The secant method is run for `maxit`

iterations.

When an objective function is provided \(f(w)\) is the objective function otherwise \(f(w) = ||F(w)||^2\). \(x\) is the current step and \(y\) is the search direction.

This has no checks on whether the secant method is actually converging.

## Options Database Keys#

maximum number of iterations, default is 1**-snes_linesearch_max_it**- the algorithm insures that a step length is never longer than this value**-snes_linesearch_maxstep**- initial step is scaled back by this factor, default is 1.0**-snes_linesearch_damping**- minimum allowable lambda**-snes_linesearch_minlambda**-

## Developer Note#

A better name for this method might be `SNESLINESEARCHSECANT`

, L2 is not descriptive

## See Also#

SNES: Nonlinear Solvers, `SNESLINESEARCHBT`

, `SNESLINESEARCHCP`

, `SNESLineSearch`

, `SNESLineSearchType`

, `SNESLineSearchCreate()`

, `SNESLineSearchSetType()`

## Level#

advanced

## Location#

src/snes/linesearch/impls/l2/linesearchl2.c

Index of all SNES routines

Table of Contents for all manual pages

Index of all manual pages