ug4
Loading...
Searching...
No Matches
ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC > Class Template Reference

#include <support3D.h>

Public Types

using AttachedBndryManifElemInfo = AttachedBoundryElem< MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >
 
using AttachedFractManifElemInfo = AttachedFractElem< MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >
 
using AttachedGenerManifElemInfo = AttachedGeneralElem< MANIFELM, LOWDIMELM, INDEX_TXP >
 
using AttFullDimElmInfo = AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >
 
using VecAttachedBndryManifElemInfo = std::vector< AttachedBndryManifElemInfo >
 
using VecAttachedFractManifElemInfo = std::vector< AttachedFractManifElemInfo >
 
using VecAttachedGenerManifElemInfo = std::vector< AttachedGenerManifElemInfo >
 

Public Member Functions

bool addBndryManifElem (AttachedBndryManifElemInfo const &manifBndryElm, Grid &grid)
 
template<typename NOGEN >
bool addBndryManifElem (NOGEN const &noGener, Grid &grid)=delete
 
bool addFractManifElem (AttachedFractManifElemInfo const &manifFractElm, Grid &grid)
 
bool addGenerManifElem (AttachedGenerManifElemInfo const &manifGenerElm, Grid &grid)
 
template<typename NOGEN >
bool addGenerManifElem (NOGEN const &noGener, Grid &grid)=delete
 
 AttachedFullDimElemInfo (FULLDIM_ELEM const &fullDimElm)
 
FULLDIM_ELEM const getFulldimElem () const
 
VecAttachedBndryManifElemInfo const getVecBndryManifElem () const
 
VecAttachedFractManifElemInfo const getVecFractManifElem () const
 
VecAttachedGenerManifElemInfo const getVecGenerManifElem () const
 
VecAttachedFractManifElemInfo const getVecUnclosedFractManifElem () const
 
bool const hasFracture () const
 
bool const hasSameFulldimElem (AttFullDimElmInfo const &otherFullDimElmInf) const
 
bool const hasUnclosedFracture () const
 
bool const isMarked () const
 
void markIt ()
 
bool const searchBndryManifElem (AttachedBndryManifElemInfo const &manifBndryElemOther)
 
bool const searchFractManifElem (AttachedFractManifElemInfo const &manifFractElemOther, bool shiftToUnclosedFracts=true)
 
template<typename NOGEN >
bool const searchFractManifElem (NOGEN const &manifFractElemOther, bool shiftToGeneral)=delete
 
bool const searchGenerManifElem (AttachedGenerManifElemInfo const &manifGenerElemOther, bool eraseFound=true)
 
template<typename NOGEN >
bool searchGenerManifElem (NOGEN const &manifGenerElemOther, bool eraseFound)=delete
 
bool const testFullDimElmNeighbour (AttFullDimElmInfo const &attFullDimElmInfOther, bool eraseFoundManif=true)
 

Private Member Functions

template<typename ATT_MANIF_ELM_INFO >
bool addManifElem (ATT_MANIF_ELM_INFO const &manifElm, std::vector< ATT_MANIF_ELM_INFO > &memVecManifElm, Grid &grid)
 
template<typename = std::enable_if<std::is_same<Volume*,FULLDIM_ELEM>::value>, typename = std::enable_if<std::is_same<Face*,MANIFELM>::value>>
bool fullDimElmContainsManif (MANIFELM const &manifEl, Grid &grid)
 
template<typename ATT_MANIF_ELM_INF >
bool const searchManifElem (ATT_MANIF_ELM_INF const &manifElemOther, std::vector< ATT_MANIF_ELM_INF > &memVecManifElem, bool eraseFound=true) const
 

Private Attributes

bool m_elementMarked
 
FULLDIM_ELEM m_fullDimElm
 
VecAttachedBndryManifElemInfo m_vecBndryManifElm
 
VecAttachedFractManifElemInfo m_vecFractManifElm
 
VecAttachedGenerManifElemInfo m_vecGenerManifElm
 
VecAttachedFractManifElemInfo m_vecUnclosedFractManifElm
 

Member Typedef Documentation

◆ AttachedBndryManifElemInfo

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
using ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::AttachedBndryManifElemInfo = AttachedBoundryElem<MANIFELM,LOWDIMELM,INDEX_TXP,NORMAL_VEC>

◆ AttachedFractManifElemInfo

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
using ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::AttachedFractManifElemInfo = AttachedFractElem<MANIFELM,LOWDIMELM,INDEX_TXP,NORMAL_VEC>

◆ AttachedGenerManifElemInfo

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
using ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::AttachedGenerManifElemInfo = AttachedGeneralElem<MANIFELM,LOWDIMELM,INDEX_TXP>

◆ AttFullDimElmInfo

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
using ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::AttFullDimElmInfo = AttachedFullDimElemInfo<FULLDIM_ELEM,MANIFELM,LOWDIMELM,INDEX_TXP,NORMAL_VEC>

◆ VecAttachedBndryManifElemInfo

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
using ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::VecAttachedBndryManifElemInfo = std::vector<AttachedBndryManifElemInfo>

