Stores additional information about two adjacent elements, namely the index, area, diameter and normal of shared interface. More...

#include <elementPair.hh>

Inheritance diagram for linDG3D::FvdgElementPair:
concepts::ElementPair< Real >

Public Member Functions

Real area () const
 Returns the area of the common face. More...
 
Real diam () const
 Returns the diameter of the common face. More...
 
uint edgeIndex (uint elem, uint edge) const
 Returns an edge index. More...
 
virtual const FvdgElementelm1 () const
 
virtual const concepts::Element< Real > & elm1 () const=0
 Returns reference to the first element. More...
 
virtual const FvdgElementelm2 () const
 
virtual const concepts::Element< Real > & elm2 () const=0
 Returns reference to the second element. More...
 
uint faceIdx1 () const
 Returns the index of the face in element 1. More...
 
uint faceIdx2 () const
 Returns the index of the face in element 2. More...
 
 FvdgElementPair (const FvdgElement &elm, uint faceIdx)
 Constructor for boundary "pairs": here both elements are the same. More...
 
 FvdgElementPair (const FvdgElement &elm1, const FvdgElement &elm2, uint faceIdx1, uint faceIdx2)
 Constructor. More...
 
concepts::Real3d normal () const
 Returns the normal vector of the common face. More...
 
uint numPairs () const
 Returns the number of common edges. More...
 
void quadrature (std::vector< Real > &weights, std::vector< concepts::Real3d > &xi0, std::vector< concepts::Real3d > &xi1) const
 Returns the quadrature information for quadrature the face. More...
 
void quadrature (std::vector< Real > &weights, std::vector< concepts::Real3d > &xi0, std::vector< concepts::Real3d > &xi1, std::vector< concepts::Real3d > &x) const
 Returns the quadrature information for quadrature the face. More...
 
virtual ~FvdgElementPair ()
 

Private Member Functions

concepts::Real3d barycentric_ (concepts::Real3d zeta, concepts::Real3d *xVtx) const
 
void edgVtx_ (concepts::Real3d *xEdge, concepts::Real3d *xVtx) const
 
void fillData_ ()
 
void fillQuadrature_ ()
 

Private Attributes

Real area_
 Area of the face. More...
 
Real diam_
 Diameter of the face. More...
 
std::vector< std::pair< uint, uint > > edgePairs_
 
const FvdgElementelm1_
 Element 1. More...
 
const FvdgElementelm2_
 Element 2. More...
 
uint faceIdx1_
 Index of face in element 1. More...
 
uint faceIdx2_
 Index of face in element 2. More...
 
concepts::Real3d normal_
 Normal of the face. More...
 

Static Private Attributes

static std::vector< Real > weights_
 Quadrature weights. More...
 
static concepts::Real3d xiEdge_ [6]
 
static std::vector< concepts::Real3dzetaAbsc_
 

Detailed Description

Stores additional information about two adjacent elements, namely the index, area, diameter and normal of shared interface.

Author
Christoph Winkelmann and Adrian Burri, 2002

Definition at line 27 of file elementPair.hh.

Constructor & Destructor Documentation

◆ FvdgElementPair() [1/2]

linDG3D::FvdgElementPair::FvdgElementPair ( const FvdgElement elm1,
const FvdgElement elm2,
uint  faceIdx1,
uint  faceIdx2 
)

Constructor.

Parameters
elm1First element
elm2Second element
faceIdx1Index of face in first element
faceIdx2Index of face in second element

◆ FvdgElementPair() [2/2]

linDG3D::FvdgElementPair::FvdgElementPair ( const FvdgElement elm,
uint  faceIdx 
)

Constructor for boundary "pairs": here both elements are the same.

Parameters
elmElement
faceIdxIndex of face in element

◆ ~FvdgElementPair()

virtual linDG3D::FvdgElementPair::~FvdgElementPair ( )
virtual

Member Function Documentation

◆ area()

Real linDG3D::FvdgElementPair::area ( ) const
inline

Returns the area of the common face.

Definition at line 49 of file elementPair.hh.

◆ barycentric_()

concepts::Real3d linDG3D::FvdgElementPair::barycentric_ ( concepts::Real3d  zeta,
concepts::Real3d xVtx 
) const
private

◆ diam()

Real linDG3D::FvdgElementPair::diam ( ) const
inline

Returns the diameter of the common face.

Definition at line 51 of file elementPair.hh.

◆ edgeIndex()

uint linDG3D::FvdgElementPair::edgeIndex ( uint  elem,
uint  edge 
) const

Returns an edge index.

The edge index is according to the element's internal numbering so that it can be used to query information.

Parameters
elemIndex of the element in consideration (either 0 or 1)
edgeIndex of the edge in the common face
Returns
Index of edge edge in element elem of the pair

