Skip to main content
`Ctrl`+`K`

# SNESLineSearchSetFromOptions

Sets options for the line search

## Synopsis

    #include "petscsnes.h"
    PetscErrorCode SNESLineSearchSetFromOptions(SNESLineSearch linesearch)

Logically Collective

## Input Parameter

- linesearch - a `SNESLineSearch` line search context

## Options Database Keys

- -snes_linesearch_type - basic (or equivalently none), bt, l2, cp, nleqerr, shell

- -snes_linesearch_order - 1, 2, 3. Most types only support certain orders (bt supports 2 or 3)

- -snes_linesearch_norms - Turn on/off the linesearch norms for the basic linesearch typem (`SNESLineSearchSetComputeNorms()`)

- -snes_linesearch_minlambda - The minimum step length

- -snes_linesearch_maxstep - The maximum step size

- -snes_linesearch_rtol - Relative tolerance for iterative line searches

- -snes_linesearch_atol - Absolute tolerance for iterative line searches

- -snes_linesearch_ltol - Change in lambda tolerance for iterative line searches

- -snes_linesearch_max_it - The number of iterations for iterative line searches

- -snes_linesearch_monitor [:filename] - Print progress of line searches

- -snes_linesearch_monitor_solution_update [viewer:filename:format] - view each update tried by line search routine

- -snes_linesearch_damping - The linesearch damping parameter

- -snes_linesearch_keeplambda - Keep the previous search length as the initial guess.

- -snes_linesearch_precheck_picard - Use precheck that speeds up convergence of picard method

- -snes_linesearch_precheck_picard_angle - Angle used in Picard precheck method

## See Also

SNES: Nonlinear Solvers, `SNES`, `SNESLineSearch`, `SNESLineSearchCreate()`, `SNESLineSearchSetOrder()`, `SNESLineSearchSetType()`, `SNESLineSearchSetTolerances()`, `SNESLineSearchSetDamping()`, `SNESLineSearchPreCheckPicard()`, `SNESLineSearchType`, `SNESLineSearchSetComputeNorms()`

## Level

intermediate

## Location

src/snes/linesearch/interface/linesearch.c

## Implementations

SNESLineSearchSetFromOptions_BT() in src/snes/linesearch/impls/bt/linesearchbt.c

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