Dune Core Modules (2.3.1)
Implements a mapper for an arbitrary subset of entities. More...
#include <dune/grid/common/universalmapper.hh>
Public Member Functions | |
UniversalMapper (const G &grid, const IDS &idset) | |
Construct mapper from grid and one of its id sets. More... | |
template<class EntityType > | |
int | map (const EntityType &e) const |
Map entity to array index. More... | |
int | map (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, int &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, int &result) const |
Returns true if the entity is contained in the index set. More... | |
void | update () |
Recalculates map after mesh adaptation. | |
int | map (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... | |
Detailed Description
class Dune::UniversalMapper< G, IDS >
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.
\par G A Dune grid type. \par IDS An Id set for the given grid
Constructor & Destructor Documentation
◆ UniversalMapper()
|
inline |
Member Function Documentation
◆ contains() [1/2]
|
inline |
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
◆ contains() [2/2]
|
inline |
Returns true if the entity is contained in the index set.
- Parameters
-
[in] e Reference to codim 0 entity [in] i subentity number [in] cc subentity codim [out] result integer reference where corresponding index is stored if true
- Returns
- true if entity is in entity set of the mapper
◆ map() [1/3]
|
inline |
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.
◆ map() [2/3]
|
inline |
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.
◆ map() [3/3]
|
inlineinherited |
Map subentity i of codim cc of a codim 0 entity to array index.
- Parameters
-
e Reference to codim 0 entity. i Number of codim cc subentity of e, where cc is the template parameter of the function. codim codimension of subentity of e
- Returns
- An index in the range 0 ... Max number of entities in set - 1.
◆ size()
|
inline |
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.
The documentation for this class was generated from the following file:
- dune/grid/common/universalmapper.hh