◆ edgVtx_()

void linDG3D::FvdgElementPair::edgVtx_ ( concepts::Real3d xEdge,
concepts::Real3d xVtx 
) const
private

◆ elm1() [1/2]

virtual const FvdgElement& linDG3D::FvdgElementPair::elm1 ( ) const
inlinevirtual

Definition at line 45 of file elementPair.hh.

◆ elm1() [2/2]

virtual const concepts::Element<Real >& concepts::ElementPair< Real >::elm1 ( ) const
pure virtualinherited

Returns reference to the first element.

◆ elm2() [1/2]

virtual const FvdgElement& linDG3D::FvdgElementPair::elm2 ( ) const
inlinevirtual

Definition at line 46 of file elementPair.hh.

◆ elm2() [2/2]

virtual const concepts::Element<Real >& concepts::ElementPair< Real >::elm2 ( ) const
pure virtualinherited

Returns reference to the second element.

◆ faceIdx1()

uint linDG3D::FvdgElementPair::faceIdx1 ( ) const
inline

Returns the index of the face in element 1.

Definition at line 87 of file elementPair.hh.

◆ faceIdx2()

uint linDG3D::FvdgElementPair::faceIdx2 ( ) const
inline

Returns the index of the face in element 2.

Definition at line 89 of file elementPair.hh.

◆ fillData_()

void linDG3D::FvdgElementPair::fillData_ ( )
private

◆ fillQuadrature_()

void linDG3D::FvdgElementPair::fillQuadrature_ ( )
private

◆ normal()

concepts::Real3d linDG3D::FvdgElementPair::normal ( ) const
inline

Returns the normal vector of the common face.

Definition at line 53 of file elementPair.hh.

◆ numPairs()

uint linDG3D::FvdgElementPair::numPairs ( ) const
inline

Returns the number of common edges.

Definition at line 55 of file elementPair.hh.

◆ quadrature() [1/2]

void linDG3D::FvdgElementPair::quadrature ( std::vector< Real > &  weights,
std::vector< concepts::Real3d > &  xi0,
std::vector< concepts::Real3d > &  xi1 
) const

Returns the quadrature information for quadrature the face.

Parameters
weightsreturned quadrature weights
xi0returned reference tetrahedron coordinates of abscissae in element 0
xi1returned reference tetrahedron coordinates of abscissae in element 1

◆ quadrature() [2/2]

void linDG3D::FvdgElementPair::quadrature ( std::vector< Real > &  weights,
std::vector< concepts::Real3d > &  xi0,
std::vector< concepts::Real3d > &  xi1,
std::vector< concepts::Real3d > &  x 
) const

Returns the quadrature information for quadrature the face.

Parameters
weightsreturned quadrature weights
xi0returned reference tetrahedron coordinates of abscissae in element 0
xi1returned reference tetrahedron coordinates of abscissae in element 1
xreturned real world coordinates of abscissae

Member Data Documentation

◆ area_

Real linDG3D::FvdgElementPair::area_
private

Area of the face.

Definition at line 96 of file elementPair.hh.

◆ diam_

Real linDG3D::FvdgElementPair::diam_
private

Diameter of the face.

Definition at line 98 of file elementPair.hh.

◆ edgePairs_

std::vector<std::pair<uint, uint> > linDG3D::FvdgElementPair::edgePairs_
private

Definition at line 109 of file elementPair.hh.

◆ elm1_

const FvdgElement& linDG3D::FvdgElementPair::elm1_
private

Element 1.

Definition at line 92 of file elementPair.hh.

◆ elm2_

const FvdgElement& linDG3D::FvdgElementPair::elm2_
private

Element 2.

Definition at line 94 of file elementPair.hh.

◆ faceIdx1_

uint linDG3D::FvdgElementPair::faceIdx1_
private

Index of face in element 1.

Definition at line 102 of file elementPair.hh.

◆ faceIdx2_

uint linDG3D::FvdgElementPair::faceIdx2_
private

Index of face in element 2.

Definition at line 104 of file elementPair.hh.

◆ normal_

concepts::Real3d linDG3D::FvdgElementPair::normal_
private

Normal of the face.

Definition at line 100 of file elementPair.hh.

◆ weights_

std::vector<Real> linDG3D::FvdgElementPair::weights_
staticprivate

Quadrature weights.

Definition at line 106 of file elementPair.hh.

◆ xiEdge_

concepts::Real3d linDG3D::FvdgElementPair::xiEdge_[6]
staticprivate

Definition at line 108 of file elementPair.hh.

◆ zetaAbsc_

std::vector<concepts::Real3d> linDG3D::FvdgElementPair::zetaAbsc_
staticprivate

Definition at line 107 of file elementPair.hh.


The documentation for this class was generated from the following file:
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich