Dune Core Modules (2.4.1)

Dune::ALU3dGridHierarchicIndexSet< elType, Comm > Class Template Reference

hierarchic index set of ALU3dGrid More...

#include <dune/grid/alugrid/3d/indexsets.hh>

Public Types

typedef IndexTypeImp IndexType
 The type used for the indices.
 
typedef TypesImp Types
 iterator range for geometry types in domain
 

Public Member Functions

template<class EntityType >
int index (const EntityType &ep) const
 return hierarchic index of given entity
 
template<int codim>
int index (const typename GridType::Traits::template Codim< codim >::Entity &entity) const
 return hierarchic index of given entity
 
int subIndex (const EntityCodim0Type &e, int i, unsigned int codim) const
 return subIndex i of given entity for subEntity with codim
 
int size (GeometryType type) const
 
int size (int codim) const
 return size of indexset, i.e. maxindex+1
 
const std::vector< GeometryType > & geomTypes (int codim) const
 deliver all geometry types used in this grid
 
template<class EntityType >
bool contains (const EntityType &) const
 return true because all entities are contained in this set
 
Index access from entity
IndexType index (const typename Traits::template Codim< cc >::Entity &e) const
 Map entity to index. The result of calling this method with an entity that is not in the index set is undefined. More...
 
IndexType index (const Entity &e) const
 Map entity to index. Easier to use than the above because codimension template parameter need not be supplied explicitly. The result of calling this method with an entity that is not in the index set is undefined. More...
 
IndexType subIndex (const typename Traits::template Codim< cc >::Entity &e, int i, unsigned int codim) const
 Map a subentity to an index. More...
 
IndexType subIndex (const Entity &e, int i, unsigned int codim) const
 Map a subentity to an index. More...
 
Access to entity set
Types types (int codim) const
 obtain all geometry types of entities in domain More...
 

Static Public Attributes

static const int dimension
 dimension of the grid (maximum allowed codimension)
 

Detailed Description

template<ALU3dGridElementType elType, class Comm>
class Dune::ALU3dGridHierarchicIndexSet< elType, Comm >

hierarchic index set of ALU3dGrid

Member Function Documentation

◆ index() [1/2]

IndexType Dune::IndexSet< ALU3dGrid< elType, Comm > , ALU3dGridHierarchicIndexSet< elType, Comm > , IndexTypeImp, TypesImp >::index ( const Entity e) const
inlineinherited

Map entity to index. Easier to use than the above because codimension template parameter need not be supplied explicitly. The result of calling this method with an entity that is not in the index set is undefined.

Parameters
eReference to codim cc entity. Since entity knows its codimension, automatic extraction is possible.
Returns
An index in the range 0 ... Max number of entities in set - 1.

◆ index() [2/2]

IndexType Dune::IndexSet< ALU3dGrid< elType, Comm > , ALU3dGridHierarchicIndexSet< elType, Comm > , IndexTypeImp, TypesImp >::index ( const typename Traits::template Codim< cc >::Entity &  e) const
inlineinherited

Map entity to index. The result of calling this method with an entity that is not in the index set is undefined.

Parameters
eReference to codim cc entity, where cc is the template parameter of the function.
Returns
An index in the range 0 ... Max number of entities in set - 1.

◆ size()

template<ALU3dGridElementType elType, class Comm >
int Dune::ALU3dGridHierarchicIndexSet< elType, Comm >::size ( GeometryType  type) const
inline

return size of indexset, i.e. maxindex+1 for given type, if type is not exisiting within grid 0 is returned

References Dune::GeometryType::dim(), Dune::GeometryType::isCube(), Dune::GeometryType::isSimplex(), and Dune::ALU3dGridHierarchicIndexSet< elType, Comm >::size().

Referenced by Dune::ALU3dGridHierarchicIndexSet< elType, Comm >::size().

◆ subIndex() [1/2]

IndexType Dune::IndexSet< ALU3dGrid< elType, Comm > , ALU3dGridHierarchicIndexSet< elType, Comm > , IndexTypeImp, TypesImp >::subIndex ( const Entity e,
int  i,
unsigned int  codim 
) const
inlineinherited

Map a subentity to an index.

The result of calling this method with an entity that is not in the index set is undefined.

Note
This method exists for convenience only. It extracts the codimension from the type of the entity, which can be guessed by the compiler.
Template Parameters
Entitytype of entity (must be GridImp::Codim< cc >::Entity for some cc)
Parameters
[in]ereference to entity
[in]inumber subentity of e within the codimension
[in]codimcodimension of the subentity we're interested in
Returns
An index in the range 0 ... Max number of entities in set - 1.

◆ subIndex() [2/2]

IndexType Dune::IndexSet< ALU3dGrid< elType, Comm > , ALU3dGridHierarchicIndexSet< elType, Comm > , IndexTypeImp, TypesImp >::subIndex ( const typename Traits::template Codim< cc >::Entity &  e,
int  i,
unsigned int  codim 
) const
inlineinherited

Map a subentity to an index.

The result of calling this method with an entity that is not in the index set is undefined.

Template Parameters
cccodimension of the entity
Parameters
[in]ereference to codimension cc entity
[in]inumber subentity of e within the codimension
[in]codimcodimension of the subentity we're interested in (must satisfy cc <= codim <= dimension)
Returns
An index in the range 0 ... Max number of entities in set - 1.

◆ types()

Types Dune::IndexSet< ALU3dGrid< elType, Comm > , ALU3dGridHierarchicIndexSet< elType, Comm > , IndexTypeImp, TypesImp >::types ( int  codim) const
inlineinherited

obtain all geometry types of entities in domain

This method returns an iterator range (something that behaves like Dune::IteratorRange) visiting all geometry types of codimension codim in the domain of the index map exactly once. The iterator must implement the concept of a forward iterator (in the sense of the STL). The elements in the iterator range are required to be of type Dune::GeometryType.

Parameters
[in]codima valid codimension
Returns
iterator range over Const reference to a vector of geometry types.

The documentation for this class was generated from the following files:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Dec 22, 23:30, 2024)