Mechanics of Defect Evolution Library
Loading...
Searching...
No Matches
FEMfaceEvaluation.h
Go to the documentation of this file.
1/* This file is part of MoDELib, the Mechanics Of Defects Evolution Library.
2 *
3 *
4 * MoDELib is distributed without any warranty under the
5 * GNU General Public License (GPL) v2 <http://www.gnu.org/licenses/>.
6 */
7
8#ifndef model_FEMfaceEvaluation_H_
9#define model_FEMfaceEvaluation_H_
10
11#include <Eigen/Dense>
12#include <FEMbaseEvaluation.h>
13namespace model
14{
15
16 /**************************************************************************/
17 /**************************************************************************/
18 template <typename ElementType,int rows,int cols>
19 struct FEMfaceEvaluation : public FEMbaseEvaluation<ElementType,rows,cols>
20 {
21 constexpr static int dim=ElementType::dim;
23 const Eigen::Matrix<double,dim+1,1> domainBary;
24 const int boundaryFace;
25 const double& weight;
26// const Eigen::Matrix<double,dim,1> P;
27
28 /**********************************************************************/
30 const Eigen::Matrix<double,dim+1,1>& _domainBary,
31 const int& _boundaryFace,
32 const double& _weight) :
33 /* init */ FEMbaseEvaluation<ElementType,rows,cols>(_ele.position(_domainBary))
34// /* init */ Eigen::Matrix<double,rows,cols>(Eigen::Matrix<double,rows,cols>::Zero()),
35 /* init */,ele(_ele)
36 /* init */,domainBary(_domainBary)
37 /* init */,boundaryFace(_boundaryFace)
38 /* init */,weight(_weight)
39// /* init */ P(ele.position(domainBary))
40 {
41
42 }
43
44 /**********************************************************************/
45 const FEMfaceEvaluation& operator=(const Eigen::Matrix<double,rows,cols>& val)
46 {
47 static_cast<Eigen::Matrix<double,rows,cols>*>(this)->operator=(val);
48 return *this;
49 }
50
51 };
52
53} // close namespace
54#endif
FEMbaseEvaluation(const VectorDim &_P)
FEMfaceEvaluation(const ElementType &_ele, const Eigen::Matrix< double, dim+1, 1 > &_domainBary, const int &_boundaryFace, const double &_weight)
static constexpr int dim
const Eigen::Matrix< double, dim+1, 1 > domainBary
const FEMfaceEvaluation & operator=(const Eigen::Matrix< double, rows, cols > &val)
const ElementType & ele