dune-mmesh 1.4.1-git
Loading...
Searching...
No Matches
Dune::MMeshCachingEntity< 0, dim, GridImp > Class Template Reference

The implementation of caching entities in a MMeshThe caching entity copys the CGAL face object instead of holding a Face_handle pointer. More...

#include <dune/mmesh/grid/cachingentity.hh>

Inheritance diagram for Dune::MMeshCachingEntity< 0, dim, GridImp >:
Inheritance graph

Public Types

typedef AffineGeometry< ctype, dim, dimGeometry
 
typedef GridImp::template Codim< 0 >::LocalGeometry LocalGeometry
 
typedef Geometry::GlobalCoordinate GlobalCoordinate
 
typedef GridImp Grid
 
typedef MMeshLeafIntersectionIterator< GridImp > LeafIntersectionIterator
 The Iterator over intersections on the leaf level.
 
typedef MMeshHierarchicIterator< GridImp > HierarchicIterator
 Iterator over descendants of the entity.
 
typedef GridImp::template Codim< 0 >::EntitySeed EntitySeed
 The type of the EntitySeed interface class.
 
using ConnectedComponent = MMeshConnectedComponent< GridImp >
 The type of a ConnectedComponent.
 
using VertexStorage = std::array< GlobalCoordinate, dim+1 >
 define the type used for storage the vertices of a caching entity
 

Public Member Functions

 MMeshCachingEntity ()=delete
 
 MMeshCachingEntity (const GridImp *mMesh, const HostGridEntity &hostEntity)
 
bool equals (const MMeshCachingEntity &other) const
 returns true if host entities are equal
 
bool operator== (const MMeshCachingEntity &other) const
 returns true if host entities are equal
 
bool operator== (const MMeshEntityType &entity) const
 returns true if caching entity has same id like mmesh entity
 
bool operator< (const MMeshCachingEntity &other) const
 returns true if id of other is greater
 
bool hasFather () const
 returns true if father entity exists
 
const bool isNew () const
 returns true if this entity is new after adaptation
 
const bool mightVanish () const
 returns true if this entity will vanish after adaptation
 
int level () const
 Level of this element.
 
PartitionType partitionType () const
 The partition type for parallel computing.
 
Geometry geometry () const
 Geometry of this entity.
 
unsigned int subEntities (unsigned int cc) const
 Return the number of subEntities of codimension cc.
 
bool isLeaf () const
 returns true if Entity has no children
 
template<int d = dim>
std::enable_if_t< d==2, ctype > intersectionVolume (const MMeshEntityType &entity) const
 calculates the intersection volume with another MMesh entity
 
template<int d = dim>
std::enable_if_t< d==3, ctype > intersectionVolume (const MMeshEntityType &entity) const
 
bool equals (const MMeshEntity &other) const
 returns true if host entities are equal
 
bool operator== (const MMeshEntity &other) const
 returns true if host entities are equal
 
bool operator< (const MMeshEntity &other) const
 returns true if host entities are equal
 
MMeshEntity father () const
 returns the father entity
 
const ConnectedComponentconnectedComponent () const
 
void setIsNew (bool isNew) const
 set if this entity is new after adaptation
 
void setWillVanish (bool mightVanish) const
 set if this entity will vanish after adaptation
 
void mark (int refCount) const
 mark entity for refine or coarse
 
int getMark () const
 get mark of entity
 
EntitySeed seed () const
 Create EntitySeed.
 
void bindFather (const EntityType &father)
 
LocalGeometry geometryInFather () const
 
template<int cc>
std::enable_if_t< cc==0, typename GridImp::template Codim< cc >::EntitysubEntity (unsigned int i) const
 Provide access to sub entity i of given codimension. Entities are numbered 0 ... subEntities(cc)-1.
 
template<int cc>
std::enable_if_t< cc==dim, typename GridImp::template Codim< cc >::EntitysubEntity (unsigned int i) const
 
