petsc-3.3-p7 2013-05-11

SNESKSPSetUseEW

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

Synopsis

#include "petscsnes.h"  
#include "petscdmshell.h" 
#include "petscsys.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.

Keywords

SNES, KSP, Eisenstat, Walker, convergence, test, inexact, Newton

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