petsc-3.12.4 2020-02-04
Report Typos and Errors

# SNESKSPSetUseEW

Sets SNES use Eisenstat-Walker method for computing relative tolerance for linear solvers within an inexact Newton method.

### Synopsis

    #include "petscsnes.h"
    PetscErrorCode  SNESKSPSetUseEW(SNES snes,PetscBool flag)

Logically Collective on SNES

### Input Parameters

| snes | - SNES context
| flag | - PETSC_TRUE or PETSC_FALSE

### Options Database

| -snes_ksp_ew | - use Eisenstat-Walker method for determining linear system convergence
| -snes_ksp_ew_version ver | - version of Eisenstat-Walker method
| -snes_ksp_ew_rtol0 <rtol0> | - Sets rtol0
| -snes_ksp_ew_rtolmax <rtolmax> | - Sets rtolmax
| -snes_ksp_ew_gamma <gamma> | - Sets gamma
| -snes_ksp_ew_alpha <alpha> | - Sets alpha
| -snes_ksp_ew_alpha2 <alpha2> | - Sets alpha2
| -snes_ksp_ew_threshold <threshold> | - Sets threshold

### Notes

Currently, the default is to use a constant relative tolerance for the inner linear solvers. Alternatively, one can use the Eisenstat-Walker method, where the relative convergence tolerance is reset at each Newton iteration according progress of the nonlinear solver.

### Reference

S. C. Eisenstat and H. F. Walker, "Choosing the forcing terms in an inexact Newton method", SISC 17 (1), pp.16-32, 1996.

### See Also

SNESKSPGetUseEW(), SNESKSPGetParametersEW(), SNESKSPSetParametersEW()

### Level

advanced

### Location

src/snes/interface/snes.c
Index of all SNES routines
Table of Contents for all manual pages
Index of all manual pages