template<int cc>
std::enable_if_t< cc==1, typename GridImp::template Codim< cc >::EntitysubEntity (unsigned int i) const
 
template<int cc>
std::enable_if_t< cc==2 &&dim==3, typename GridImp::template Codim< cc >::EntitysubEntity (unsigned int i) const
 
MMeshLeafIntersectionIterator< GridImp > ileafbegin () const
 First leaf intersection.
 
MMeshLeafIntersectionIterator< GridImp > ileafend () const
 Reference to one past the last leaf intersection.
 
MMeshLeafIntersectionIterator< GridImp > ilevelbegin () const
 We only have one level.
 
MMeshLeafIntersectionIterator< GridImp > ilevelend () const
 
MMeshHierarchicIterator< GridImp > hbegin (int maxlevel) const
 First hierarchic entity, i.e. this entity, because we only have one level.
 
MMeshHierarchicIterator< GridImp > hend (int maxlevel) const
 Reference to one past the last hierarchic entity.
 
bool wasRefined () const
 returns if grid was refined
 
bool mightBeCoarsened () const
 returns if grid might be coarsened
 
GeometryType type () const
 returns the geometry type
 
std::size_t domainMarker () const
 Return domain marker of entity.
 
const HostGridEntity & hostEntity () const
 Return the host entity.
 
HostGridEntity & hostEntity ()
 Return the host entity.
 
const GridImp & grid () const
 Return the host grid.
 
IdType id () const
 Return id computed by vertex ids.
 

Protected Attributes

VertexStorage vertex_
 the vertices of the host entity object of this entity (for caching entity)
 
const EntityType * father_
 

Friends

template<class GridImp_ >
class MMeshLeafIndexSet
 
template<class GridImp_ >
class MMeshLocalIdSet
 
template<class GridImp_ >
class MMeshGlobalIdSet
 

Detailed Description

template<int dim, class GridImp>
class Dune::MMeshCachingEntity< 0, dim, GridImp >

The implementation of caching entities in a MMesh

The caching entity copys the CGAL face object instead of holding a Face_handle pointer.

A Grid is a container of grid entities. An entity is parametrized by the codimension. An entity of codimension c in dimension d is a d-c dimensional object.

Member Typedef Documentation

◆ ConnectedComponent

template<int dim, class GridImp >
using Dune::MMeshEntity< 0, dim, GridImp >::ConnectedComponent = MMeshConnectedComponent<GridImp>
inherited

The type of a ConnectedComponent.

◆ EntitySeed

template<int dim, class GridImp >
typedef GridImp::template Codim<0>::EntitySeed Dune::MMeshEntity< 0, dim, GridImp >::EntitySeed
inherited

The type of the EntitySeed interface class.

◆ Geometry

template<int dim, class GridImp >
typedef AffineGeometry<ctype, dim, dim> Dune::MMeshCachingEntity< 0, dim, GridImp >::Geometry

◆ GlobalCoordinate

template<int dim, class GridImp >
typedef Geometry::GlobalCoordinate Dune::MMeshCachingEntity< 0, dim, GridImp >::GlobalCoordinate

◆ Grid

template<int dim, class GridImp >
typedef GridImp Dune::MMeshEntity< 0, dim, GridImp >::Grid
inherited

◆ HierarchicIterator

template<int dim, class GridImp >
typedef MMeshHierarchicIterator<GridImp> Dune::MMeshEntity< 0, dim, GridImp >::HierarchicIterator
inherited

Iterator over descendants of the entity.

◆ LeafIntersectionIterator

template<int dim, class GridImp >
typedef MMeshLeafIntersectionIterator<GridImp> Dune::MMeshEntity< 0, dim, GridImp >::LeafIntersectionIterator
inherited

The Iterator over intersections on the leaf level.

◆ LocalGeometry

template<int dim, class GridImp >
typedef GridImp::template Codim<0>::LocalGeometry Dune::MMeshCachingEntity< 0, dim, GridImp >::LocalGeometry

