v0.14.0
Loading...
Searching...
No Matches
HexPolynomialBase.hpp
Go to the documentation of this file.
1/** \file HexPolynomialBase.hpp
2\brief Implementation of Ainsworth-Coyle / Demkowicz or any other H1, Hcurl,
3Hdiv and L2 base on tetrahedral
4
5*/
6
7
8
9#ifndef __HEXPOLYNOMIALBASE_HPP__
10#define __HEXPOLYNOMIALBASE_HPP__
11
12namespace MoFEM {
13
14/**
15 * \brief Calculate base functions on tetrahedral
16 *
17 * \ingroup mofem_base_functions
18 */
20
21 MoFEMErrorCode query_interface(boost::typeindex::type_index type_index,
22 UnknownInterface **iface) const;
23 HexPolynomialBase() = default;
24 ~HexPolynomialBase() = default;
25
27 boost::shared_ptr<BaseFunctionCtx> ctx_ptr);
28
29private:
31
32 /*
33 * @brief Get base functions for H1 space
34 *
35 * @param pts matrix of intergation pts
36 * @return MoFEMErrorCode
37 *
38 * \note matrix of integration points on rows has local coordinates of finite
39 * element on columns are integration pts.
40 */
42
43 /**
44 * @brief Get base functions for L2 space
45 *
46 * @param pts matrix of intergation pts
47 * @return MoFEMErrorCode
48 *
49 * \note matrix of integration points on rows has local coordinates of finite
50 * element on columns are integration pts.
51 */
53
54 /**
55 * @brief Get base functions for Hdiv space
56 *
57 * @param pts matrix of intergation pts
58 * @return MoFEMErrorCode
59 *
60 * \note matrix of integration points on rows has local coordinates of finite
61 * element on columns are integration pts.
62 */
64
65 /**
66 * @brief Get base functions for Hcurl space
67 *
68 * @param pts matrix of intergation pts
69 * @return MoFEMErrorCode
70 *
71 * \note matrix of integration points on rows has local coordinates of finite
72 * element on columns are integration pts.
73 */
75
76private:
81
82 std::array<MatrixDouble, 6> faceFamily;
83 std::array<MatrixDouble, 6> diffFaceFamily;
84
87};
88
89} // namespace MoFEM
90
91#endif //__HEXPOLYNOMIALBASE_HPP__
PetscErrorCode MoFEMErrorCode
MoFEM/PETSc error code.
Definition: Exceptions.hpp:56
implementation of Data Operators for Forces and Sources
Definition: Common.hpp:10
Base class if inherited used to calculate base functions.
Class used to pass element data to calculate base functions on tet,triangle,edge.
Calculate base functions on tetrahedral.
MoFEMErrorCode getValueH1DemkowiczBase(MatrixDouble &pts)
MoFEMErrorCode getValueL2(MatrixDouble &pts)
Get base functions for L2 space.
MoFEMErrorCode getValueH1(MatrixDouble &pts)
std::array< MatrixDouble, 6 > faceFamily
MoFEMErrorCode getValueHdivDemkowiczBase(MatrixDouble &pts)
MoFEMErrorCode getValueHcurl(MatrixDouble &pts)
Get base functions for Hcurl space.
MoFEMErrorCode getValueL2DemkowiczBase(MatrixDouble &pts)
MoFEMErrorCode getValueHdiv(MatrixDouble &pts)
Get base functions for Hdiv space.
MoFEMErrorCode getValueHcurlDemkowiczBase(MatrixDouble &pts)
MoFEMErrorCode getValue(MatrixDouble &pts, boost::shared_ptr< BaseFunctionCtx > ctx_ptr)
std::array< MatrixDouble, 6 > diffFaceFamily
MoFEMErrorCode query_interface(boost::typeindex::type_index type_index, UnknownInterface **iface) const
EntPolynomialBaseCtx * cTx
base class for all interface classes