libMesh
|
Abstract base class to be used for applying user modifications to the Newton search direction before the solver's line search is called. More...
#include <nonlinear_implicit_system.h>
Public Member Functions | |
virtual | ~ComputePreCheck ()=default |
virtual void | precheck (const NumericVector< Number > &precheck_soln, NumericVector< Number > &search_direction, bool &changed, sys_type &S)=0 |
Abstract precheck method that users must override. More... | |
Abstract base class to be used for applying user modifications to the Newton search direction before the solver's line search is called.
Definition at line 219 of file nonlinear_implicit_system.h.
|
virtualdefault |
|
pure virtual |
Abstract precheck method that users must override.
precheck_soln | This is the solution prior to the linesearch (which we have not performed yet). This will correspond to the system's current_local_solution data member, so it should hold all the information locally that a user might want to query from the vector (e.g. possibly ghost entries) |
search_direction | The search direction that will be used in the upcoming line search. Note that this is the negative of the solution update, at least when using PETSc as the backend. The user may modify this vector |
changed | Whether the user has modified the search_direction |
S | The nonlinear implicit system |
Referenced by libMesh::libmesh_petsc_snes_precheck().