dune-grid
2.2.0
|
DefaultIndexSet creates an index set by using the grids persistent container an a given pair of iterators. More...
#include <dune/grid/alugrid/common/defaultindexsets.hh>
Classes | |
struct | Index |
struct | InsertEntity |
struct | InsertEntity< EntityType, 0 > |
Public Types | |
enum | { ncodim = GridType::dimension + 1 } |
typedef unsigned int | IndexType |
type of index | |
typedef IteratorImp | IteratorType |
type of iterator to generate index set | |
typedef PersistentContainer < GridType, Index > | PersistentContainerType |
typedef std::vector < PersistentContainerType * > | PersistentContainerVectorType |
Public Member Functions | |
DefaultIndexSet (const GridType &grid, const IteratorType &begin, const IteratorType &end, const int level=-1) | |
~DefaultIndexSet () | |
desctructor deleting persistent containers | |
const PersistentContainerType & | indexContainer (const size_t codim) const |
PersistentContainerType & | indexContainer (const size_t codim) |
template<class EntityType > | |
IndexType | index (const EntityType &en) const |
return LevelIndex of given entity | |
template<int cd> | |
IndexType | index (const typename GridImp::template Codim< cd >::Entity &en) const |
return LevelIndex of given entity | |
template<int cc> | |
IndexType | subIndex (const typename remove_const< GridImp >::type::Traits::template Codim< cc >::Entity &e, int i, unsigned int codim) const |
template<class EntityType > | |
bool | contains (const EntityType &en) const |
returns true if this set provides an index for given entity | |
IndexType | size (int codim) const |
return size of IndexSet for a given level and codim | |
IndexType | size (GeometryType type) const |
void | calcNewIndex (const IteratorType &begin, const IteratorType &end) |
const std::vector< GeometryType > & | geomTypes (int codim) const |
deliver all geometry types used in this grid | |
bool | containsIndex (const int cd, const int idx) const |
returns true if this set provides an index for given entity | |
Index access from entity | |
IndexType | index (const typename remove_const< GridImp >::type::Traits::template Codim< cc >::Entity &e) const |
Map entity to index. The result of calling this method with an entity that is not in the index set is undefined. | |
IndexType | subIndex (const typename Traits::template Codim< cc >::Entity &e, int i, unsigned int codim) const |
Map a subentity to an index. | |
IndexType | subIndex (const Entity &e, int i, unsigned int codim) const |
Map a subentity to an index. | |
Static Public Attributes | |
static const int | dimension |
dimension of the grid (maximum allowed codimension) |
DefaultIndexSet creates an index set by using the grids persistent container an a given pair of iterators.
typedef unsigned int Dune::DefaultIndexSet< GridImp, IteratorImp >::IndexType |
type of index
Reimplemented from Dune::IndexSet< GridImp, DefaultIndexSet< GridImp, IteratorImp >, unsigned int >.
typedef IteratorImp Dune::DefaultIndexSet< GridImp, IteratorImp >::IteratorType |
type of iterator to generate index set
typedef PersistentContainer< GridType, Index > Dune::DefaultIndexSet< GridImp, IteratorImp >::PersistentContainerType |
typedef std::vector< PersistentContainerType* > Dune::DefaultIndexSet< GridImp, IteratorImp >::PersistentContainerVectorType |
Dune::DefaultIndexSet< GridImp, IteratorImp >::DefaultIndexSet | ( | const GridType & | grid, |
const IteratorType & | begin, | ||
const IteratorType & | end, | ||
const int | level = -1 |
||
) | [inline] |
create index set by using the given begin and end iterator for the given level (level == -1 means leaf level)
References Dune::DefaultIndexSet< GridImp, IteratorImp >::calcNewIndex(), and Dune::DefaultIndexSet< GridImp, IteratorImp >::ncodim.
Dune::DefaultIndexSet< GridImp, IteratorImp >::~DefaultIndexSet | ( | ) | [inline] |
desctructor deleting persistent containers
References Dune::DefaultIndexSet< GridImp, IteratorImp >::ncodim.
void Dune::DefaultIndexSet< GridImp, IteratorImp >::calcNewIndex | ( | const IteratorType & | begin, |
const IteratorType & | end | ||
) | [inline] |
do calculation of the index set, has to be called when grid was changed or if index set is created
References Dune::PersistentContainerMap< Grid, Id, Map >::clear(), Dune::DefaultIndexSet< GridImp, IteratorImp >::indexContainer(), and Dune::DefaultIndexSet< GridImp, IteratorImp >::ncodim.
Referenced by Dune::DefaultIndexSet< GridImp, IteratorImp >::DefaultIndexSet().
bool Dune::DefaultIndexSet< GridImp, IteratorImp >::contains | ( | const EntityType & | en | ) | const [inline] |
returns true if this set provides an index for given entity
Reimplemented from Dune::IndexSet< GridImp, DefaultIndexSet< GridImp, IteratorImp >, unsigned int >.
References Dune::DefaultIndexSet< GridImp, IteratorImp >::index(), and Dune::DefaultIndexSet< GridImp, IteratorImp >::indexContainer().
Referenced by Dune::DefaultIndexSet< GridImp, IteratorImp >::containsIndex().
bool Dune::DefaultIndexSet< GridImp, IteratorImp >::containsIndex | ( | const int | cd, |
const int | idx | ||
) | const [inline] |
returns true if this set provides an index for given entity
References Dune::DefaultIndexSet< GridImp, IteratorImp >::contains(), and Dune::DefaultIndexSet< GridImp, IteratorImp >::indexContainer().
const std::vector<GeometryType>& Dune::DefaultIndexSet< GridImp, IteratorImp >::geomTypes | ( | int | codim | ) | const [inline] |
deliver all geometry types used in this grid
Reimplemented from Dune::IndexSet< GridImp, DefaultIndexSet< GridImp, IteratorImp >, unsigned int >.
IndexType Dune::IndexSet< GridImp, DefaultIndexSet< GridImp, IteratorImp > , unsigned int >::index | ( | const typename remove_const< GridImp >::type::Traits::template Codim< cc >::Entity & | e | ) | const [inline, inherited] |
Map entity to index. The result of calling this method with an entity that is not in the index set is undefined.
e | Reference to codim cc entity, where cc is the template parameter of the function. |
IndexType Dune::DefaultIndexSet< GridImp, IteratorImp >::index | ( | const EntityType & | en | ) | const [inline] |
return LevelIndex of given entity
Reimplemented from Dune::IndexSet< GridImp, DefaultIndexSet< GridImp, IteratorImp >, unsigned int >.
References Dune::DefaultIndexSet< GridImp, IteratorImp >::indexContainer().
Referenced by Dune::DefaultIndexSet< GridImp, IteratorImp >::contains(), Dune::DefaultIndexSet< GridImp, IteratorImp >::index(), and Dune::DefaultIndexSet< GridImp, IteratorImp >::subIndex().
IndexType Dune::DefaultIndexSet< GridImp, IteratorImp >::index | ( | const typename GridImp::template Codim< cd >::Entity & | en | ) | const [inline] |
return LevelIndex of given entity
References Dune::DefaultIndexSet< GridImp, IteratorImp >::index(), and Dune::DefaultIndexSet< GridImp, IteratorImp >::indexContainer().
const PersistentContainerType& Dune::DefaultIndexSet< GridImp, IteratorImp >::indexContainer | ( | const size_t | codim | ) | const [inline] |
Referenced by Dune::DefaultIndexSet< GridImp, IteratorImp >::calcNewIndex(), Dune::DefaultIndexSet< GridImp, IteratorImp >::contains(), Dune::DefaultIndexSet< GridImp, IteratorImp >::containsIndex(), Dune::DefaultIndexSet< GridImp, IteratorImp >::index(), and Dune::DefaultIndexSet< GridImp, IteratorImp >::subIndex().
PersistentContainerType& Dune::DefaultIndexSet< GridImp, IteratorImp >::indexContainer | ( | const size_t | codim | ) | [inline] |
IndexType Dune::DefaultIndexSet< GridImp, IteratorImp >::size | ( | int | codim | ) | const [inline] |
return size of IndexSet for a given level and codim
Reimplemented from Dune::IndexSet< GridImp, DefaultIndexSet< GridImp, IteratorImp >, unsigned int >.
IndexType Dune::DefaultIndexSet< GridImp, IteratorImp >::size | ( | GeometryType | type | ) | const [inline] |
return size of IndexSet for a given level and codim this method is to be revised
Reimplemented from Dune::IndexSet< GridImp, DefaultIndexSet< GridImp, IteratorImp >, unsigned int >.
IndexType Dune::IndexSet< GridImp, DefaultIndexSet< GridImp, IteratorImp > , unsigned int >::subIndex | ( | const typename Traits::template Codim< cc >::Entity & | e, |
int | i, | ||
unsigned int | codim | ||
) | const [inline, inherited] |
Map a subentity to an index.
The result of calling this method with an entity that is not in the index set is undefined.
cc | codimension of the entity |
[in] | e | reference to codimsion cc entity |
[in] | i | number subentity of e within the codimension |
[in] | codim | codimension of the subentity we're interested in (must satisfy cc <= codim <= dimension) |
IndexType Dune::IndexSet< GridImp, DefaultIndexSet< GridImp, IteratorImp > , unsigned int >::subIndex | ( | const Entity & | e, |
int | i, | ||
unsigned int | codim | ||
) | const [inline, inherited] |
Map a subentity to an index.
The result of calling this method with an entity that is not in the index set is undefined.
Entity | type of entity (must be GridImp::Codim< cc >::Entity for some cc) |
[in] | e | reference to entity |
[in] | i | number subentity of e within the codimension |
[in] | codim | codimension of the subentity we're interested in |
IndexType Dune::DefaultIndexSet< GridImp, IteratorImp >::subIndex | ( | const typename remove_const< GridImp >::type::Traits::template Codim< cc >::Entity & | e, |
int | i, | ||
unsigned int | codim | ||
) | const [inline] |
return subIndex (LevelIndex) for a given Entity of codim = 0 and a given SubEntity codim and number of SubEntity
References Dune::DefaultIndexSet< GridImp, IteratorImp >::index(), and Dune::DefaultIndexSet< GridImp, IteratorImp >::indexContainer().
const int Dune::IndexSet< GridImp, DefaultIndexSet< GridImp, IteratorImp > , unsigned int >::dimension [static, inherited] |
dimension of the grid (maximum allowed codimension)