SNESVISetRedundancyCheck#

Provide a function to check for any redundancy in the VI active set

Synopsis#

#include "petscsnes.h" 
PetscErrorCode SNESVISetRedundancyCheck(SNES snes, PetscErrorCode (*func)(SNES snes, IS is_act, IS *is_redact, PetscCtx ctx), PetscCtx ctx)

Logically Collective

Input Parameters#

  • snes - the SNESVINEWTONRSLS context

  • func - the function to check of redundancies

  • ctx - optional context used by the function

Calling sequence of func#

  • snes - the SNES context

  • is_act - the set of points in the active sets

  • is_redact - output, the set of points in the non-redundant active set

  • ctx - optional context

Note#

Sometimes the inactive set will result in a singular sub-Jacobian problem that needs to be solved, this allows the user, when they know more about their specific problem to provide a function that removes the redundancy that results in the singular linear system

See Also#

SNES: Nonlinear Solvers, SNES, SNESVINEWTONRSLS, SNESVIGetInactiveSet(), DMSetVI()

Level#

advanced

Location#

src/snes/impls/vi/rs/virs.c


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