dune-grid  2.1.1
Classes | Public Types | Public Member Functions | Static Public Attributes | Friends
Dune::AlbertaGridHierarchicIndexSet< dim, dimworld > Class Template Reference

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

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

List of all members.

Classes

struct  CoarsenNumbering
struct  CreateEntityNumbers
class  InitEntityNumber
struct  RefineNumbering

Public Types

typedef AlbertaGrid< dim,
dimworld > 
Grid
typedef AlbertaGridFamily< dim,
dimworld > 
GridFamily
typedef Base::IndexType IndexType
 The type used for the indices.
typedef Alberta::ElementInfo
< dimension
ElementInfo
typedef
Alberta::HierarchyDofNumbering
< dimension
DofNumbering
typedef Alberta::IndexStack IndexStack

Public Member Functions

template<class Entity >
bool contains (const Entity &) const
 return true if entity is contained in set
template<int cc>
IndexType index (const typename Traits::template Codim< cc >::Entity &entity) const
 return hierarchic index of given entity
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
IndexType size (const GeometryType &type) const
 return size of set for given GeometryType
IndexType size (int codim) const
 return size of set
const std::vector< GeometryType > & geomTypes (int codim) const
 return geometry types this set has indices for
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
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 typename remove_const< AlbertaGridFamily< dim, dimworld > >::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 index (const EntityType &e) const
 Map entity to index. Easier to use than the above because codimension template parameter need not be supplied explicitely. The result of calling this method with an entity that is not in the index set is undefined.
IndexType subIndex (const Entity &e, int i, unsigned int codim) const
 Map a subentity to an index.
Access to entity set
IndexType size (GeometryType type) const
 Return total number of entities of given geometry type in entity set $E$.
bool contains (const EntityType &e) const
 Return true if the given entity is contained in $E$.

Static Public Attributes

static const int dimension = GridFamily::dimension
 dimension of the grid (maximum allowed codimension)

Friends

class AlbertaGrid< dim, dimworld >

template<int dim, int dimworld>
class Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >


Member Typedef Documentation

template<int dim, int dimworld>
typedef Alberta::HierarchyDofNumbering< dimension > Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::DofNumbering
template<int dim, int dimworld>
typedef Alberta::ElementInfo< dimension > Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::ElementInfo
template<int dim, int dimworld>
typedef AlbertaGrid< dim, dimworld > Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::Grid
template<int dim, int dimworld>
typedef AlbertaGridFamily< dim, dimworld > Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::GridFamily
template<int dim, int dimworld>
typedef Alberta::IndexStack Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::IndexStack
template<int dim, int dimworld>
typedef Base::IndexType Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::IndexType

Member Function Documentation

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

bool Dune::IndexSet< AlbertaGridFamily< dim, dimworld > , AlbertaGridHierarchicIndexSet< dim, dimworld > , int >::contains ( const EntityType &  e) const [inline, inherited]

Return true if the given entity is contained in $E$.

Note:
If the input element e is not an element of the grid, then the result of contains() is undefined.
template<int dim, int dimworld>
void Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::create ( )
template<int dim, int dimworld>
const std::vector< GeometryType >& Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::geomTypes ( int  codim) const [inline]
template<int dim, int dimworld>
template<int cc>
IndexType Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::index ( const typename Traits::template Codim< cc >::Entity entity) const [inline]
IndexType Dune::IndexSet< AlbertaGridFamily< dim, dimworld > , AlbertaGridHierarchicIndexSet< dim, dimworld > , int >::index ( const typename remove_const< AlbertaGridFamily< dim, dimworld > >::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.

Parameters:
eReference to codim cc entity, where cc is the template parameter of the function.
Returns:
An index in the range 0 ... Max number of entities in set - 1.
IndexType Dune::IndexSet< AlbertaGridFamily< dim, dimworld > , AlbertaGridHierarchicIndexSet< dim, dimworld > , int >::index ( const EntityType &  e) const [inline, inherited]

Map entity to index. Easier to use than the above because codimension template parameter need not be supplied explicitely. 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.
template<int dim, int dimworld>
void Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::postAdapt ( ) [inline]
template<int dim, int dimworld>
void Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::preAdapt ( ) [inline]
template<int dim, int dimworld>
void Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::read ( const std::string &  filename)
template<int dim, int dimworld>
void Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::release ( ) [inline]
template<int dim, int dimworld>
IndexType Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::size ( const GeometryType &  type) const [inline]
template<int dim, int dimworld>
IndexType Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::size ( int  codim) const [inline]
IndexType Dune::IndexSet< AlbertaGridFamily< dim, dimworld > , AlbertaGridHierarchicIndexSet< dim, dimworld > , int >::size ( GeometryType  type) const [inline, inherited]

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

Parameters:
[in]typeA valid geometry type.
Returns:
number of entities.
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]
template<int dim, int dimworld>
IndexType Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::subIndex ( const ElementInfo elementInfo,
int  i,
unsigned int  codim 
) const [inline]
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

References Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::size(), and Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::subIndex().

IndexType Dune::IndexSet< AlbertaGridFamily< dim, dimworld > , AlbertaGridHierarchicIndexSet< dim, dimworld > , 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.

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
Returns:
An index in the range 0 ... Max number of entities in set - 1.
template<int dim, int dimworld>
bool Dune::AlbertaGridHierarchicIndexSet< dim, dimworld >::write ( const std::string &  filename) const

Friends And Related Function Documentation

template<int dim, int dimworld>
friend class AlbertaGrid< dim, dimworld > [friend]

Member Data Documentation

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: