SNESVINEWTONRSLS#

Reduced space active set solvers for variational inequalities based on Newton’s method

Options Database Keys#

• -snes_type <vinewtonssls,vinewtonrsls> - a semi-smooth solver, a reduced space active set method

• -snes_vi_monitor - prints the number of active constraints at each iteration.

References#

• **** -*** T. S. Munson, and S. Benson. Flexible Complementarity Solvers for Large Scale Applications, Optimization Methods and Software, 21 (2006).

Note#

At each set of this methods the algorithm produces an inactive set of variables that are constrained to their current values (because changing these values would result in those variables no longer satisfying the inequality constraints) and produces a step direction by solving the linear system arising from the Jacobian with the inactive variables removed. In other words on a reduced space of the solution space. Based on the Newton update it then adjusts the inactive sep for the next iteration.

SNESVISetVariableBounds(), SNESVISetComputeVariableBounds(), SNESCreate(), SNES, SNESSetType(), SNESVINEWTONSSLS, SNESNEWTONTRDC, SNESLineSearchSetType(), SNESLineSearchSetPostCheck(), SNESLineSearchSetPreCheck(), SNESVIGetInactiveSet(), DMSetVI(), SNESVISetRedundancyCheck()

beginner

Location#

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

Edit on GitLab