◆ VertexStorage

template<int dim, class GridImp >
using Dune::MMeshEntity< 0, dim, GridImp >::VertexStorage = std::array<GlobalCoordinate, dim + 1>
inherited

define the type used for storage the vertices of a caching entity

Constructor & Destructor Documentation

◆ MMeshCachingEntity() [1/2]

template<int dim, class GridImp >
Dune::MMeshCachingEntity< 0, dim, GridImp >::MMeshCachingEntity ( )
delete

◆ MMeshCachingEntity() [2/2]

template<int dim, class GridImp >
Dune::MMeshCachingEntity< 0, dim, GridImp >::MMeshCachingEntity ( const GridImp *  mMesh,
const HostGridEntity &  hostEntity 
)
inlineexplicit

Member Function Documentation

◆ bindFather()

template<int dim, class GridImp >
void Dune::MMeshEntity< 0, dim, GridImp >::bindFather ( const EntityType &  father)
inlineinherited

◆ connectedComponent()

template<int dim, class GridImp >
const ConnectedComponent & Dune::MMeshEntity< 0, dim, GridImp >::connectedComponent ( ) const
inlineinherited

◆ domainMarker()

template<int dim, class GridImp >
std::size_t Dune::MMeshEntity< 0, dim, GridImp >::domainMarker ( ) const
inlineinherited

Return domain marker of entity.

◆ equals() [1/2]

template<int dim, class GridImp >
bool Dune::MMeshCachingEntity< 0, dim, GridImp >::equals ( const MMeshCachingEntity< 0, dim, GridImp > &  other) const
inline

returns true if host entities are equal

◆ equals() [2/2]

template<int dim, class GridImp >
bool Dune::MMeshEntity< 0, dim, GridImp >::equals ( const MMeshEntity< 0, dim, GridImp > &  other) const
inlineinherited

returns true if host entities are equal

◆ father()

template<int dim, class GridImp >
MMeshEntity Dune::MMeshEntity< 0, dim, GridImp >::father ( ) const
inlineinherited

returns the father entity

◆ geometry()

template<int dim, class GridImp >
Geometry Dune::MMeshCachingEntity< 0, dim, GridImp >::geometry ( ) const
inline

Geometry of this entity.

◆ geometryInFather()

template<int dim, class GridImp >
LocalGeometry Dune::MMeshEntity< 0, dim, GridImp >::geometryInFather ( ) const
inlineinherited

Geometry of this entity in bounded father entity ( assumption: this \subset father )

◆ getMark()

template<int dim, class GridImp >
int Dune::MMeshEntity< 0, dim, GridImp >::getMark ( ) const
inlineinherited

get mark of entity

◆ grid()

template<int dim, class GridImp >
const GridImp & Dune::MMeshEntity< 0, dim, GridImp >::grid ( ) const
inlineinherited

Return the host grid.

◆ hasFather()

template<int dim, class GridImp >
bool Dune::MMeshCachingEntity< 0, dim, GridImp >::hasFather ( ) const
inline

returns true if father entity exists

◆ hbegin()

template<int dim, class GridImp >
MMeshHierarchicIterator< GridImp > Dune::MMeshEntity< 0, dim, GridImp >::hbegin ( int  maxlevel) const
inlineinherited

First hierarchic entity, i.e. this entity, because we only have one level.

◆ hend()

template<int dim, class GridImp >
MMeshHierarchicIterator< GridImp > Dune::MMeshEntity< 0, dim, GridImp >::hend ( int  maxlevel) const
inlineinherited

Reference to one past the last hierarchic entity.

◆ hostEntity() [1/2]

template<int dim, class GridImp >
HostGridEntity & Dune::MMeshEntity< 0, dim, GridImp >::hostEntity ( )
inlineinherited

Return the host entity.

◆ hostEntity() [2/2]

template<int dim, class GridImp >
const HostGridEntity & Dune::MMeshEntity< 0, dim, GridImp >::hostEntity ( ) const
inlineinherited

