36 #ifndef EXPRESSION_IF_CROSSED_HPP 37 #define EXPRESSION_IF_CROSSED_HPP 39 #include <lifev/core/array/VectorEpetra.hpp> 41 #include <lifev/core/LifeV.hpp> 43 #include <lifev/eta/expression/ExpressionBase.hpp> 45 #include <lifev/eta/fem/ETFESpace.hpp> 47 #include <boost/shared_ptr.hpp> 54 namespace ExpressionAssembly
62 template<
typename MeshType,
typename MapType,
UInt SpaceDim>
63 class ExpressionIfCrossed
64 :
public ExpressionBase<ExpressionIfCrossed < MeshType, MapType, SpaceDim > >
72 typedef ExpressionBase<ExpressionIfCrossed < MeshType, MapType, SpaceDim > > base_Type;
75 typedef ETFESpace<MeshType, MapType, SpaceDim, 1> fespace_Type;
78 typedef std::shared_ptr<fespace_Type> fespacePtr_Type;
90 ExpressionIfCrossed (fespacePtr_Type fespace,
const vector_Type& vector)
91 : base_Type(), M_fespace (fespace), M_vector (vector) {}
94 ExpressionIfCrossed (
const ExpressionIfCrossed<MeshType, MapType, SpaceDim>& expr)
95 : base_Type(), M_fespace (expr.M_fespace), M_vector (expr.M_vector) {}
98 ~ExpressionIfCrossed() {}
107 static void display (std::ostream& out = std::cout)
119 fespacePtr_Type fespace()
const 125 const vector_Type vector()
const 138 ExpressionIfCrossed();
143 fespacePtr_Type M_fespace;
146 vector_Type M_vector;
168 template<
typename MeshType,
typename MapType, UInt SpaceDim>
169 inline ExpressionIfCrossed<MeshType, MapType, SpaceDim>
171 std::shared_ptr< ETFESpace<MeshType, MapType, SpaceDim, 1> > fespace,
172 const VectorEpetra& vector
175 return ExpressionIfCrossed<MeshType, MapType, SpaceDim> (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)