18#ifndef SOLUTION_FUNCTION_H
19#define SOLUTION_FUNCTION_H
22#include "libmesh/function_base.h"
43 { libmesh_not_implemented(); }
50 const Real x=p(0), y=p(1), z=p(2);
62 const Real x=p(0), y=p(1), z=p(2);
63 return soln(component_in, x, y, z);
66 virtual std::unique_ptr<FunctionBase<Number>>
clone()
const
67 {
return std::make_unique<SolutionFunction>(
_u_var); }
86 { libmesh_not_implemented(); }
93 const Real x=p(0), y=p(1), z=p(2);
103 const Real x=p(0), y=p(1), z=p(2);
104 return soln(component_in, x, y, z);
107 virtual std::unique_ptr<FunctionBase<Gradient>>
clone()
const
108 {
return std::make_unique<SolutionGradient>(
_u_var); }
virtual Number operator()(const Point &, const Real=0)
virtual std::unique_ptr< FunctionBase< Number > > clone() const
const unsigned int _u_var
SolutionFunction(const unsigned int u_var)
GradDivExactSolution soln
virtual Number component(unsigned int component_in, const Point &p, const Real)
LaplaceExactSolution soln
~SolutionFunction()=default
const unsigned int _u_var
~SolutionGradient()=default
GradDivExactSolution soln
SolutionGradient(const unsigned int u_var)
virtual Gradient component(unsigned int component_in, const Point &p, const Real)
virtual Gradient operator()(const Point &, const Real=0)
virtual std::unique_ptr< FunctionBase< Gradient > > clone() const
LaplaceExactGradient soln
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.
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