Loading...
Searching...
No Matches
element_reference.hpp
65 virtual void evalPointProjection(const std::array<double, 3> &point, const std::array<double, 3> *vertexCoords, std::array<double, 3> *projection, double *distance) const = 0;
66 virtual double evalPointDistance(const std::array<double, 3> &point, const std::array<double, 3> *vertexCoords) const = 0;
69 ReferenceElementInfo(int _dimension, ElementType _type, int _nVertices, int _nFaces, int _nEdges);
74 void initializeFaceEdges(const std::vector<const ReferenceElementInfo *> &facesInfo, const std::vector<const ReferenceElementInfo *> &edgesInfo);
90 void evalPointProjection(const std::array<double, 3> &point, const std::array<double, 3> *vertexCoords, std::array<double, 3> *projection, double *distance) const override;
91 double evalPointDistance(const std::array<double, 3> &point, const std::array<double, 3> *vertexCoords) const override;
197 virtual std::array<double, 3> evalNormal(const std::array<double, 3> *vertexCoords, const std::array<double, 3> &point = {{0.5, 0.5, 0.5}}) const = 0;
199 void evalPointProjection(const std::array<double, 3> &point, const std::array<double, 3> *vertexCoords, std::array<double, 3> *projection, double *distance) const override;
200 double evalPointDistance(const std::array<double, 3> &point, const std::array<double, 3> *vertexCoords) const override;
211 void getCCWVertexCoords(const std::array<double, 3> *vertexCoords, const std::array<double, 3> **ccwVertexCoords, std::array<double, 3> *ccwVertexCoordsStorage) const;
227 std::array<double, 3> evalNormal(const std::array<double, 3> *vertexCoords, const std::array<double, 3> &point = {{0.5, 0.5, 0.5}}) const override;
229 void evalPointProjection(const std::array<double, 3> &point, const std::array<double, 3> *vertexCoords, std::array<double, 3> *projection, double *distance) const override;
230 double evalPointDistance(const std::array<double, 3> &point, const std::array<double, 3> *vertexCoords) const override;
252 std::array<double, 3> evalNormal(const std::array<double, 3> *vertexCoords, const std::array<double, 3> &point = {{0.5, 0.5, 0.5}}) const override;
280 std::array<double, 3> evalNormal(const std::array<double, 3> *vertexCoords, const std::array<double, 3> &point = {{0.5, 0.5, 0.5}}) const override;
321 std::array<double, 3> evalNormal(const std::array<double, 3> *vertexCoords, const std::array<double, 3> &orientation = {{0., 0., 1.}}, const std::array<double, 3> &point = {{0.5, 0.5, 0.5}}) const override;
323 void evalPointProjection(const std::array<double, 3> &point, const std::array<double, 3> *vertexCoords, std::array<double, 3> *projection, double *distance) const override;
324 double evalPointDistance(const std::array<double, 3> &point, const std::array<double, 3> *vertexCoords) const override;
357 std::array<double, 3> evalNormal(const std::array<double, 3> *vertexCoords, const std::array<double, 3> &orientation = {{1., 0., 0.}}) const override;
359 void evalPointProjection(const std::array<double, 3> &point, const std::array<double, 3> *vertexCoords, std::array<double, 3> *projection, double *distance) const override;
360 double evalPointDistance(const std::array<double, 3> &point, const std::array<double, 3> *vertexCoords) const override;
Reference0DElementInfo(ElementType type)
Definition element_reference.cpp:1816
Reference1DElementInfo(ElementType type)
Definition element_reference.cpp:1671
virtual int getCCWOrderedVertex(int n) const
Definition element_reference.cpp:1197
virtual int getCCWOrderedFace(int n) const
Definition element_reference.cpp:1221
double evalPointDistance(const std::array< double, 3 > &point, const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:1167
double evalFaceLength(int face, const std::array< double, 3 > *vertexCoords) const
Definition element_reference.cpp:1126
double evalSize(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:1086
Reference2DElementInfo(ElementType type, int nVertices)
Definition element_reference.cpp:1071
void evalPointProjection(const std::array< double, 3 > &point, const std::array< double, 3 > *vertexCoords, std::array< double, 3 > *projection, double *distance) const override
Definition element_reference.cpp:1147
double evalPerimeter(const std::array< double, 3 > *vertexCoords) const
Definition element_reference.cpp:1108
void getCCWVertexCoords(const std::array< double, 3 > *vertexCoords, const std::array< double, 3 > **ccwVertexCoords, std::array< double, 3 > *ccwVertexCoordsStorage) const
Definition element_reference.cpp:1240
virtual bool areVerticesCCWOrdered() const
Definition element_reference.cpp:1184
virtual bool areFacesCCWOrdered() const
Definition element_reference.cpp:1208
double evalSurfaceArea(const std::array< double, 3 > *vertexCoords) const
Definition element_reference.cpp:255
double evalSize(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:232
double evalEdgePerimeter(const std::array< double, 3 > *vertexCoords) const
Definition element_reference.cpp:272
double evalFaceArea(int face, const std::array< double, 3 > *vertexCoords) const
Definition element_reference.cpp:290
Reference3DElementInfo(ElementType type, int nVertices, int nFaces)
Definition element_reference.cpp:217
double evalPointDistance(const std::array< double, 3 > &point, const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:363
void evalPointProjection(const std::array< double, 3 > &point, const std::array< double, 3 > *vertexCoords, std::array< double, 3 > *projection, double *distance) const override
Definition element_reference.cpp:332
double evalEdgeLength(int edge, const std::array< double, 3 > *vertexCoords) const
Definition element_reference.cpp:311
ReferenceElementInfo(int _dimension, ElementType _type, int _nVertices, int _nFaces, int _nEdges)
Definition element_reference.cpp:56
static bool hasInfo(ElementType type)
Definition element_reference.cpp:79
static BITPIT_PUBLIC_API const ReferenceElementInfo & getInfo(ElementType type)
Definition element_reference.cpp:108
void initializeFaceEdges(const std::vector< const ReferenceElementInfo * > &facesInfo, const std::vector< const ReferenceElementInfo * > &edgesInfo)
Definition element_reference.cpp:152
ReferenceHexahedronInfo()
Definition element_reference.cpp:657
double evalVolume(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:759
std::array< double, 3 > evalNormal(const std::array< double, 3 > *vertexCoords, const std::array< double, 3 > &orientation={{0., 0., 1.}}, const std::array< double, 3 > &point={{0.5, 0.5, 0.5}}) const override
Definition element_reference.cpp:1755
void evalPointProjection(const std::array< double, 3 > &point, const std::array< double, 3 > *vertexCoords, std::array< double, 3 > *projection, double *distance) const override
Definition element_reference.cpp:1778
double evalLength(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:1735
double evalPointDistance(const std::array< double, 3 > &point, const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:1794
ReferenceLineInfo()
Definition element_reference.cpp:1689
double evalSize(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:1724
bool areVerticesCCWOrdered() const override
Definition element_reference.cpp:1510
double evalSize(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:1451
int getCCWOrderedVertex(int n) const override
Definition element_reference.cpp:1523
std::array< double, 3 > evalNormal(const std::array< double, 3 > *vertexCoords, const std::array< double, 3 > &point={{0.5, 0.5, 0.5}}) const override
Definition element_reference.cpp:1490
bool areFacesCCWOrdered() const override
Definition element_reference.cpp:1536
ReferencePixelInfo()
Definition element_reference.cpp:1402
int getCCWOrderedFace(int n) const override
Definition element_reference.cpp:1549
double evalArea(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:1471
ReferencePyramidInfo()
Definition element_reference.cpp:800
double evalVolume(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:889
ReferenceQuadInfo()
Definition element_reference.cpp:1569
double evalArea(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:1608
std::array< double, 3 > evalNormal(const std::array< double, 3 > *vertexCoords, const std::array< double, 3 > &point={{0.5, 0.5, 0.5}}) const override
Definition element_reference.cpp:1636
double evalSize(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:483
double evalVolume(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:461
ReferenceTetraInfo()
Definition element_reference.cpp:394
ReferenceTriangleInfo()
Definition element_reference.cpp:1270
double evalPointDistance(const std::array< double, 3 > &point, const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:1384
double evalArea(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:1328
void evalPointProjection(const std::array< double, 3 > &point, const std::array< double, 3 > *vertexCoords, std::array< double, 3 > *projection, double *distance) const override
Definition element_reference.cpp:1370
double evalSize(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:1310
std::array< double, 3 > evalNormal(const std::array< double, 3 > *vertexCoords, const std::array< double, 3 > &point={{0.5, 0.5, 0.5}}) const override
Definition element_reference.cpp:1347
std::array< double, 3 > evalNormal(const std::array< double, 3 > *vertexCoords, const std::array< double, 3 > &orientation={{1., 0., 0.}}) const override
Definition element_reference.cpp:1882
double evalPointDistance(const std::array< double, 3 > &point, const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:1916
double evalSize(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:1865
void evalPointProjection(const std::array< double, 3 > &point, const std::array< double, 3 > *vertexCoords, std::array< double, 3 > *projection, double *distance) const override
Definition element_reference.cpp:1902
ReferenceVertexInfo()
Definition element_reference.cpp:1834
double evalSize(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:628
ReferenceVoxelInfo()
Definition element_reference.cpp:508
double evalVolume(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:607
ReferenceWedgeInfo()
Definition element_reference.cpp:915
double evalVolume(const std::array< double, 3 > *vertexCoords) const override
Definition element_reference.cpp:1008