Return the host entity.

◆ id()

template<int dim, class GridImp >
IdType Dune::MMeshEntity< 0, dim, GridImp >::id ( ) const
inlineinherited

Return id computed by vertex ids.

◆ ileafbegin()

template<int dim, class GridImp >
MMeshLeafIntersectionIterator< GridImp > Dune::MMeshEntity< 0, dim, GridImp >::ileafbegin ( ) const
inlineinherited

First leaf intersection.

◆ ileafend()

template<int dim, class GridImp >
MMeshLeafIntersectionIterator< GridImp > Dune::MMeshEntity< 0, dim, GridImp >::ileafend ( ) const
inlineinherited

Reference to one past the last leaf intersection.

◆ ilevelbegin()

template<int dim, class GridImp >
MMeshLeafIntersectionIterator< GridImp > Dune::MMeshEntity< 0, dim, GridImp >::ilevelbegin ( ) const
inlineinherited

We only have one level.

◆ ilevelend()

template<int dim, class GridImp >
MMeshLeafIntersectionIterator< GridImp > Dune::MMeshEntity< 0, dim, GridImp >::ilevelend ( ) const
inlineinherited

◆ intersectionVolume() [1/2]

template<int dim, class GridImp >
template<int d = dim>
std::enable_if_t< d==2, ctype > Dune::MMeshCachingEntity< 0, dim, GridImp >::intersectionVolume ( const MMeshEntityType &  entity) const
inline

calculates the intersection volume with another MMesh entity

◆ intersectionVolume() [2/2]

template<int dim, class GridImp >
template<int d = dim>
std::enable_if_t< d==3, ctype > Dune::MMeshCachingEntity< 0, dim, GridImp >::intersectionVolume ( const MMeshEntityType &  entity) const
inline

◆ isLeaf()

template<int dim, class GridImp >
bool Dune::MMeshCachingEntity< 0, dim, GridImp >::isLeaf ( ) const
inline

returns true if Entity has no children

◆ isNew()

template<int dim, class GridImp >
const bool Dune::MMeshCachingEntity< 0, dim, GridImp >::isNew ( ) const
inline

returns true if this entity is new after adaptation

◆ level()

template<int dim, class GridImp >
int Dune::MMeshCachingEntity< 0, dim, GridImp >::level ( ) const
inline

Level of this element.

◆ mark()

template<int dim, class GridImp >
void Dune::MMeshEntity< 0, dim, GridImp >::mark ( int  refCount) const
inlineinherited

mark entity for refine or coarse

◆ mightBeCoarsened()

template<int dim, class GridImp >
bool Dune::MMeshEntity< 0, dim, GridImp >::mightBeCoarsened ( ) const
inlineinherited

returns if grid might be coarsened

◆ mightVanish()

template<int dim, class GridImp >
const bool Dune::MMeshCachingEntity< 0, dim, GridImp >::mightVanish ( ) const
inline

returns true if this entity will vanish after adaptation

◆ operator<() [1/2]

template<int dim, class GridImp >
bool Dune::MMeshCachingEntity< 0, dim, GridImp >::operator< ( const MMeshCachingEntity< 0, dim, GridImp > &  other) const
inline

returns true if id of other is greater

◆ operator<() [2/2]

template<int dim, class GridImp >
bool Dune::MMeshEntity< 0, dim, GridImp >::operator< ( const MMeshEntity< 0, dim, GridImp > &  other) const
inlineinherited

returns true if host entities are equal

◆ operator==() [1/3]

template<int dim, class GridImp >
bool Dune::MMeshCachingEntity< 0, dim, GridImp >::operator== ( const MMeshCachingEntity< 0, dim, GridImp > &  other) const
inline

returns true if host entities are equal

◆ operator==() [2/3]

template<int dim, class GridImp >
bool Dune::MMeshEntity< 0, dim, GridImp >::operator== ( const MMeshEntity< 0, dim, GridImp > &  other) const
inlineinherited

