dune-alugrid
2.6-git
|
#include <dune/alugrid/3d/entity.hh>
Classes | |
struct | Codim |
Public Types | |
typedef GridImp::template Codim< 0 >::Geometry | Geometry |
typedef GridImp::template Codim< 0 >::LocalGeometry | LocalGeometry |
typedef ALU3dGridIntersectionIterator< GridImp > | IntersectionIteratorImp |
typedef LeafIntersectionIteratorWrapper< GridImp > | ALU3dGridIntersectionIteratorType |
typedef LeafIntersectionIteratorWrapper< GridImp > | ALU3dGridLeafIntersectionIteratorType |
typedef LevelIntersectionIteratorWrapper< GridImp > | ALU3dGridLevelIntersectionIteratorType |
typedef GridImp::template Codim< 0 >::Entity | Entity |
typedef GridImp::template Codim< 0 >::EntityPointer | EntityPointer |
typedef GridImp::template Codim< 0 >::EntitySeed | EntitySeed |
typedef of my type More... | |
Public Member Functions | |
ALU3dGridEntity () | |
Constructor creating empty Entity. More... | |
ALU3dGridEntity (const EntitySeed &seed) | |
Constructor taking an EntitySeed. More... | |
ALU3dGridEntity (const HElementType &element) | |
Constructor taking an interior Element. More... | |
ALU3dGridEntity (const HBndSegType &ghost) | |
Constructor taking a ghost element. More... | |
int | level () const |
level of this element More... | |
Geometry | geometry () const |
geometry of this entity More... | |
GeometryType | type () const |
type of geometry of this entity More... | |
PartitionType | partitionType () const |
return partition type of this entity ( see grid.hh ) More... | |
template<int cc> | |
int | count () const |
unsigned int | subEntities (unsigned int codim) const |
template<int codim> | |
Codim< codim >::Entity | subEntity (int i) const |
template<int codim> | |
Codim< codim >::Twist | twist (int i) const |
bool | isLeaf () const |
returns true if Entity is leaf (i.e. has no children) More... | |
Entity | father () const |
bool | hasFather () const |
returns true if father entity exists More... | |
LocalGeometry | geometryInFather () const |
ALU3dGridHierarchicIterator< GridImp > | hbegin (int maxlevel) const |
ALU3dGridHierarchicIterator< GridImp > | hend (int maxlevel) const |
Returns iterator to one past the last son. More... | |
bool | isNew () const |
returns true, if entity was created during last adaptation cycle More... | |
bool | mightVanish () const |
returns true, if entity might be coarsened during next adaptation cycle More... | |
bool | hasBoundaryIntersections () const |
returns true, if entity has intersections with boundary More... | |
bool | mark (const int refCount, const bool conformingRefinement) const |
int | getMark () const |
return current adaptation mark for this entity More... | |
void | setElement (HElementType &element) |
void | setElement (const EntitySeed &seed) |
void | setGhost (HBndSegType &ghost) |
set original element pointer to fake entity More... | |
void | reset (int l) |
set actual walk level More... | |
void | removeElement () |
set item pointer to NULL More... | |
bool | equals (const ALU3dGridEntity< 0, dim, GridImp > &org) const |
compare 2 entities, which means compare the item pointers More... | |
void | setEntity (const ALU3dGridEntity< 0, dim, GridImp > &org) |
template<int cc> | |
int | getSubIndex (int i) const |
int | subIndex (int i, unsigned int codim) const |
const IMPLElementType & | getItem () const |
const BNDFaceType & | getGhost () const |
bool | isGhost () const |
returns true if entity is ghost More... | |
EntitySeed | seed () const |
return key for this entity More... | |
int | macroId () const |
return macro id of this entity More... | |
int | weight () const |
weight of entity (ie number of leaf elements underneath) More... | |
int | master () const |
return rank number of master process More... | |
template<int cc> | |
alu_inline int | getSubIndex (int i) const |
template<int cc> | |
ALU3dGridEntity< 0, dim, GridImp >::template Codim< cc >::Entity | subEntity (int i) const |
template<int codim> | |
ALU3dGridEntity< 0, dim, GridImp >::template Codim< codim >::Twist | twist (int i) const |
Protected Member Functions | |
int | getIndex () const |
index is unique within the grid hierachy and per codim More... | |
Protected Attributes | |
GeometryImpl | geo_ |
the entity's geometry More... | |
IMPLElementType * | item_ |
BNDFaceType * | ghost_ |
not zero if entity is ghost entity More... | |
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 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!
typedef LeafIntersectionIteratorWrapper<GridImp> Dune::ALU3dGridEntity< 0, dim, GridImp >::ALU3dGridIntersectionIteratorType |
typedef LeafIntersectionIteratorWrapper<GridImp> Dune::ALU3dGridEntity< 0, dim, GridImp >::ALU3dGridLeafIntersectionIteratorType |
typedef LevelIntersectionIteratorWrapper<GridImp> Dune::ALU3dGridEntity< 0, dim, GridImp >::ALU3dGridLevelIntersectionIteratorType |
typedef GridImp::template Codim<0>::Entity Dune::ALU3dGridEntity< 0, dim, GridImp >::Entity |
typedef GridImp::template Codim<0>::EntityPointer Dune::ALU3dGridEntity< 0, dim, GridImp >::EntityPointer |
typedef GridImp::template Codim<0>::EntitySeed Dune::ALU3dGridEntity< 0, dim, GridImp >::EntitySeed |
typedef of my type
typedef GridImp::template Codim< 0 >::Geometry Dune::ALU3dGridEntity< 0, dim, GridImp >::Geometry |
typedef ALU3dGridIntersectionIterator<GridImp> Dune::ALU3dGridEntity< 0, dim, GridImp >::IntersectionIteratorImp |
typedef GridImp::template Codim< 0 >::LocalGeometry Dune::ALU3dGridEntity< 0, dim, GridImp >::LocalGeometry |
alu_inline Dune::ALU3dGridEntity< 0, dim, GridImp >::ALU3dGridEntity |
Constructor creating empty Entity.
alu_inline Dune::ALU3dGridEntity< 0, dim, GridImp >::ALU3dGridEntity | ( | const EntitySeed & | seed | ) |
Constructor taking an EntitySeed.
alu_inline Dune::ALU3dGridEntity< 0, dim, GridImp >::ALU3dGridEntity | ( | const HElementType & | element | ) |
Constructor taking an interior Element.
alu_inline Dune::ALU3dGridEntity< 0, dim, GridImp >::ALU3dGridEntity | ( | const HBndSegType & | ghost | ) |
Constructor taking a ghost element.
|
inline |
Intra-element access to entities of codimension cc > codim. Return number of entities with codimension cc.
|
inline |
compare 2 entities, which means compare the item pointers
ALU3dGridEntity< 0, dim, GridImp >::Entity Dune::ALU3dGridEntity< 0, dim, GridImp >::father |
Inter-level access to father element on coarser grid. Assumes that meshes are nested.
alu_inline ALU3dGridEntity< 0, dim, GridImp >::Geometry Dune::ALU3dGridEntity< 0, dim, GridImp >::geometry |
geometry of this entity
alu_inline ALU3dGridEntity< 0, dim, GridImp >::LocalGeometry Dune::ALU3dGridEntity< 0, dim, GridImp >::geometryInFather |
Location of this element relative to the reference 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.
|
inline |
|
inlineprotected |
index is unique within the grid hierachy and per codim
|
inline |
alu_inline int Dune::ALU3dGridEntity< 0, dim, GridImp >::getMark |
return current adaptation mark for this entity
int Dune::ALU3dGridEntity< 0, dim, GridImp >::getSubIndex | ( | int | i | ) | const |
return index of sub entity with codim = cc and local number i i.e. return global number of vertex i for use in hierarchical index set
alu_inline int Dune::ALU3dGridEntity< 0, dim, GridImp >::getSubIndex | ( | int | i | ) | const |
bool Dune::ALU3dGridEntity< 0, dim, GridImp >::hasBoundaryIntersections |
returns true, if entity has intersections with boundary
|
inline |
returns true if father entity exists
|
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.
|
inline |
Returns iterator to one past the last son.
|
inline |
returns true if entity is ghost
|
inline |
returns true if Entity is leaf (i.e. has no children)
|
inline |
returns true, if entity was created during last adaptation cycle
|
inline |
level of this element
|
inline |
return macro id of this entity
bool Dune::ALU3dGridEntity< 0, dim, GridImp >::mark | ( | const int | refCount, |
const bool | conformingRefinement | ||
) | const |
marks an element for refCount refines. if refCount is negative the element is coarsend -refCount times mark returns true if element was marked, otherwise false
|
inline |
return rank number of master process
|
inline |
returns true, if entity might be coarsened during next adaptation cycle
|
inline |
return partition type of this entity ( see grid.hh )
|
inline |
set item pointer to NULL
|
inline |
set actual walk level
|
inline |
return key for this entity
|
inline |
|
inline |
private methods, but public because of datahandle and template arguments of these methods
|
inline |
|
inline |
set original element pointer to fake entity
|
inline |
Intra-element access to entities of codimension cc > codim. Return number of entities with codimension cc.
Codim< codim >::Entity Dune::ALU3dGridEntity< 0, dim, GridImp >::subEntity | ( | int | i | ) | const |
Provide access to mesh entity i of given codimension. Entities are numbered 0 ... count<cc>()-1
ALU3dGridEntity<0,dim,GridImp>::template Codim<cc>:: Entity Dune::ALU3dGridEntity< 0, dim, GridImp >::subEntity | ( | int | i | ) | const |
alu_inline int Dune::ALU3dGridEntity< 0, dim, GridImp >::subIndex | ( | int | i, |
unsigned int | codim | ||
) | const |
return index of sub entity with codim = cc and local number i i.e. return global number of vertex i for use in hierarchical index set
Codim< codim >::Twist Dune::ALU3dGridEntity< 0, dim, GridImp >::twist | ( | int | i | ) | const |
ALU3dGridEntity< 0, dim, GridImp >::template Codim< codim >::Twist Dune::ALU3dGridEntity< 0, dim, GridImp >::twist | ( | int | i | ) | const |
|
inline |
type of geometry of this entity
|
inline |
weight of entity (ie number of leaf elements underneath)
|
mutableprotected |
the entity's geometry
|
mutableprotected |
not zero if entity is ghost entity
|
mutableprotected |