|
libMesh
|
FEMFunctionBase is a base class from which users can derive in order to define "function-like" objects that can be used within FEMSystem. More...
#include <dirichlet_boundaries.h>
Public Member Functions | |
| FEMFunctionBase (FEMFunctionBase &&)=default | |
| The 5 special functions can be defaulted for this class. More... | |
| FEMFunctionBase (const FEMFunctionBase &)=default | |
| FEMFunctionBase & | operator= (const FEMFunctionBase &)=default |
| FEMFunctionBase & | operator= (FEMFunctionBase &&)=default |
| virtual | ~FEMFunctionBase ()=default |
| virtual void | init () |
| Any post-construction initialization. More... | |
| virtual void | init_context (const FEMContext &) |
| Prepares a context object for use. More... | |
| virtual std::unique_ptr< FEMFunctionBase< Output > > | clone () const =0 |
| virtual Output | operator() (const FEMContext &, const Point &p, const Real time=0.)=0 |
| void | operator() (const FEMContext &, const Point &p, DenseVector< Output > &output) |
| Evaluation function for time-independent vector-valued functions. More... | |
| virtual void | operator() (const FEMContext &, const Point &p, const Real time, DenseVector< Output > &output)=0 |
| Evaluation function for time-dependent vector-valued functions. More... | |
| virtual Output | component (const FEMContext &, unsigned int i, const Point &p, Real time=0.) |
Protected Member Functions | |
| FEMFunctionBase ()=default | |
| Constructor. More... | |
FEMFunctionBase is a base class from which users can derive in order to define "function-like" objects that can be used within FEMSystem.
Definition at line 43 of file dirichlet_boundaries.h.
|
protecteddefault |
Constructor.
|
default |
The 5 special functions can be defaulted for this class.
|
default |
|
virtualdefault |
|
pure virtual |
The new copy should be as "deep" as necessary to allow independent destruction and simultaneous evaluations of the copies in different threads.
Implemented in CoupledFEMFunctionsy, libMesh::CompositeFEMFunction< Output >, CoupledFEMFunctionsx, libMesh::WrappedFunctor< Output >, libMesh::ParsedFEMFunction< Output >, libMesh::ParsedFEMFunction< T >, libMesh::ConstFEMFunction< Output >, libMesh::FDMGradient< GradType >, and SlitFunc.
Referenced by libMesh::ExactSolution::attach_exact_deriv(), libMesh::ExactSolution::attach_exact_hessian(), libMesh::ExactSolution::attach_exact_value(), libMesh::CompositeFEMFunction< Output >::attach_subfunction(), libMesh::DirichletBoundary::DirichletBoundary(), and HilbertSystem::set_goal_func().
|
inlinevirtual |
i at coordinate p and time time.Reimplemented in libMesh::CompositeFEMFunction< Output >, libMesh::FDMGradient< GradType >, libMesh::WrappedFunctor< Output >, libMesh::ParsedFEMFunction< Output >, and libMesh::ParsedFEMFunction< T >.
Definition at line 137 of file fem_function_base.h.
Referenced by libMesh::System::project_vector().
|
inlinevirtual |
Any post-construction initialization.
Reimplemented in libMesh::WrappedFunctor< Output >.
Definition at line 69 of file fem_function_base.h.
|
inlinevirtual |
Prepares a context object for use.
Most problems will want to reimplement this for efficiency, in order to call FE::get_*() as their particular function requires.
Reimplemented in libMesh::WrappedFunctor< Output >, libMesh::ParsedFEMFunction< Output >, libMesh::ParsedFEMFunction< T >, libMesh::FDMGradient< GradType >, and SlitFunc.
Definition at line 77 of file fem_function_base.h.
|
pure virtual |
p and time time, which defaults to zero.Pure virtual, so you have to override it.
Implemented in CoupledFEMFunctionsy, CoupledFEMFunctionsx, libMesh::CompositeFEMFunction< Output >, libMesh::WrappedFunctor< Output >, libMesh::ParsedFEMFunction< Output >, libMesh::ParsedFEMFunction< T >, libMesh::ConstFEMFunction< Output >, libMesh::FDMGradient< GradType >, and SlitFunc.
|
inline |
Evaluation function for time-independent vector-valued functions.
Sets output values in the passed-in output DenseVector.
Definition at line 149 of file fem_function_base.h.
|
pure virtual |
Evaluation function for time-dependent vector-valued functions.
Sets output values in the passed-in output DenseVector.
Pure virtual, so you have to override it.
Implemented in libMesh::CompositeFEMFunction< Output >, libMesh::WrappedFunctor< Output >, libMesh::ParsedFEMFunction< Output >, libMesh::FDMGradient< GradType >, and libMesh::ConstFEMFunction< Output >.
|
default |
|
default |
1.8.14