Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | Protected Member Functions | Friends | List of all members
bitpit::ReferenceTriangleInfo Class Reference

The ReferenceTriangleInfo class defines the information about the reference triangle. More...

Inheritance diagram for bitpit::ReferenceTriangleInfo:
Inheritance graph
[legend]
Collaboration diagram for bitpit::ReferenceTriangleInfo:
Collaboration graph
[legend]

Public Member Functions

double evalArea (const std::array< double, 3 > *vertexCoords) const override
 
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
 
double evalPointDistance (const std::array< double, 3 > &point, const std::array< double, 3 > *vertexCoords) const override
 
void evalPointProjection (const std::array< double, 3 > &point, const std::array< double, 3 > *vertexCoords, std::array< double, 3 > *projection, double *distance) const override
 
double evalSize (const std::array< double, 3 > *vertexCoords) const override
 
- Public Member Functions inherited from bitpit::Reference2DElementInfo
virtual bool areFacesCCWOrdered () const
 
virtual bool areVerticesCCWOrdered () const
 
double evalFaceLength (int face, const std::array< double, 3 > *vertexCoords) const
 
double evalPerimeter (const std::array< double, 3 > *vertexCoords) const
 
virtual int getCCWOrderedFace (int n) const
 
virtual int getCCWOrderedVertex (int n) const
 

Static Public Attributes

static BITPIT_PUBLIC_API const ReferenceTriangleInfo info
 
- Static Public Attributes inherited from bitpit::ReferenceElementInfo
static BITPIT_PUBLIC_API const int MAX_ELEM_EDGES = 12
 
static BITPIT_PUBLIC_API const int MAX_ELEM_FACES = 6
 
static BITPIT_PUBLIC_API const int MAX_ELEM_VERTICES = 8
 

Protected Member Functions

 ReferenceTriangleInfo ()
 
 ReferenceTriangleInfo (ReferenceTriangleInfo const &)=delete
 
ReferenceTriangleInfooperator= (ReferenceTriangleInfo const &)=delete
 
- Protected Member Functions inherited from bitpit::Reference2DElementInfo
 Reference2DElementInfo (ElementType type, int nVertices)
 
void getCCWVertexCoords (const std::array< double, 3 > *vertexCoords, const std::array< double, 3 > **ccwVertexCoords, std::array< double, 3 > *ccwVertexCoordsStorage) const
 
- Protected Member Functions inherited from bitpit::ReferenceElementInfo
 ReferenceElementInfo (int _dimension, ElementType _type, int _nVertices, int _nFaces, int _nEdges)
 
 ReferenceElementInfo (ReferenceElementInfo const &)=delete
 
void initializeFaceEdges (const std::vector< const ReferenceElementInfo * > &facesInfo, const std::vector< const ReferenceElementInfo * > &edgesInfo)
 
ReferenceElementInfooperator= (ReferenceElementInfo const &)=delete
 

Friends

class ReferenceElementInfo
 
class ReferencePyramidInfo
 
class ReferenceTetraInfo
 
class ReferenceWedgeInfo
 

Additional Inherited Members

- Static Public Member Functions inherited from bitpit::ReferenceElementInfo
static BITPIT_PUBLIC_API const ReferenceElementInfogetInfo (ElementType type)
 
static bool hasInfo (ElementType type)
 
- Public Attributes inherited from bitpit::ReferenceElementInfo
int dimension
 
std::array< std::array< int, MAX_ELEM_VERTICES >, MAX_ELEM_EDGES > edgeConnectStorage
 
std::array< ElementType, MAX_ELEM_EDGES > edgeTypeStorage
 
std::array< std::array< int, MAX_ELEM_VERTICES >, MAX_ELEM_FACES > faceConnectStorage
 
std::array< std::array< int, MAX_ELEM_FACES >, MAX_ELEM_FACES > faceEdgeStorage
 
std::array< ElementType, MAX_ELEM_FACES > faceTypeStorage
 
int nEdges
 
int nFaces
 
int nVertices
 
ElementType type
 

Detailed Description

The ReferenceTriangleInfo class defines the information about the reference triangle.

Definition at line 215 of file element_reference.hpp.

Constructor & Destructor Documentation

◆ ReferenceTriangleInfo()

bitpit::ReferenceTriangleInfo::ReferenceTriangleInfo ( )
protected

Default constructor

Definition at line 1270 of file element_reference.cpp.

Member Function Documentation

◆ evalArea()

double bitpit::ReferenceTriangleInfo::evalArea ( const std::array< double, 3 > * vertexCoords) const
overridevirtual

Evaluates the area of an element with the specified vertex coordinates.

Parameters
vertexCoordsare the coordinate of the vertices
Returns
The area of the element.

Implements bitpit::Reference2DElementInfo.

Definition at line 1328 of file element_reference.cpp.

◆ evalNormal()

std::array< double, 3 > bitpit::ReferenceTriangleInfo::evalNormal ( const std::array< double, 3 > * vertexCoords,
const std::array< double, 3 > & point = {{0.5, 0.5, 0.5}} ) const
overridevirtual

Evaluates the normal of an element with the specified vertex coordinates.

Parameters
vertexCoordsare the coordinate of the vertices
pointare the element reference coordinates of the point where the normal should be evaluated
Returns
The normal of the element.

Implements bitpit::Reference2DElementInfo.

Definition at line 1347 of file element_reference.cpp.

◆ evalPointDistance()

double bitpit::ReferenceTriangleInfo::evalPointDistance ( const std::array< double, 3 > & point,
const std::array< double, 3 > * vertexCoords ) const
overridevirtual

Evaluates the distance between the element and the specified point.

Parameters
[in]pointis the point
vertexCoordsare the coordinate of the vertices
Returns
The distance between the element and the specified point.

Reimplemented from bitpit::Reference2DElementInfo.

Definition at line 1384 of file element_reference.cpp.

◆ evalPointProjection()

void bitpit::ReferenceTriangleInfo::evalPointProjection ( const std::array< double, 3 > & point,
const std::array< double, 3 > * vertexCoords,
std::array< double, 3 > * projection,
double * distance ) const
overridevirtual

Evaluates the projection of the point on the element.

Parameters
pointis the point
vertexCoordsare the coordinate of the vertices
[out]projectionon output contains the projection point
[out]distanceon output contains the distance between the point and the projection

Reimplemented from bitpit::Reference2DElementInfo.

Definition at line 1370 of file element_reference.cpp.

◆ evalSize()

double bitpit::ReferenceTriangleInfo::evalSize ( const std::array< double, 3 > * vertexCoords) const
overridevirtual

Evaluates the characteristics size of an element with the specified vertex coordinates.

The characteristics size of the triangle is the height of the regular triangle having the same inscribed circle.

Parameters
vertexCoordsare the coordinate of the vertices
Returns
The length of the line.

Reimplemented from bitpit::Reference2DElementInfo.

Definition at line 1310 of file element_reference.cpp.

Friends And Related Symbol Documentation

◆ ReferenceElementInfo

friend class ReferenceElementInfo
friend

Definition at line 217 of file element_reference.hpp.

◆ ReferencePyramidInfo

friend class ReferencePyramidInfo
friend

Definition at line 219 of file element_reference.hpp.

◆ ReferenceTetraInfo

friend class ReferenceTetraInfo
friend

Definition at line 218 of file element_reference.hpp.

◆ ReferenceWedgeInfo

friend class ReferenceWedgeInfo
friend

Definition at line 220 of file element_reference.hpp.

Member Data Documentation

◆ info

const ReferenceTriangleInfo bitpit::ReferenceTriangleInfo::info
static

Definition at line 232 of file element_reference.hpp.


The documentation for this class was generated from the following files:
--- layout: doxygen_footer ---