#include <entity.hh>
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 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!
Public Types | |
enum | |
know your own codimension | |
enum | |
know your own dimension | |
enum | |
Know dimension of the entity. | |
enum | |
know your own dimension of world | |
typedef ct | ctype |
define type used for coordinates in grid module | |
Public Member Functions | |
~AlbertaGridEntity () | |
AlbertaGridEntity (const GridImp &grid) | |
Constructor, real information is set via setElInfo method. | |
int | level () const |
level of this element | |
int | boundaryId () const |
index of the boundary which is associated with the entity, 0 for inner entities | |
const Geometry & | geometry () const |
geometry of this entity | |
GeometryType | type () const |
type of geometry of this entity | |
template<int cc> | |
int | count () const |
< Default codim 1 Faces and codim == dim Vertices | |
template<int cc> | |
Codim< cc >::EntityPointer | entity (int i) const |
AlbertaGridLeafIntersectionIteratorType | ileafbegin () const |
AlbertaGridIntersectionIteratorType | ileafend () const |
Reference to one past the last intersection with neighbor. | |
bool | isLeaf () const |
returns true if entity is leaf entity, i.e. has no children | |
EntityPointer | father () const |
const LocalGeometry & | geometryInFather () const |
Location of this element relative to the father's reference element. | |
HierarchicIterator | hbegin (int maxlevel) const |
HierarchicIterator | hend (int maxlevel) const |
Returns iterator to one past the last son. | |
bool | wasRefined () const |
Returns true, if entity was refined during last adaptation cycle. | |
bool | mightBeCoarsened () const |
Returns true, if entity might be coarsened during next adaption cycle. | |
bool | isNew () const |
Returns true, if entity was refined during last adaptation cycle. | |
bool | mightVanish () const |
Returns true, if entity might be coarsened during next adaption cycle. | |
bool | hasBoundaryIntersections () const |
Returns true, if entity has intersections with boundary. | |
PartitionType | partitionType () const |
return partition type of this entity ( see grid.hh ) | |
bool | equals (const AlbertaGridEntity< 0, dim, GridImp > &i) const |
equality of entities | |
const GridImp & | grid () const |
obtain a reference to the grid | |
int | subEntity () const |
obtain number of the subentity within the element (in ALBERTA numbering) |
Dune::AlbertaGridEntity< 0, dim, GridImp >::~AlbertaGridEntity | ( | ) | [inline] |
Destructor, needed perhaps needed for deleteing faceEntity_ and edgeEntity_ , see below there are only implementations for dim==dimworld 2,3
int Dune::AlbertaGridEntity< 0, dim, GridImp >::count | ( | ) | const [inline] |
< Default codim 1 Faces and codim == dim Vertices
Intra-element access to entities of codimension cc > codim. Return number of entities with codimension cc.
AlbertaGridEntity< 0, dim, GridImp >::template Codim< codim >::EntityPointer Dune::AlbertaGridEntity< 0, dim, GridImp >::entity | ( | int | i | ) | const [inline] |
Provide access to mesh entity i of given codimension. Entities are numbered 0 ... count<cc>()-1
AlbertaGridEntity< 0, dim, GridImp >::AlbertaGridLeafIntersectionIteratorType Dune::AlbertaGridEntity< 0, dim, GridImp >::ileafbegin | ( | ) | const [inline] |
Provide access to mesh entity i of given codimension. Entities are numbered 0 ... count<cc>()-1
Intra-level access to intersection 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.
References Dune::AlbertaGridEntity< codim, dim, GridImp >::getElInfo(), and Dune::AlbertaGridEntity< codim, dim, GridImp >::level().
AlbertaGridEntity< 0, dim, GridImp >::EntityPointer Dune::AlbertaGridEntity< 0, dim, GridImp >::father | ( | ) | const [inline] |
Inter-level access to father element on coarser grid. Assumes that meshes are nested.
const AlbertaGridEntity< 0, dim, GridImp >::LocalGeometry & Dune::AlbertaGridEntity< 0, dim, GridImp >::geometryInFather | ( | ) | const [inline] |
Location of this element relative to the father's reference element.
This information 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.
AlbertaGridEntity< 0, dim, GridImp >::HierarchicIterator Dune::AlbertaGridEntity< 0, dim, GridImp >::hbegin | ( | int | maxlevel | ) | const [inline] |
Inter-level access to son elements on higher levels<=maxlevel. This is provided for sparsely stored nested unstructured meshes. Returns iterator to first son.
bool Dune::AlbertaGridEntity< 0, dim, GridImp >::wasRefined | ( | ) | const [inline] |
bool Dune::AlbertaGridEntity< 0, dim, GridImp >::mightBeCoarsened | ( | ) | const [inline] |