Dune Core Modules (2.4.1)
#include <dune/grid/sgrid.hh>
Public Types | |
enum | |
know your own codimension | |
enum | |
Dimension of the grid. | |
enum | |
Know dimension of the entity. | |
typedef GridImp::template Codim< cd >::EntitySeed | EntitySeed |
The corresponding entity seed (for storage of entities) | |
Public Member Functions | |
template<int cc> | |
int | count () const |
unsigned int | subEntities (unsigned int codim) const |
Return number of subentities with codimension codim. | |
template<int cc> | |
Codim< cc >::Entity | subEntity (int i) const |
int | subCompressedIndex (int codim, int i) const |
subentity compressed index | |
int | subCompressedLeafIndex (int codim, int i) const |
PersistentIndexType | subPersistentIndex (int codim, int i) const |
subentity persistent index | |
IntersectionIterator | ibegin () const |
IntersectionIterator | iend () const |
Reference to one past the last intersection. | |
Entity | father () const |
Inter-level access to father element on coarser grid. More... | |
bool | hasFather () const |
returns true if father entity exists | |
bool | isLeaf () const |
return true if the entity is leaf | |
LocalGeometry | geometryInFather () const |
Location of this element relative to the reference element element of the father. More... | |
HierarchicIterator | hbegin (int maxLevel) const |
Inter-level access to son elements on higher levels<=maxLevel. More... | |
HierarchicIterator | hend (int maxLevel) const |
Returns iterator to one past the last son. | |
SEntity (GridImp *_grid, int _l, int _index) | |
constructor | |
void | make (GridImp *_grid, int _l, int _id) |
Reinitialization. | |
void | make (int _l, int _id) |
Reinitialization. | |
int | level () const |
level of this element | |
int | globalIndex () const |
global index is calculated from the index and grid size | |
SEntitySeed< codim, GridImp > | seed () const |
Return the entity seed which contains sufficient information to generate the entity again and uses as little memory as possible. | |
GeometryType | type () const |
return the element type identifier | |
Geometry | geometry () const |
geometry of this entity | |
void | makegeometry () const |
geometry of this entity | |
PersistentIndexType | persistentIndex () const |
globally unique, persistent index | |
int | compressedIndex () const |
consecutive, codim-wise, level-wise index | |
int | compressedLeafIndex () const |
consecutive, codim-wise, level-wise index | |
Protected Attributes | |
GeometryImpl | geo |
geometry, is only built on demand | |
bool | builtgeometry |
true if geometry has been constructed | |
Detailed Description
class Dune::SEntity< 0, dim, GridImp >
A Grid is a container of grid entities. An entity is parametrized by the codimension. An entity of codimension c in dimension d is a d-c dimensional object.
Entities of codimension 0 ("elements") are defined through template specialization. Note that this specialization has an extended interface compared to the general case
Entities of codimension 0 allow to visit all neighbors, where a neighbor is an entity of codimension 0 which has a common entity of codimension 1 with the entity. These neighbors are accessed via an iterator. This allows the implementation of non-matching meshes. The number of neigbors may be different from the number of faces/edges of an element! A Grid is a container of grid entities. An entity is parametrized by the codimension. An entity of codimension c in dimension d is a d-c dimensional object.
Entities of codimension=0 ("Cells") are defined through template specialization. Note that this specialization has an extended interface compared to the general case
Member Function Documentation
◆ count()
int Dune::SEntity< 0, dim, GridImp >::count | ( | ) | const |
Intra-element access to entities of codimension cc > codim. Return number of entities with codimension cc.
◆ father()
Entity Dune::SEntity< 0, dim, GridImp >::father | ( | ) | const |
Inter-level access to father element on coarser grid.
Assumes that meshes are nested.
◆ geometryInFather()
LocalGeometry Dune::SEntity< 0, dim, GridImp >::geometryInFather | ( | ) | const |
Location of this element relative to the reference element element of the father.
This is sufficient to interpolate all dofs in conforming case. Nonconforming may require access to neighbors of father and computations with local coordinates. On the fly case is somewhat inefficient since dofs are visited several times. If we store interpolation matrices, this is tolerable. We assume that on-the-fly implementation of numerical algorithms is only done for simple discretizations. Assumes that meshes are nested.
◆ hbegin()
HierarchicIterator Dune::SEntity< 0, dim, GridImp >::hbegin | ( | int | maxLevel | ) | const |
Inter-level access to son elements on higher levels<=maxLevel.
This is provided for sparsely stored nested unstructured meshes. Returns iterator to first son.
◆ ibegin()
IntersectionIterator Dune::SEntity< 0, dim, GridImp >::ibegin | ( | ) | const |
Intra-level access to intersections with neighboring elements. A neighbor is an entity of codimension 0 which has an entity of codimension 1 in commen with this entity. Access to neighbors is provided using iterators. This allows meshes to be nonmatching. Returns iterator referencing the first neighbor.
◆ subCompressedLeafIndex()
|
inline |
subentity leaf index
- Todo:
- add handling of not-leaf vertices
References Dune::SEntityBase< codim, dim, GridImp, SEntity >::compressedLeafIndex(), Dune::SEntityBase< codim, dim, GridImp, SEntity >::grid, and Dune::SEntityBase< codim, dim, GridImp, SEntity >::l.
◆ subEntity()
Codim< cc >::Entity Dune::SEntity< 0, dim, GridImp >::subEntity | ( | int | i | ) | const |
Provide access to mesh entity i of given codimension. Entities are numbered 0 ... count<cc>()-1
The documentation for this class was generated from the following file:
- dune/grid/sgrid.hh