libMesh
|
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"). More...
#include <nonlinear_implicit_system.h>
Public Member Functions | |
virtual | ~ComputeVectorSubspace ()=default |
virtual void | operator() (std::vector< NumericVector< Number > *> &sp, sys_type &s)=0 |
This function will be called to compute the subspace basis (e.g., nullspace or nearnullspace). More... | |
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 152 of file nonlinear_implicit_system.h.
|
virtualdefault |
|
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.