dune-grid 2.9.0
Classes | Public Types | Public Member Functions | Static Public Attributes | List of all members
Dune::AlbertaGridHierarchicIndexSet< dim, dimworld > Class Template Reference

#include <dune/grid/albertagrid/indexsets.hh>

Inheritance diagram for Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >:
Inheritance graph

Classes

class  InitEntityNumber
 

Public Types

typedef AlbertaGrid< dim, dimworld > Grid
 
typedef AlbertaGridFamily< dim, dimworld > GridFamily
 
typedef Base::IndexType IndexType
 
typedef Base::Types Types
 
typedef Alberta::ElementInfo< dimensionElementInfo
 
typedef Alberta::HierarchyDofNumbering< dimensionDofNumbering
 
typedef Alberta::IndexStack IndexStack
 

Public Member Functions

template<class Entity >
bool contains (const Entity &) const
 return true if entity is contained in set More...
 
template<int cc>
IndexType index (const typename Traits::template Codim< cc >::Entity &entity) const
 return hierarchic index of given entity More...
 
template<int cc>
IndexType subIndex (const typename Traits::template Codim< cc >::Entity &entity, int i, unsigned int codim) const
 return subIndex of given enitiy's sub entity More...
 
std::size_t size (const GeometryType &type) const
 return size of set for given GeometryType More...
 
std::size_t size (int codim) const
 return size of set More...
 
Types types (int codim) const
 
const std::vector< GeometryType > & geomTypes (int codim) const
 return geometry types this set has indices for More...
 
IndexType subIndex (const ElementInfo &elementInfo, int i, unsigned int codim) const
 
IndexType subIndex (const Alberta::Element *element, int i, unsigned int codim) const
 obtain hierarchic subindex More...
 
void preAdapt ()
 
void postAdapt ()
 
void create ()
 
void read (const std::string &filename)
 
bool write (const std::string &filename) const
 
void release ()
 
Index access from entity
IndexType index (const Entity &e) const
 Map entity to index. Easier to use than the above because codimension template parameter need not be supplied explicitly. The result of calling this method with an entity that is not in the index set is undefined. More...
 
IndexType subIndex (const Entity &e, int i, unsigned int codim) const
 Map a subentity to an index. More...
 
Access to entity set
auto size (GeometryType type) const
 Return total number of entities of given geometry type in entity set $E$. More...
 

Static Public Attributes

static const int dimension = GridFamily::dimension
 

Member Typedef Documentation

◆ DofNumbering

template<int dim, int dimworld>
typedef Alberta::HierarchyDofNumbering< dimension > Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::DofNumbering

◆ ElementInfo

template<int dim, int dimworld>
typedef Alberta::ElementInfo< dimension > Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::ElementInfo

◆ Grid

template<int dim, int dimworld>
typedef AlbertaGrid< dim, dimworld > Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::Grid

◆ GridFamily

template<int dim, int dimworld>
typedef AlbertaGridFamily< dim, dimworld > Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::GridFamily

◆ IndexStack

template<int dim, int dimworld>
typedef Alberta::IndexStack Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::IndexStack

◆ IndexType

template<int dim, int dimworld>
typedef Base::IndexType Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::IndexType

◆ Types

template<int dim, int dimworld>
typedef Base::Types Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::Types

Member Function Documentation

◆ contains()

template<int dim, int dimworld>
template<class Entity >
bool Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::contains ( const Entity ) const
inline

return true if entity is contained in set

◆ create()

template<int dim, int dimworld>
void Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::create

◆ geomTypes()

template<int dim, int dimworld>
const std::vector< GeometryType > & Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::geomTypes ( int  codim) const
inline

return geometry types this set has indices for

◆ index() [1/2]

IndexType Dune::IndexSet< AlbertaGridFamily< dim, dimworld > , AlbertaGridHierarchicIndexSet< dim, dimworld > , int , std::array< GeometryType, 1 > >::index ( const Entity e) const
inlineinherited

Map entity to index. Easier to use than the above because codimension template parameter need not be supplied explicitly. The result of calling this method with an entity that is not in the index set is undefined.

Parameters
eReference to codim cc entity. Since entity knows its codimension, automatic extraction is possible.
Returns
An index in the range 0 ... Max number of entities in set - 1.

◆ index() [2/2]

template<int dim, int dimworld>
template<int cc>
IndexType Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::index ( const typename Traits::template Codim< cc >::Entity &  entity) const
inline

return hierarchic index of given entity

◆ postAdapt()

template<int dim, int dimworld>
void Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::postAdapt ( )
inline

◆ preAdapt()

template<int dim, int dimworld>
void Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::preAdapt ( )
inline

◆ read()

template<int dim, int dimworld>
void Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::read ( const std::string &  filename)

◆ release()

template<int dim, int dimworld>
void Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::release ( )
inline

◆ size() [1/3]

template<int dim, int dimworld>
std::size_t Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::size ( const GeometryType &  type) const
inline

return size of set for given GeometryType

◆ size() [2/3]

auto Dune::IndexSet< AlbertaGridFamily< dim, dimworld > , AlbertaGridHierarchicIndexSet< dim, dimworld > , int , std::array< GeometryType, 1 > >::size ( GeometryType  type) const
inlineinherited

Return total number of entities of given geometry type in entity set $E$.

Parameters
[in]typeA valid geometry type.
Returns
number of entities (type is auto determined by the implementation. std::size_t is the expected return type).

◆ size() [3/3]

template<int dim, int dimworld>
std::size_t Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::size ( int  codim) const
inline

return size of set

◆ subIndex() [1/4]

template<int dim, int dimworld>
IndexType Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::subIndex ( const Alberta::Element element,
int  i,
unsigned int  codim 
) const
inline

obtain hierarchic subindex

Parameters
[in]elementpointer to ALBERTA element
[in]inumber of the subelement (in ALBERTA numbering)
[in]codimcodimension

◆ subIndex() [2/4]

template<int dim, int dimworld>
IndexType Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::subIndex ( const ElementInfo elementInfo,
int  i,
unsigned int  codim 
) const
inline

◆ subIndex() [3/4]

IndexType Dune::IndexSet< AlbertaGridFamily< dim, dimworld > , AlbertaGridHierarchicIndexSet< dim, dimworld > , int , std::array< GeometryType, 1 > >::subIndex ( const Entity e,
int  i,
unsigned int  codim 
) const
inlineinherited

Map a subentity to an index.

The result of calling this method with an entity that is not in the index set is undefined.

Note
This method exists for convenience only. It extracts the codimension from the type of the entity, which can be guessed by the compiler.
Template Parameters
Entitytype of entity (must be GridImp::Codim< cc >::Entity for some cc)
Parameters
[in]ereference to entity
[in]inumber subentity of e within the codimension
[in]codimcodimension of the subentity we're interested in
Note
The parameter codim denotes the codimension with respect to the grid, i.e., it must satisfy cc <= codim <= dimension.
Returns
An index in the range 0 ... Max number of entities in set - 1.

◆ subIndex() [4/4]

template<int dim, int dimworld>
template<int cc>
IndexType Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::subIndex ( const typename Traits::template Codim< cc >::Entity &  entity,
int  i,
unsigned int  codim 
) const
inline

return subIndex of given enitiy's sub entity

◆ types()

template<int dim, int dimworld>
Types Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::types ( int  codim) const
inline

◆ write()

template<int dim, int dimworld>
bool Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::write ( const std::string &  filename) const

Member Data Documentation

◆ dimension

template<int dim, int dimworld>
const int Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::dimension = GridFamily::dimension
static

The documentation for this class was generated from the following files: