DUNE PDELab (git)
Implementation class for a single codim and single geometry type mapper. More...
#include <dune/grid/common/scsgmapper.hh>
Public Types | |
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 | |
SingleCodimSingleGeomTypeMapper (const GV &gridView) | |
Construct mapper from grid and one of its index sets. More... | |
template<class EntityType > | |
Index | index (const EntityType &e) const |
Map entity to array index. More... | |
Index | subIndex (const typename GV::template Codim< 0 >::Entity &e, int i, unsigned int codim) const |
Map subentity of 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... | |
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 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... | |
void | update (const GV &gridView) |
Recalculates indices after grid adaptation. More... | |
void | update (GV &&gridView) |
Recalculates indices after grid adaptation. 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... | |
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 (GridView &&gridView) |
Reinitialize mapper after grid has been modified. | |
Detailed Description
class Dune::SingleCodimSingleGeomTypeMapper< GV, c >
Implementation class for a single codim and single geometry type mapper.
In this implementation of a mapper the entity set used as domain for the map consists of the entities of a given codimension c for all entities in the given index set. The index set may only contain entities of a single geometry type, otherwise an exception is thrown.
- Template Parameters
-
GV A Dune grid view type c A valid codimension
Member Typedef Documentation
◆ size_type
using Dune::SingleCodimSingleGeomTypeMapper< GV, c >::size_type = decltype(std::declval<typename GV::IndexSet>().size(0)) |
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
◆ SingleCodimSingleGeomTypeMapper()
|
inline |
Construct mapper from grid and one of its index sets.
References DUNE_THROW.
Member Function Documentation
◆ contains() [1/3]
|
inline |
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
References Dune::SingleCodimSingleGeomTypeMapper< GV, c >::index().
◆ 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]
|
inline |
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
References Dune::SingleCodimSingleGeomTypeMapper< GV, c >::subIndex().
◆ index()
|
inline |
Map entity to array index.
\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.
Referenced by Dune::PDELab::IterativeBlockJacobiPreconditionerLocalOperator< BlockDiagonalLocalOperator, PointDiagonalLocalOperator, GridFunctionSpace, DomainField, IterativeSolver >::alpha_volume(), Dune::SingleCodimSingleGeomTypeMapper< GV, c >::contains(), and Dune::PDELab::IterativeBlockJacobiPreconditionerLocalOperator< BlockDiagonalLocalOperator, PointDiagonalLocalOperator, GridFunctionSpace, DomainField, IterativeSolver >::jacobian_apply_volume().
◆ 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.
◆ 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]
|
inline |
Map subentity of codim 0 entity to array index.
- Parameters
-
e Reference to codim 0 entity. i Number of the subentity of e, where cc is the template parameter of the function. codim Codimension of the subentity of e
- Returns
- An index in the range 0 ... Max number of entities in set - 1.
References DUNE_THROW.
Referenced by Dune::SingleCodimSingleGeomTypeMapper< GV, c >::contains().
◆ update() [1/2]
|
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/2]
|
inline |
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/scsgmapper.hh