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

The ReferenceLineInfo class defines the information about the reference line. More...

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

Public Member Functions

double evalLength (const std::array< double, 3 > *vertexCoords) const override
 
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
 
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
 

Static Public Attributes

static BITPIT_PUBLIC_API const ReferenceLineInfo 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

 ReferenceLineInfo ()
 
 ReferenceLineInfo (ReferenceLineInfo const &)=delete
 
ReferenceLineInfooperator= (ReferenceLineInfo const &)=delete
 
- Protected Member Functions inherited from bitpit::Reference1DElementInfo
 Reference1DElementInfo (ElementType type)
 
- 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 ReferenceHexahedronInfo
 
class ReferencePixelInfo
 
class ReferencePyramidInfo
 
class ReferenceQuadInfo
 
class ReferenceTetraInfo
 
class ReferenceTriangleInfo
 
class ReferenceVoxelInfo
 
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 ReferenceLineInfo class defines the information about the reference line.

Definition at line 304 of file element_reference.hpp.

Constructor & Destructor Documentation

◆ ReferenceLineInfo()

bitpit::ReferenceLineInfo::ReferenceLineInfo ( )
protected

Default constructor

Definition at line 1689 of file element_reference.cpp.

Member Function Documentation

◆ evalLength()

double bitpit::ReferenceLineInfo::evalLength ( const std::array< double, 3 > * vertexCoords) const
overridevirtual

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

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

Implements bitpit::Reference1DElementInfo.

Definition at line 1735 of file element_reference.cpp.

◆ evalNormal()

std::array< double, 3 > bitpit::ReferenceLineInfo::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
overridevirtual

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

Parameters
vertexCoordsare the coordinate of the vertices
orientationis a vector perpendicular to the plane where the normal should lie
pointare the element reference coordinates of the point where the normal should be evaluated
Returns
The normal of the element.

Implements bitpit::Reference1DElementInfo.

Definition at line 1755 of file element_reference.cpp.

◆ evalPointDistance()

double bitpit::ReferenceLineInfo::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.

Implements bitpit::ReferenceElementInfo.

Definition at line 1794 of file element_reference.cpp.

◆ evalPointProjection()

void bitpit::ReferenceLineInfo::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

Implements bitpit::ReferenceElementInfo.

Definition at line 1778 of file element_reference.cpp.

◆ evalSize()

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

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

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

Implements bitpit::ReferenceElementInfo.

Definition at line 1724 of file element_reference.cpp.

Friends And Related Symbol Documentation

◆ ReferenceElementInfo

friend class ReferenceElementInfo
friend

Definition at line 306 of file element_reference.hpp.

◆ ReferenceHexahedronInfo

friend class ReferenceHexahedronInfo
friend

Definition at line 312 of file element_reference.hpp.

◆ ReferencePixelInfo

friend class ReferencePixelInfo
friend

Definition at line 308 of file element_reference.hpp.

◆ ReferencePyramidInfo

friend class ReferencePyramidInfo
friend

Definition at line 313 of file element_reference.hpp.

◆ ReferenceQuadInfo

friend class ReferenceQuadInfo
friend

Definition at line 309 of file element_reference.hpp.

◆ ReferenceTetraInfo

friend class ReferenceTetraInfo
friend

Definition at line 310 of file element_reference.hpp.

◆ ReferenceTriangleInfo

friend class ReferenceTriangleInfo
friend

Definition at line 307 of file element_reference.hpp.

◆ ReferenceVoxelInfo

friend class ReferenceVoxelInfo
friend

Definition at line 311 of file element_reference.hpp.

◆ ReferenceWedgeInfo

friend class ReferenceWedgeInfo
friend

Definition at line 314 of file element_reference.hpp.

Member Data Documentation

◆ info

const ReferenceLineInfo bitpit::ReferenceLineInfo::info
static

Definition at line 326 of file element_reference.hpp.


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