Skip to main content
`Ctrl`+`K`

# SNESNEWTONTR

Newton based nonlinear solver that uses trust-region dogleg method with Cauchy direction [NW06]

## Options Database Keys

- -snes_tr_tol - trust region tolerance

- -snes_tr_eta1 - trust region parameter eta1 <= eta2, rho > eta1 breaks out of the inner iteration (default: eta1=0.001)

- -snes_tr_eta2 - trust region parameter, rho <= eta2 shrinks the trust region (default: eta2=0.25)

- -snes_tr_eta3 - trust region parameter eta3 > eta2, rho >= eta3 expands the trust region (default: eta3=0.75)

- -snes_tr_t1 - trust region parameter, shrinking factor of trust region (default: 0.25)

- -snes_tr_t2 - trust region parameter, expanding factor of trust region (default: 2.0)

- -snes_tr_deltaM - trust region parameter, max size of trust region (default: MAX_REAL)

- -snes_tr_delta0 - trust region parameter, initial size of trust region (default: 0.2)

- -snes_tr_fallback_type <newton,cauchy,dogleg> - Solution strategy to test reduction when step is outside of trust region. Can use scaled Newton direction, Cauchy point (Steepest Descent direction) or dogleg method.

## References

[NW06]

Jorge Nocedal and Stephen Wright. Numerical optimization. Springer Science & Business Media, 2006.

## See Also

SNES: Nonlinear Solvers, `SNESCreate()`, `SNES`, `SNESSetType()`, `SNESNEWTONLS`, `SNESSetTrustRegionTolerance()`, `SNESNewtonTRPreCheck()`, `SNESNewtonTRGetPreCheck()`, `SNESNewtonTRSetPostCheck()`, `SNESNewtonTRGetPostCheck()`, `SNESNewtonTRSetPreCheck()`, `SNESNewtonTRSetFallbackType()`, `SNESNewtonTRSetQNType()`

## Level

beginner

## Location

src/snes/impls/tr/tr.c

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