# SNESNEWTONLS
Newton based nonlinear solver that uses a line search 
## Options Database Keys

- ***-snes_linesearch_type <bt> -*** bt,basic.  Select line search type
- ***-snes_linesearch_order <3> -*** 2, 3. Selects the order of the line search for bt
- ***-snes_linesearch_norms <true> -*** Turns on/off computation of the norms for basic linesearch (`SNESLineSearchSetComputeNorms()`)
- ***-snes_linesearch_alpha <alpha> -*** Sets alpha used in determining if reduction in function norm is sufficient
- ***-snes_linesearch_maxstep <maxstep> -*** Sets the maximum stepsize the line search will use (if the 2-norm(y) > maxstep then scale y to be y = (maxstep/2-norm(y)) *y)
- ***-snes_linesearch_minlambda <minlambda>  -*** Sets the minimum lambda the line search will tolerate
- ***-snes_linesearch_monitor -*** print information about progress of line searches
- ***-snes_linesearch_damping -*** damping factor used for basic line search



## Note
This is the default nonlinear solver in `SNES`




## See Also
 `SNESCreate()`, `SNES`, `SNESSetType()`, `SNESNEWTONTR`, `SNESQN`, `SNESLineSearchSetType()`, `SNESLineSearchSetOrder()`
`SNESLineSearchSetPostCheck()`, `SNESLineSearchSetPreCheck()` `SNESLineSearchSetComputeNorms()`, `SNESGetLineSearch()`

## Level
beginner

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/snes/impls/ls/ls.c.html#SNESNEWTONLS">src/snes/impls/ls/ls.c</A>

## Examples
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/snes/tutorials/ex1.c.html">src/snes/tutorials/ex1.c.html</A><BR>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/snes/impls/ls/ls.c)


[Index of all SNES routines](index.md)  
[Table of Contents for all manual pages](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
