36 #ifndef EXPRESSION_PATCHAREA_HPP 37 #define EXPRESSION_PATCHAREA_HPP 39 #include <lifev/core/LifeV.hpp> 41 #include <lifev/core/array/VectorEpetra.hpp> 43 #include <lifev/eta/expression/ExpressionBase.hpp> 44 #include <lifev/eta/fem/ETFESpace.hpp> 51 namespace ExpressionAssembly
78 template<
typename MeshType,
typename MapType,
UInt SpaceDim,
UInt FieldDim>
79 class ExpressionPatchArea
80 :
public ExpressionBase<ExpressionPatchArea<MeshType, MapType, SpaceDim, FieldDim> >
88 typedef ExpressionBase<ExpressionPatchArea<MeshType, MapType, SpaceDim, FieldDim> > base_Type;
90 typedef ETFESpace<MeshType, MapType, SpaceDim, FieldDim> ETFESpace_Type;
91 typedef std::shared_ptr<ETFESpace_Type> ETFESpacePtr_Type;
99 ExpressionPatchArea (
const ETFESpacePtr_Type feSpace )
100 : base_Type(), M_feSpace ( feSpace ) {}
103 ExpressionPatchArea (
const ExpressionPatchArea<MeshType, MapType, SpaceDim, FieldDim>& expr)
104 : base_Type(), M_feSpace (expr.M_feSpace){}
107 ~ExpressionPatchArea() {}
116 static void display (std::ostream& out = std::cout)
118 out <<
"patch area" << std::endl;
128 const ETFESpacePtr_Type fespace()
const 141 ExpressionPatchArea();
146 ETFESpacePtr_Type M_feSpace;
170 template<
typename MeshType,
typename MapType,
UInt SpaceDim,
UInt FieldDim>
171 inline ExpressionPatchArea<MeshType, MapType, SpaceDim, FieldDim>
172 patchArea (
const std::shared_ptr<ETFESpace<MeshType, MapType, SpaceDim, FieldDim> > fespace)
174 return ExpressionPatchArea<MeshType, MapType, SpaceDim, FieldDim> ( fespace );
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)