dune-alugrid 2.8.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Attributes | List of all members
BisectionCompatibility< VertexVector > Class Template Reference

#include <dune/alugrid/common/bisectioncompatibility.hh>

Public Types

typedef VertexVector VertexVectorType
 
typedef std::array< unsigned int, 3 > FaceType
 
typedef std::vector< unsigned int > ElementType
 
typedef std::array< unsigned int, 2 > EdgeType
 
typedef std::map< FaceType, EdgeTypeFaceMapType
 
typedef std::pair< FaceType, EdgeTypeFaceElementType
 

Public Member Functions

 BisectionCompatibility (const VertexVectorType &vertices, const std::vector< ElementType > &elements, const bool stevenson)
 
int stronglyCompatibleFaces ()
 
bool compatibilityCheck ()
 
bool make6CompatibilityCheck ()
 
void printNB ()
 
void printElement (int index)
 
bool type0Algorithm ()
 
bool type1Algorithm ()
 
void returnElements (std::vector< ElementType > &elements, std::vector< bool > &elementOrientation, std::vector< int > &types, const bool stevenson=false)
 
void stevenson2Alberta ()
 
void alberta2Stevenson ()
 

Protected Attributes

const VertexVectorTypevertices_
 
std::vector< ElementTypeelements_
 
std::vector< bool > elementOrientation_
 
FaceMapType neighbours_
 
const size_t nVertices_
 
std::vector< bool > containedInV0_
 
std::vector< int > types_
 
bool stevensonRefinement_
 
EdgeType type0nodes_
 
EdgeType type0faces_
 
unsigned int type1node_
 
unsigned int type1face_
 
const int variant_ = BisectionCompatibilityParameters::variant()
 
const int threshold_ = BisectionCompatibilityParameters::threshold()
 
const bool useAnnouncedEdge_ = BisectionCompatibilityParameters::useAnnouncedEdge()
 

Member Typedef Documentation

◆ EdgeType

template<class VertexVector >
typedef std::array<unsigned int, 2> BisectionCompatibility< VertexVector >::EdgeType

◆ ElementType

template<class VertexVector >
typedef std::vector< unsigned int > BisectionCompatibility< VertexVector >::ElementType

◆ FaceElementType

template<class VertexVector >
typedef std::pair< FaceType, EdgeType > BisectionCompatibility< VertexVector >::FaceElementType

◆ FaceMapType

template<class VertexVector >
typedef std::map< FaceType, EdgeType > BisectionCompatibility< VertexVector >::FaceMapType

◆ FaceType

template<class VertexVector >
typedef std::array<unsigned int, 3> BisectionCompatibility< VertexVector >::FaceType

◆ VertexVectorType

template<class VertexVector >
typedef VertexVector BisectionCompatibility< VertexVector >::VertexVectorType

Constructor & Destructor Documentation

◆ BisectionCompatibility()

template<class VertexVector >
BisectionCompatibility< VertexVector >::BisectionCompatibility ( const VertexVectorType vertices,
const std::vector< ElementType > &  elements,
const bool  stevenson 
)
inline

Member Function Documentation

◆ alberta2Stevenson()

template<class VertexVector >
void BisectionCompatibility< VertexVector >::alberta2Stevenson ( )
inline

◆ compatibilityCheck()

template<class VertexVector >
bool BisectionCompatibility< VertexVector >::compatibilityCheck ( )
inline

◆ make6CompatibilityCheck()

template<class VertexVector >
bool BisectionCompatibility< VertexVector >::make6CompatibilityCheck ( )
inline

◆ printElement()

template<class VertexVector >
void BisectionCompatibility< VertexVector >::printElement ( int  index)
inline

◆ printNB()

template<class VertexVector >
void BisectionCompatibility< VertexVector >::printNB ( )
inline

◆ returnElements()

template<class VertexVector >
void BisectionCompatibility< VertexVector >::returnElements ( std::vector< ElementType > &  elements,
std::vector< bool > &  elementOrientation,
std::vector< int > &  types,
const bool  stevenson = false 
)
inline

◆ stevenson2Alberta()

template<class VertexVector >
void BisectionCompatibility< VertexVector >::stevenson2Alberta ( )
inline

◆ stronglyCompatibleFaces()

template<class VertexVector >
int BisectionCompatibility< VertexVector >::stronglyCompatibleFaces ( )
inline

◆ type0Algorithm()

template<class VertexVector >
bool BisectionCompatibility< VertexVector >::type0Algorithm ( )
inline

◆ type1Algorithm()

template<class VertexVector >
bool BisectionCompatibility< VertexVector >::type1Algorithm ( )
inline

Member Data Documentation

◆ containedInV0_

template<class VertexVector >
std::vector<bool> BisectionCompatibility< VertexVector >::containedInV0_
protected

◆ elementOrientation_

template<class VertexVector >
std::vector<bool> BisectionCompatibility< VertexVector >::elementOrientation_
protected

◆ elements_

template<class VertexVector >
std::vector<ElementType> BisectionCompatibility< VertexVector >::elements_
protected

◆ neighbours_

template<class VertexVector >
FaceMapType BisectionCompatibility< VertexVector >::neighbours_
protected

◆ nVertices_

template<class VertexVector >
const size_t BisectionCompatibility< VertexVector >::nVertices_
protected

◆ stevensonRefinement_

template<class VertexVector >
bool BisectionCompatibility< VertexVector >::stevensonRefinement_
protected

◆ threshold_

template<class VertexVector >
const int BisectionCompatibility< VertexVector >::threshold_ = BisectionCompatibilityParameters::threshold()
protected

◆ type0faces_

template<class VertexVector >
EdgeType BisectionCompatibility< VertexVector >::type0faces_
protected

◆ type0nodes_

template<class VertexVector >
EdgeType BisectionCompatibility< VertexVector >::type0nodes_
protected

◆ type1face_

template<class VertexVector >
unsigned int BisectionCompatibility< VertexVector >::type1face_
protected

◆ type1node_

template<class VertexVector >
unsigned int BisectionCompatibility< VertexVector >::type1node_
protected

◆ types_

template<class VertexVector >
std::vector<int> BisectionCompatibility< VertexVector >::types_
protected

◆ useAnnouncedEdge_

template<class VertexVector >
const bool BisectionCompatibility< VertexVector >::useAnnouncedEdge_ = BisectionCompatibilityParameters::useAnnouncedEdge()
protected

◆ variant_

template<class VertexVector >
const int BisectionCompatibility< VertexVector >::variant_ = BisectionCompatibilityParameters::variant()
protected

◆ vertices_

template<class VertexVector >
const VertexVectorType& BisectionCompatibility< VertexVector >::vertices_
protected

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