returns true if host entities are equal

◆ operator==() [3/3]

template<int dim, class GridImp >
bool Dune::MMeshCachingEntity< 0, dim, GridImp >::operator== ( const MMeshEntityType &  entity) const
inline

returns true if caching entity has same id like mmesh entity

◆ partitionType()

template<int dim, class GridImp >
PartitionType Dune::MMeshCachingEntity< 0, dim, GridImp >::partitionType ( ) const
inline

The partition type for parallel computing.

◆ seed()

template<int dim, class GridImp >
EntitySeed Dune::MMeshEntity< 0, dim, GridImp >::seed ( ) const
inlineinherited

Create EntitySeed.

◆ setIsNew()

template<int dim, class GridImp >
void Dune::MMeshEntity< 0, dim, GridImp >::setIsNew ( bool  isNew) const
inlineinherited

set if this entity is new after adaptation

◆ setWillVanish()

template<int dim, class GridImp >
void Dune::MMeshEntity< 0, dim, GridImp >::setWillVanish ( bool  mightVanish) const
inlineinherited

set if this entity will vanish after adaptation

◆ subEntities()

template<int dim, class GridImp >
unsigned int Dune::MMeshCachingEntity< 0, dim, GridImp >::subEntities ( unsigned int  cc) const
inline

Return the number of subEntities of codimension cc.

◆ subEntity() [1/4]

template<int dim, class GridImp >
template<int cc>
std::enable_if_t< cc==0, typename GridImp::template Codim< cc >::Entity > Dune::MMeshEntity< 0, dim, GridImp >::subEntity ( unsigned int  i) const
inlineinherited

Provide access to sub entity i of given codimension. Entities are numbered 0 ... subEntities(cc)-1.

◆ subEntity() [2/4]

template<int dim, class GridImp >
template<int cc>
std::enable_if_t< cc==dim, typename GridImp::template Codim< cc >::Entity > Dune::MMeshEntity< 0, dim, GridImp >::subEntity ( unsigned int  i) const
inlineinherited

◆ subEntity() [3/4]

template<int dim, class GridImp >
template<int cc>
std::enable_if_t< cc==1, typename GridImp::template Codim< cc >::Entity > Dune::MMeshEntity< 0, dim, GridImp >::subEntity ( unsigned int  i) const
inlineinherited

◆ subEntity() [4/4]

template<int dim, class GridImp >
template<int cc>
std::enable_if_t< cc==2 &&dim==3, typename GridImp::template Codim< cc >::Entity > Dune::MMeshEntity< 0, dim, GridImp >::subEntity ( unsigned int  i) const
inlineinherited

◆ type()

template<int dim, class GridImp >
GeometryType Dune::MMeshEntity< 0, dim, GridImp >::type ( ) const
inlineinherited

returns the geometry type

◆ wasRefined()

template<int dim, class GridImp >
bool Dune::MMeshEntity< 0, dim, GridImp >::wasRefined ( ) const
inlineinherited

returns if grid was refined

Friends And Related Symbol Documentation

◆ MMeshGlobalIdSet

template<int dim, class GridImp >
template<class GridImp_ >
friend class MMeshGlobalIdSet
friend

◆ MMeshLeafIndexSet

template<int dim, class GridImp >
template<class GridImp_ >
friend class MMeshLeafIndexSet
friend

◆ MMeshLocalIdSet

template<int dim, class GridImp >
template<class GridImp_ >
friend class MMeshLocalIdSet
friend

Member Data Documentation

◆ father_

template<int dim, class GridImp >
const EntityType* Dune::MMeshEntity< 0, dim, GridImp >::father_
protectedinherited

◆ vertex_

template<int dim, class GridImp >
VertexStorage Dune::MMeshEntity< 0, dim, GridImp >::vertex_
protectedinherited

the vertices of the host entity object of this entity (for caching entity)


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