Dune Core Modules (2.9.0)
Multiple codim and multiple geometry type mapper for entities of one level. More...
#include <dune/grid/common/mcmgmapper.hh>
Public Types | |
typedef G::LevelGridView | GridView |
Underlying GridView. | |
typedef GV::IndexSet::IndexType | Index |
Number type used for indices. | |
using | size_type = decltype(std::declval< typename GV::IndexSet >().size(0)) |
Number type used for the overall size (the return value of the 'size' method) More... | |
Public Member Functions | |
LevelMultipleCodimMultipleGeomTypeMapper (const G &grid, int level, const MCMGLayout &layout) | |
constructor More... | |
void | update () |
Recalculates indices after grid adaptation. More... | |
Index | index (const EntityType &e) const |
Map entity to starting index in array for dof block. More... | |
Index | subIndex (const typename GV::template Codim< 0 >::Entity &e, int i, unsigned int codim) const |
Map subentity of codim 0 entity to starting index in array for dof block. More... | |
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... | |
size_type | size () const |
Return total number of entities in the entity set managed by the mapper. More... | |
size_type | size (GeometryType gt) const |
return number of entries for a given geometry type | |
const std::vector< GeometryType > & | types (int codim) const |
return the geometry types with entries | |
IntegralRange< Index > | indices (const EntityType &e) const |
Returns a pair with the starting point in the dof vector and the number of degrees of freedom if the entity is contained in the index set otherwise {0,0} is returned. More... | |
IntegralRange< Index > | indices (const typename GV::template Codim< 0 >::Entity &e, int i, int cc) const |
Returns a pair with the starting point in the dof vector and the number of degrees of freedom if the entity is contained in the index set otherwise {0,0} is returned. More... | |
bool | contains (const EntityType &e, Index &result) const |
Returns true if the entity is contained in the index set. More... | |
bool | contains (const typename GV::template Codim< 0 >::Entity &e, int i, int cc, 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, GV::IndexSet::IndexType &result) const |
Returns true if the subentity is contained in the index set and at the same time the array index is returned. More... | |
void | update (const G::LevelGridView &gridView) |
Recalculates indices after grid adaptation. More... | |
void | update (G::LevelGridView &&gridView) |
Recalculates indices after grid adaptation. More... | |
void | update (GridView &&gridView) |
Reinitialize mapper after grid has been modified. | |
Detailed Description
class Dune::LevelMultipleCodimMultipleGeomTypeMapper< G >
Multiple codim and multiple geometry type mapper for entities of one level.
This mapper uses all entities of a certain codimension on a given level as its entity set.
- Deprecated:
- Use MultipleCodimMultipleGeomTypeMapper instead
- Template Parameters
-
G A Dune grid type.
Member Typedef Documentation
◆ size_type
|
inherited |
Number type used for the overall size (the return value of the 'size' method)
The type used here is set to be the corresponding type used by the GridView's index set.
Constructor & Destructor Documentation
◆ LevelMultipleCodimMultipleGeomTypeMapper()
|
inline |
constructor
- Parameters
-
grid reference to the grid level valid level of the grid layout layout functional describing which geometry types to include in the map.
Member Function Documentation
◆ contains() [1/3]
|
inlineinherited |
Returns true if the entity is contained in the index set.
- 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/3]
|
inlineinherited |
Returns true if the subentity is contained in the index set and at the same time the array index is returned.
- Parameters
-
[in] e Reference to codim 0 entity [in] i subentity number [in] cc subentity codim [out] result Filled with array index if entity is contained
- Returns
- true if entity is in entity set of the mapper
◆ contains() [3/3]
|
inlineinherited |
Returns true if the entity is contained in the index set.
- Parameters
-
e Reference to codim 0 entity i subentity number cc subentity codim result integer reference where corresponding index is stored if true
- Returns
- true if entity is in entity set of the mapper
◆ index()
|
inlineinherited |
Map entity to starting index in array for dof block.
- Template Parameters
-
EntityType
- Parameters
-
e Reference to codim EntityType entity.
- Returns
- An index in the range 0 ... (Max number of entities in set)*blockSize - 1.
◆ indices() [1/2]
|
inlineinherited |
Returns a pair with the starting point in the dof vector and the number of degrees of freedom if the entity is contained in the index set otherwise {0,0} is returned.
- Parameters
-
e Reference to entity result integer reference to the start of the block
- Returns
- pair with first entry equal to index for that entity and the second entry the number of degrees of freedom (zero if entity is not in entity set of the mapper)
◆ indices() [2/2]
|
inlineinherited |
Returns a pair with the starting point in the dof vector and the number of degrees of freedom if the entity is contained in the index set otherwise {0,0} is returned.
- Parameters
-
e Reference to codim 0 entity i subentity number cc subentity codim result integer reference to the start of the block
- Returns
- pair with first entry equal to index for that entity and the second entry the number of degrees of freedom (zero if sub entity is not in entity set of the mapper)
◆ size()
|
inlineinherited |
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.
◆ subIndex() [1/2]
|
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.
◆ subIndex() [2/2]
|
inlineinherited |
Map subentity of codim 0 entity to starting index in array for dof block.
- Parameters
-
e Reference to codim 0 entity. i Number of subentity of e codim Codimension of the subentity
- Returns
- An index in the range 0 ... Max number of entities in set - 1.
◆ update() [1/3]
|
inline |
Recalculates indices after grid adaptation.
After grid adaptation you need to call this to update the stored gridview and recalculate the indices.
◆ update() [2/3]
|
inlineinherited |
Recalculates indices after grid adaptation.
After grid adaptation you need to call this to update the stored gridview and recalculate the indices.
◆ update() [3/3]
|
inlineinherited |
Recalculates indices after grid adaptation.
After grid adaptation you need to call this to update the stored gridview and recalculate the indices.
The documentation for this class was generated from the following file:
- dune/grid/common/mcmgmapper.hh