◆ VecAttachedFractManifElemInfo

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
using ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::VecAttachedFractManifElemInfo = std::vector<AttachedFractManifElemInfo>

◆ VecAttachedGenerManifElemInfo

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
using ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::VecAttachedGenerManifElemInfo = std::vector<AttachedGenerManifElemInfo>

Constructor & Destructor Documentation

◆ AttachedFullDimElemInfo()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::AttachedFullDimElemInfo ( FULLDIM_ELEM const &  fullDimElm)
inline

Member Function Documentation

◆ addBndryManifElem() [1/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
bool ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::addBndryManifElem ( AttachedBndryManifElemInfo const &  manifBndryElm,
Grid grid 
)
inline

◆ addBndryManifElem() [2/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
template<typename NOGEN >
bool ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::addBndryManifElem ( NOGEN const &  noGener,
Grid grid 
)
delete

◆ addFractManifElem()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
bool ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::addFractManifElem ( AttachedFractManifElemInfo const &  manifFractElm,
Grid grid 
)
inline

◆ addGenerManifElem() [1/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
bool ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::addGenerManifElem ( AttachedGenerManifElemInfo const &  manifGenerElm,
Grid grid 
)
inline

◆ addGenerManifElem() [2/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
template<typename NOGEN >
bool ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::addGenerManifElem ( NOGEN const &  noGener,
Grid grid 
)
delete

◆ addManifElem()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
template<typename ATT_MANIF_ELM_INFO >
bool ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::addManifElem ( ATT_MANIF_ELM_INFO const &  manifElm,
std::vector< ATT_MANIF_ELM_INFO > &  memVecManifElm,
Grid grid 
)
inlineprivate

◆ fullDimElmContainsManif()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
template<typename = std::enable_if<std::is_same<Volume*,FULLDIM_ELEM>::value>, typename = std::enable_if<std::is_same<Face*,MANIFELM>::value>>
bool ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::fullDimElmContainsManif ( MANIFELM const &  manifEl,
Grid grid 
)
inlineprivate

◆ getFulldimElem()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
FULLDIM_ELEM const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::getFulldimElem ( ) const
inline

◆ getVecBndryManifElem()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
VecAttachedBndryManifElemInfo const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::getVecBndryManifElem ( ) const
inline

◆ getVecFractManifElem()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
VecAttachedFractManifElemInfo const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::getVecFractManifElem ( ) const
inline

◆ getVecGenerManifElem()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
VecAttachedGenerManifElemInfo const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::getVecGenerManifElem ( ) const
inline

◆ getVecUnclosedFractManifElem()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
VecAttachedFractManifElemInfo const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::getVecUnclosedFractManifElem ( ) const
inline

◆ hasFracture()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
bool const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::hasFracture ( ) const
inline

◆ hasSameFulldimElem()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
bool const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::hasSameFulldimElem ( AttFullDimElmInfo const &  otherFullDimElmInf) const
inline

◆ hasUnclosedFracture()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
bool const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::hasUnclosedFracture ( ) const
inline

◆ isMarked()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
bool const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::isMarked ( ) const
inline

◆ markIt()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
void ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::markIt ( )
inline

◆ searchBndryManifElem()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
bool const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::searchBndryManifElem ( AttachedBndryManifElemInfo const &  manifBndryElemOther)
inline

◆ searchFractManifElem() [1/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
bool const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::searchFractManifElem ( AttachedFractManifElemInfo const &  manifFractElemOther,
bool  shiftToUnclosedFracts = true 
)
inline

◆ searchFractManifElem() [2/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
template<typename NOGEN >
bool const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::searchFractManifElem ( NOGEN const &  manifFractElemOther,
bool  shiftToGeneral 
)
delete

◆ searchGenerManifElem() [1/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
bool const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::searchGenerManifElem ( AttachedGenerManifElemInfo const &  manifGenerElemOther,
bool  eraseFound = true 
)
inline

◆ searchGenerManifElem() [2/2]

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
template<typename NOGEN >
bool ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::searchGenerManifElem ( NOGEN const &  manifGenerElemOther,
bool  eraseFound 
)
delete

◆ searchManifElem()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
template<typename ATT_MANIF_ELM_INF >
bool const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::searchManifElem ( ATT_MANIF_ELM_INF const &  manifElemOther,
std::vector< ATT_MANIF_ELM_INF > &  memVecManifElem,
bool  eraseFound = true 
) const
inlineprivate

◆ testFullDimElmNeighbour()

template<typename FULLDIM_ELEM , typename MANIFELM , typename LOWDIMELM , typename INDEX_TXP , typename NORMAL_VEC >
bool const ug::support::AttachedFullDimElemInfo< FULLDIM_ELEM, MANIFELM, LOWDIMELM, INDEX_TXP, NORMAL_VEC >::testFullDimElmNeighbour ( AttFullDimElmInfo const &  attFullDimElmInfOther,
bool  eraseFoundManif = true 
)
inline

Member Data Documentation

◆ m_elementMarked

◆ m_fullDimElm

◆ m_vecBndryManifElm

◆ m_vecFractManifElm

◆ m_vecGenerManifElm

◆ m_vecUnclosedFractManifElm


The documentation for this class was generated from the following file: