dune-grid 2.9.0
Public Types | Public Member Functions | Static Public Attributes | List of all members
Dune::YaspIndexSet< GridImp, isLeafIndexSet > Class Template Reference

Implementation of Level- and LeafIndexSets for YaspGrid. More...

#include <dune/grid/yaspgrid/yaspgridindexsets.hh>

Inheritance diagram for Dune::YaspIndexSet< GridImp, isLeafIndexSet >:
Inheritance graph

Public Types

typedef Base::IndexType IndexType
 
typedef TypesImp Types
 iterator range for geometry types in domain More...
 

Public Member Functions

 YaspIndexSet (const GridImp &g, int l)
 Level grid view constructor stores reference to a grid and level. More...
 
 YaspIndexSet (const GridImp &g)
 Level grid view constructor stores reference to a grid and level. More...
 
template<int cc>
IndexType index (const typename std::remove_const< GridImp >::type::Traits::template Codim< cc >::Entity &e) const
 get index of an entity More...
 
template<int cc>
IndexType subIndex (const typename std::remove_const< GridImp >::type::Traits::template Codim< cc >::Entity &e, int i, unsigned int codim) const
 get index of subentity of an entity More...
 
std::size_t size (GeometryType type) const
 get number of entities of given type and level (the level is known to the object) More...
 
std::size_t size (int codim) const
 return size of set for a given codim More...
 
template<class EntityType >
bool contains (const EntityType &e) const
 return true if the given entity is contained in $E$. More...
 
std::vector< GeometryType > types (int codim) const
 
const std::vector< GeometryType > & geomTypes (int codim) const
 deliver all geometry types used in this grid More...
 
template<int cc>
IndexType subIndex (const typename Traits::template Codim< cc >::Entity &e, int i, unsigned int codim) const
 Map a subentity to an index. More...
 
template<class Entity >
IndexType subIndex (const Entity &e, int i, unsigned int codim) const
 Map a subentity to an index. More...
 
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...
 
Access to entity set
bool contains (const Entity &e) const
 Return true if the given entity is contained in $E$. More...
 

Static Public Attributes

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

Detailed Description

template<class GridImp, bool isLeafIndexSet>
class Dune::YaspIndexSet< GridImp, isLeafIndexSet >

Implementation of Level- and LeafIndexSets for YaspGrid.

Template Parameters
GridImpThe YaspGrid class we are an index set for
isLeafIndexSetfalse: class functions as level index set, true: class functions as leaf index set

Member Typedef Documentation

◆ IndexType

template<class GridImp , bool isLeafIndexSet>
typedef Base::IndexType Dune::YaspIndexSet< GridImp, isLeafIndexSet >::IndexType

◆ Types

typedef TypesImp Dune::IndexSet< GridImp, YaspIndexSet< GridImp, isLeafIndexSet > , unsigned int , TypesImp >::Types
inherited

iterator range for geometry types in domain

Constructor & Destructor Documentation

◆ YaspIndexSet() [1/2]

template<class GridImp , bool isLeafIndexSet>
Dune::YaspIndexSet< GridImp, isLeafIndexSet >::YaspIndexSet ( const GridImp &  g,
int  l 
)
inline

Level grid view constructor stores reference to a grid and level.

◆ YaspIndexSet() [2/2]

template<class GridImp , bool isLeafIndexSet>
Dune::YaspIndexSet< GridImp, isLeafIndexSet >::YaspIndexSet ( const GridImp &  g)
inline

Level grid view constructor stores reference to a grid and level.

Member Function Documentation

◆ contains() [1/2]

bool Dune::IndexSet< GridImp, YaspIndexSet< GridImp, isLeafIndexSet > , unsigned int , TypesImp >::contains ( const Entity e) const
inlineinherited

Return true if the given entity is contained in $E$.

Note
If the input element e is not an element of the grid, then the result of contains() is undefined.

◆ contains() [2/2]

template<class GridImp , bool isLeafIndexSet>
template<class EntityType >
bool Dune::YaspIndexSet< GridImp, isLeafIndexSet >::contains ( const EntityType &  e) const
inline

return true if the given entity is contained in $E$.

◆ geomTypes()

template<class GridImp , bool isLeafIndexSet>
const std::vector< GeometryType > & Dune::YaspIndexSet< GridImp, isLeafIndexSet >::geomTypes ( int  codim) const
inline

deliver all geometry types used in this grid

◆ index() [1/3]

IndexType Dune::IndexSet< GridImp, YaspIndexSet< GridImp, isLeafIndexSet > , unsigned int , 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/3]

template<class GridImp , bool isLeafIndexSet>
template<int cc>
IndexType Dune::YaspIndexSet< GridImp, isLeafIndexSet >::index ( const typename std::remove_const< GridImp >::type::Traits::template Codim< cc >::Entity &  e) const
inline

get index of an entity

◆ index() [3/3]

IndexType Dune::IndexSet< GridImp, YaspIndexSet< GridImp, isLeafIndexSet > , unsigned int , 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() [1/2]

template<class GridImp , bool isLeafIndexSet>
std::size_t Dune::YaspIndexSet< GridImp, isLeafIndexSet >::size ( GeometryType  type) const
inline

get number of entities of given type and level (the level is known to the object)

◆ size() [2/2]

template<class GridImp , bool isLeafIndexSet>
std::size_t Dune::YaspIndexSet< GridImp, isLeafIndexSet >::size ( int  codim) const
inline

return size of set for a given codim

◆ subIndex() [1/3]

template<class GridImp , bool isLeafIndexSet>
template<class Entity >
IndexType Dune::IndexSet< GridImp, IndexSetImp, IndexTypeImp, TypesImp >::subIndex ( const Entity e,
int  i,
unsigned int  codim 
) const
inline

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
Note
The parameter codim denotes the codimension with respect to the grid, i.e., it must satisfy cc <= codim <= dimension.
Returns
An index in the range 0 ... Max number of entities in set - 1.

◆ subIndex() [2/3]

template<class GridImp , bool isLeafIndexSet>
template<int cc>
IndexType Dune::YaspIndexSet< GridImp, isLeafIndexSet >::subIndex ( const typename std::remove_const< GridImp >::type::Traits::template Codim< cc >::Entity &  e,
int  i,
unsigned int  codim 
) const
inline

get index of subentity of an entity

◆ subIndex() [3/3]

template<class GridImp , bool isLeafIndexSet>
template<int cc>
IndexType Dune::IndexSet< GridImp, IndexSetImp, IndexTypeImp, TypesImp >::subIndex ( const typename Traits::template Codim< cc >::Entity &  e,
int  i,
unsigned int  codim 
) const
inline

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
Note
The parameter codim denotes the codimension with respect to the grid, i.e., it must satisfy cc <= codim <= dimension.
Returns
An index in the range 0 ... Max number of entities in set - 1.

◆ types()

template<class GridImp , bool isLeafIndexSet>
std::vector< GeometryType > Dune::YaspIndexSet< GridImp, isLeafIndexSet >::types ( int  codim) const
inline

Member Data Documentation

◆ dimension

const int Dune::IndexSet< GridImp, YaspIndexSet< GridImp, isLeafIndexSet > , unsigned int , TypesImp >::dimension
staticinherited

dimension of the grid (maximum allowed codimension)


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