#include <nonlinear_implicit_system.h>
Public Member Functions | |
virtual | ~ComputeVectorSubspace () |
virtual void | operator() (std::vector< NumericVector< Number > *> &sp, sys_type &s)=0 |
Callable abstract base class to be used as a callback to provide the solver with a basis for the system's Jacobian's nullspace (the kernel or the "zero energy modes") or near-nullspace (the "low energy modes").
A nullspace can be used to solve a degenerate problem iteratively (e.g., with a Krylov subspace method). A near nullspace can be used by an Algebraic Multigrid (AMG) preconditioner to construct smoothed- aggregation-like coarse spaces.
Definition at line 147 of file nonlinear_implicit_system.h.
|
inlinevirtual |
Definition at line 150 of file nonlinear_implicit_system.h.
|
pure virtual |
This function will be called to compute the subspace basis (e.g., nullspace or nearnullspace). It must be implemented by the user in a derived class.