18#ifndef SOLUTION_FUNCTION_H
19#define SOLUTION_FUNCTION_H
22#include "libmesh/function_base.h"
41 { libmesh_not_implemented(); }
48 output(0) =
soln(p)(0);
49 output(1) =
soln(p)(1);
50 output(2) =
soln(p)(2);
58 (*this)(p, 0, outvec);
59 return outvec(component_in);
62 virtual std::unique_ptr<FunctionBase<Number>>
clone()
const
63 {
return std::make_unique<SolutionFunction>(); }
78 { libmesh_not_implemented(); }
95 (*this)(p, 0, outvec);
96 return outvec(component_in);
99 virtual std::unique_ptr<FunctionBase<Gradient>>
clone()
const
100 {
return std::make_unique<SolutionGradient>(); }
virtual Number component(unsigned int component_in, const Point &p, const Real)
virtual Number operator()(const Point &, const Real=0)
virtual std::unique_ptr< FunctionBase< Number > > clone() const
GradDivExactSolution soln
SolutionFunction()=default
~SolutionFunction()=default
~SolutionGradient()=default
SolutionGradient()=default
GradDivExactSolution soln
virtual Gradient operator()(const Point &, const Real=0)
virtual std::unique_ptr< FunctionBase< Gradient > > clone() const
virtual Gradient component(unsigned int component_in, const Point &p, const Real)
Defines a dense vector for use in Finite Element-type computations.
virtual void zero() override final
Set every element in the vector to 0.
Base class for functors that can be evaluated at a point and (optionally) time.
A Point defines a location in LIBMESH_DIM dimensional Real space.
TypeVector< T > row(const unsigned int r) const
This class defines a vector in LIBMESH_DIM dimensional Real or Complex space.
The libMesh namespace provides an interface to certain functionality in the library.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real