:orphan: # SNESLINESEARCHCP Critical point line search. This line search assumes that there exists some artificial G(x) for which the `SNESFunction` F(x) = grad G(x). Therefore, this line search seeks to find roots of dot(F, Y) via a secant method. ## Options Database Keys - ***-snes_linesearch_minlambda -*** the minimum acceptable lambda - ***-snes_linesearch_maxstep -*** the algorithm insures that a step length is never longer than this value - ***-snes_linesearch_damping -*** initial trial step length is scaled by this factor, default is 1.0 - ***-snes_linesearch_max_it -*** the maximum number of secant steps performed. ## Notes This method does NOT use the objective function if it is provided with `SNESSetObjective()`. This method is the preferred line search for `SNESQN` and `SNESNCG`. ## See Also `SNESLineSearch`, `SNESLineSearchType`, `SNESLineSearchCreate()`, `SNESLineSearchSetType()` ## Level advanced ## Location src/snes/linesearch/impls/cp/linesearchcp.c --- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/snes/linesearch/impls/cp/linesearchcp.c) [Index of all SNES routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)