36 #ifndef EXPRESSION_INTERPOLATE_VALUE_HPP 37 #define EXPRESSION_INTERPOLATE_VALUE_HPP 39 #include <lifev/core/LifeV.hpp> 41 #include <lifev/core/array/VectorEpetra.hpp> 43 #include <lifev/eta/expression/ExpressionBase.hpp> 45 #include <lifev/eta/fem/ETFESpace.hpp> 47 #include <boost/shared_ptr.hpp> 54 namespace ExpressionAssembly
81 template<
typename MeshType,
typename MapType,
UInt SpaceDim,
UInt FieldDim>
82 class ExpressionInterpolateValue
83 :
public ExpressionBase<ExpressionInterpolateValue < MeshType, MapType, SpaceDim, FieldDim > >
91 typedef ExpressionBase<ExpressionInterpolateValue < MeshType, MapType, SpaceDim, FieldDim > > base_Type;
94 typedef ETFESpace<MeshType, MapType, SpaceDim, FieldDim> fespace_Type;
97 typedef std::shared_ptr<fespace_Type> fespacePtr_Type;
109 ExpressionInterpolateValue (fespacePtr_Type fespace,
const vector_Type& vector)
110 : base_Type(), M_fespace (fespace), M_vector (vector) {}
113 ExpressionInterpolateValue (
const ExpressionInterpolateValue<MeshType, MapType, SpaceDim, FieldDim>& expr)
114 : base_Type(), M_fespace (expr.M_fespace), M_vector (expr.M_vector) {}
117 ~ExpressionInterpolateValue() {}
126 static void display (std::ostream& out = std::cout)
128 out <<
"interpolated[" << FieldDim <<
"] ";
138 fespacePtr_Type fespace()
const 144 const vector_Type vector()
const 157 ExpressionInterpolateValue();
162 fespacePtr_Type M_fespace;
165 vector_Type M_vector;
189 template<
typename MeshType,
typename MapType, UInt SpaceDim, UInt FieldDim>
190 inline ExpressionInterpolateValue<MeshType, MapType, SpaceDim, FieldDim>
192 std::shared_ptr< ETFESpace<MeshType, MapType, SpaceDim, FieldDim> > fespace,
193 const VectorEpetra& vector
196 return ExpressionInterpolateValue<MeshType, MapType, SpaceDim, FieldDim> (fespace, vector);
VectorEpetra - The Epetra Vector format Wrapper.
void updateInverseJacobian(const UInt &iQuadPt)
class ExpressionBase Base class (static polymorphism, CRTP sense) for all the expressions used in ass...
uint32_type UInt
generic unsigned integer (used mainly for addressing)