SNESSetNormSchedule#

Sets the SNESNormSchedule used in convergence and monitoring of the SNES method, when norms are computed in the solving process

Synopsis#

#include "petscsnes.h"  
PetscErrorCode SNESSetNormSchedule(SNES snes, SNESNormSchedule normschedule)

Logically Collective

Input Parameters#

  • snes - the SNES context

  • normschedule - the frequency of norm computation

Options Database Key#

  • -snes_norm_schedule <none, always, initialonly, finalonly, initialfinalonly> - set the schedule

Notes#

Only certain SNES methods support certain SNESNormSchedules. Most require evaluation of the nonlinear function and the taking of its norm at every iteration to even ensure convergence at all. However, methods such as custom Gauss-Seidel methods SNESNGS and the like do not require the norm of the function to be computed, and therefore may either be monitored for convergence or not. As these are often used as nonlinear preconditioners, monitoring the norm of their error is not a useful enterprise within their solution.

See Also#

SNES: Nonlinear Solvers, SNESNormSchedule, SNESGetNormSchedule(), SNESComputeFunction(), VecNorm(), SNESSetFunction(), SNESSetInitialFunction(), SNESNormSchedule

Level#

advanced

Location#

src/snes/interface/snes.c


Edit on GitLab

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