36 #ifndef EXPRESSION_LOGARITHM_HPP 37 #define EXPRESSION_LOGARITHM_HPP 39 #include <lifev/core/LifeV.hpp> 41 #include <lifev/eta/expression/ExpressionBase.hpp> 42 #include <lifev/eta/expression/ExpressionDeterminant.hpp> 43 #include <lifev/eta/expression/ExpressionTrace.hpp> 48 namespace ExpressionAssembly
70 template <
typename BaseExpressionType>
71 class ExpressionLogarithm :
public ExpressionBase< ExpressionLogarithm<BaseExpressionType> >
79 typedef ExpressionBase< ExpressionLogarithm <BaseExpressionType> > base_Type;
87 ExpressionLogarithm (
const BaseExpressionType& l)
88 : base_Type(), M_l (l) {}
91 ExpressionLogarithm (
const ExpressionLogarithm<BaseExpressionType>& expression)
92 : base_Type(), M_l (expression.M_l) {}
95 ~ExpressionLogarithm() {}
104 static void display (std::ostream& out = std::cout)
106 out <<
"Expression Logarithm of: ";
107 BaseExpressionType::display (out);
117 const BaseExpressionType& base()
const 128 ExpressionLogarithm();
134 BaseExpressionType M_l;
161 template<
typename ExpressionType>
162 ExpressionLogarithm<ExpressionType>
165 return ExpressionLogarithm<ExpressionType> (l.cast() );
void updateInverseJacobian(const UInt &iQuadPt)
class ExpressionBase Base class (static polymorphism, CRTP sense) for all the expressions used in ass...