36 #ifndef EVALUTATION_TRANSPOSE_HPP 37 #define EVALUTATION_TRANSPOSE_HPP 40 #include <lifev/core/LifeV.hpp> 42 #include <lifev/eta/array/OperationSmallTranspose.hpp> 44 #include <lifev/eta/expression/ExpressionTranspose.hpp> 46 #include <lifev/core/fem/QuadratureRule.hpp> 51 namespace ExpressionAssembly
63 template <
typename EvaluationType>
64 class EvaluationTranspose
100 EvaluationTranspose (
const EvaluationTranspose& eval)
101 : M_evaluation (eval.M_evaluation)
105 template<
typename Expression>
106 explicit EvaluationTranspose (
const ExpressionTranspose<Expression>& expression)
107 : M_evaluation (expression.exprEx() )
111 ~EvaluationTranspose()
121 void update (
const UInt& iElement)
123 M_evaluation.update (iElement);
127 static void display (std::ostream& out = std::cout)
129 out <<
" transpose ";
130 EvaluationType::display (out);
140 template<
typename CFEType >
141 void setGlobalCFE (
const CFEType* globalCFE)
143 M_evaluation.setGlobalCFE (globalCFE);
147 template<
typename CFEType >
148 void setTestCFE (
const CFEType* testCFE)
150 M_evaluation.setTestCFE (testCFE);
154 template<
typename CFEType >
155 void setSolutionCFE (
const CFEType* solutionCFE)
157 M_evaluation.setSolutionCFE (solutionCFE);
163 M_evaluation.setQuadrature (qr);
173 return_Type value_q (
const UInt& q)
const 175 return M_evaluation.value_q (q).transpose();
179 return_Type value_qi (
const UInt& q,
const UInt& i)
const 181 return M_evaluation.value_qi (q, i).transpose();
185 return_Type value_qij (
const UInt& q,
const UInt& i,
const UInt& j)
const 187 return M_evaluation.value_qij (q, i, j).transpose();
198 EvaluationTranspose();
203 EvaluationType M_evaluation;
207 template<
typename EvaluationType >
208 const flag_Type EvaluationTranspose<EvaluationType>::S_globalUpdateFlag
209 = EvaluationType::S_globalUpdateFlag;
211 template<
typename EvaluationType >
212 const flag_Type EvaluationTranspose<EvaluationType>::S_testUpdateFlag
213 = EvaluationType::S_testUpdateFlag;
215 template<
typename EvaluationType >
216 const flag_Type EvaluationTranspose<EvaluationType>::S_solutionUpdateFlag
217 = EvaluationType::S_solutionUpdateFlag;
uint32_type flag_Type
bit-flag with up to 32 different flags
class OperationSmallTranspose Class containing information about the transpose operation for Small* c...
void updateInverseJacobian(const UInt &iQuadPt)
QuadratureRule - The basis class for storing and accessing quadrature rules.
uint32_type UInt
generic unsigned integer (used mainly for addressing)