libMesh
Public Member Functions | List of all members
libMesh::NonlinearImplicitSystem::ComputePreCheck Class Referenceabstract

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...
 

Detailed Description

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.

Constructor & Destructor Documentation

◆ ~ComputePreCheck()

virtual libMesh::NonlinearImplicitSystem::ComputePreCheck::~ComputePreCheck ( )
virtualdefault

Member Function Documentation

◆ precheck()

virtual void libMesh::NonlinearImplicitSystem::ComputePreCheck::precheck ( const NumericVector< Number > &  precheck_soln,
NumericVector< Number > &  search_direction,
bool &  changed,
sys_type S 
)
pure virtual

Abstract precheck method that users must override.

Parameters
precheck_solnThis 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_directionThe 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
changedWhether the user has modified the search_direction
SThe nonlinear implicit system

Referenced by libMesh::libmesh_petsc_snes_precheck().


The documentation for this class was generated from the following file: