![]() |
Dune-Functions 2.11
|
An IndexSet for a sub-domain. More...
#include <dune/functions/common/subdomain.hh>

Classes | |
| struct | Codim |
| Codim specific typedefs. More... | |
Public Types | |
| enum | { dimension = Grid::dimension } |
| using | Grid = typename HostGridView::Grid |
| using | Types = std::vector<Dune::GeometryType> |
| using | IndexType = std::size_t |
Public Member Functions | |
| SubDomainIndexSet (const HostGridView &hostGridView) | |
| Construct SubDomainIndexSet for underlying host grid view. | |
| IndexType | size (Dune::GeometryType gt) const |
| IndexType | size (int codim) const |
| template<class Entity> | |
| IndexType | index (const Entity &entity) const |
| template<int cc> | |
| IndexType | index (const typename Codim< cc >::Entity &entity) const |
| template<class Entity> | |
| IndexType | subIndex (const Entity &entity, int subEntity, unsigned int codim) const |
| template<int cc> | |
| IndexType | subIndex (const typename Codim< cc >::Entity &entity, int subEntity, unsigned int codim) const |
| template<class Entity> | |
| bool | contains (const Entity &entity) const |
| Types | types (int codim) const |
| const HostGridView & | hostGridView () const |
| Access underlying host grid view. | |
| void | insertElement (const typename Codim< 0 >::Entity &element) |
| Insert element and all its sub-entities into SubDomainIndexSet. | |
Protected Member Functions | |
| void | clear () |
Protected Attributes | |
| HostGridView | hostGridView_ |
| std::array< std::size_t, typeIndexSize > | sizePerGT_ |
| std::array< std::size_t, dimension+1 > | sizePerCodim_ |
| std::array< Types, dimension+1 > | typesPerCodim_ |
| AllEntityMapper | allEntityMapper_ |
| std::vector< IndexType > | indices_ |
An IndexSet for a sub-domain.
A SubDomainIndexSet provides indices for a subset of the entities of a grid view. Once created, new entities can be inserted using subDomainIndexSet.insertElement(element) which will insert the grid element of codim 0 and all its sub entities. This will increment the internally stored size information accordingly. Querying the index of an entity or sub-entity that has not been inserted before will lead to an exception.
Internally this uses a std::vector<std::size_t> which stores the sub-domain index for each entity in the underlying grid view using a magic value for entities not contained in the sub-domain.
| HGV | The underlying host grid view type. |
| using Dune::Functions::Experimental::SubDomainIndexSet< HGV >::Grid = typename HostGridView::Grid |
| using Dune::Functions::Experimental::SubDomainIndexSet< HGV >::IndexType = std::size_t |
| using Dune::Functions::Experimental::SubDomainIndexSet< HGV >::Types = std::vector<Dune::GeometryType> |
|
inline |
Construct SubDomainIndexSet for underlying host grid view.
|
inlineprotected |
|
inline |
|
inline |
Access underlying host grid view.
|
inline |
|
inline |
|
inline |
Insert element and all its sub-entities into SubDomainIndexSet.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |