|
| UniversalMapper (const G &grid, const IDS &idset) |
| Construct mapper from grid and one of its id sets. More...
|
|
template<class EntityType > |
Index | index (const EntityType &e) const |
| Map entity to array index. More...
|
|
Index | subIndex (const typename G::Traits::template Codim< 0 >::Entity &e, int i, int cc) const |
| Map subentity of codim 0 entity to array index. More...
|
|
int | size () const |
| Return total number of entities in the entity set managed by the mapper. More...
|
|
template<class EntityType > |
bool | contains (const EntityType &e, Index &result) const |
| Returns true if the entity is contained in the index set. More...
|
|
bool | contains (const typename G::Traits::template Codim< 0 >::Entity &e, int i, int cc, Index &result) const |
| Returns true if the entity is contained in the index set. More...
|
|
void | update () |
| Recalculates map after mesh adaptation.
|
|
Index | subIndex (const typename G::Traits::template Codim< 0 >::Entity &e, int i, unsigned int codim) const |
| Map subentity i of codim cc of a codim 0 entity to array index. More...
|
|
bool | contains (const EntityType &e, int &result) const |
| Returns true if the entity is contained in the index set and at the same time the array index is returned. More...
|
|
bool | contains (const typename G::Traits::template Codim< 0 >::Entity &e, int i, int cc, int &result) const |
| Returns true if the subentity is contained in the index set and at the same time the array index is returned. More...
|
|
template<typename G, typename IDS, typename IndexType = int>
class Dune::UniversalMapper< G, IDS, IndexType >
Implements a mapper for an arbitrary subset of entities.
This implementation uses an ID set and a map, thus it has log complexity for each access. Template parameters are:
Entities need to be registered in order to use them. If an entity is queried with map, the known index is returned or a new index is created. The method contains only return true, if the entites was queried via map already.
- Template Parameters
-
G | A Dune grid type. |
IDS | An Id set type for the given grid. |
IndexType | Number type used for the indices |
template<typename G , typename IDS , typename IndexType = int>
template<class EntityType >
Returns true if the entity is contained in the index set.
The method contains only return true, if the entites was queried via map already.
- Parameters
-
e | Reference to entity |
result | integer reference where corresponding index is stored if true |
- Returns
- true if entity is in entity set of the mapper
template<typename G , typename IDS , typename IndexType = int>
template<class EntityType >
Map entity to array index.
If an entity is queried with map, the known index is returned or a new index is created. A call to map can never fail.
\param e Reference to codim cc entity, where cc is the template parameter of the function.
\return An index in the range 0 ... Max number of entities in set - 1.
template<typename G , typename IDS , typename IndexType = int>
Return total number of entities in the entity set managed by the mapper.
This number can be used to allocate a vector of data elements associated with the entities of the set. In the parallel case this number is per process (i.e. it may be different in different processes).
- Returns
- Size of the entity set.
template<typename G , typename IDS , typename IndexType = int>
Map subentity of codim 0 entity to array index.
If an entity is queried with map, the known index is returned or a new index is created. A call to map can never fail.
- Parameters
-
e | Reference to codim 0 entity. |
i | Number of codim cc subentity of e, where cc is the template parameter of the function. |
cc | codim of the subentity |
- Returns
- An index in the range 0 ... Max number of entities in set - 1.