36 #ifndef EXPRESSION_SCALARTOVECTOR_HPP 37 #define EXPRESSION_SCALARTOVECTOR_HPP 39 #include <lifev/core/LifeV.hpp> 41 #include <lifev/eta/expression/ExpressionBase.hpp> 46 namespace ExpressionAssembly
49 template <
typename ExpressionType,
UInt FieldDim>
50 class ExpressionScalarToVector :
public ExpressionBase<ExpressionScalarToVector<ExpressionType, FieldDim> >
58 typedef ExpressionBase< ExpressionScalarToVector <ExpressionType, FieldDim> > base_Type;
67 ExpressionScalarToVector(
const ExpressionType& expr1,
const ExpressionType& expr2,
const ExpressionType& expr3)
68 : base_Type(), M_expr1 (expr1), M_expr2 (expr2), M_expr3 (expr3) {}
71 ExpressionScalarToVector (
const ExpressionScalarToVector<ExpressionType, FieldDim>& expression)
72 : base_Type(), M_expr1 (expression.M_expr1), M_expr2 (expression.M_expr2), M_expr3 (expression.M_expr3) {}
75 ~ExpressionScalarToVector() {}
84 static void display (std::ostream& out = std::cout)
86 out <<
" vector small from expression ";
87 ExpressionType::display (out);
97 const ExpressionType& exprEx1()
const 102 const ExpressionType& exprEx2()
const 107 const ExpressionType& exprEx3()
const 120 ExpressionScalarToVector();
125 ExpressionType M_expr1;
126 ExpressionType M_expr2;
127 ExpressionType M_expr3;
132 template<
typename ExpressionType,
UInt FieldDim >
133 ExpressionScalarToVector<ExpressionType, FieldDim>
138 return ExpressionScalarToVector<ExpressionType, FieldDim> (expr1.cast(), expr2.cast(), expr3.cast());
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)