dune-grid
2.2.0
|
#include <dune/grid/alugrid/2d/entity.hh>
Classes | |
struct | Codim |
Public Types | |
typedef GridImp::GridObjectFactoryType | FactoryType |
typedef GridImp::template Codim< 0 >::Geometry | Geometry |
type of our Geometry interface | |
typedef GridImp::template Codim< 0 >::LocalGeometry | LocalGeometry |
type of corresponding interface local geometry | |
typedef GridImp::template Codim< 0 >::EntitySeed | EntitySeed |
typedef of my type | |
typedef LeafIntersectionIteratorWrapper < GridImp > | ALU2dGridLeafIntersectionIteratorType |
tpye of intersection iterator | |
typedef LevelIntersectionIteratorWrapper < GridImp > | ALU2dGridLevelIntersectionIteratorType |
typedef ALU2dGridLeafIntersectionIteratorType | ALU2dGridIntersectionIteratorType |
typedef GridImp::template Codim< 0 >::Entity | Entity |
type of entity interface | |
typedef ALU2dGridEntityPointer < 0, GridImp > | EntityPointer |
tpye of entitypointer interface | |
enum | |
know your own codimension More... | |
enum | |
know your own dimension More... | |
enum | |
Know dimension of the entity. More... | |
enum | |
know your own dimension of world More... | |
typedef GridImp::ctype | ctype |
define type used for coordinates in grid module | |
Public Member Functions | |
ALU2dGridEntity (const FactoryType &factory, int level) | |
Constructor creating empty Entity. | |
ALU2dGridEntity (const ALU2dGridEntity &org) | |
Constructor creating empty Entity. | |
int | level () const |
level of this element | |
Geometry | geometry () const |
geometry of this entity | |
GeometryType | type () const |
return type of geometry | |
template<int cc> | |
int | count () const |
int | boundaryId () const |
Id of the boundary which is associated with the entity, returns 0 for inner entities, arbitrary int otherwise. | |
ALU2dGridIntersectionIteratorType | ibegin () const |
ALU2dGridIntersectionIteratorType | iend () const |
Reference to one past the last intersection with neighbor. | |
ALU2dGridLevelIntersectionIteratorType | ilevelbegin () const |
ALU2dGridLevelIntersectionIteratorType | ilevelend () const |
ALU2dGridLeafIntersectionIteratorType | ileafbegin () const |
ALU2dGridLeafIntersectionIteratorType | ileafend () const |
bool | isLeaf () const |
returns true if Entity is leaf (i.e. has no children) | |
EntityPointer | father () const |
bool | hasFather () const |
returns true if father entity exists | |
ALU2dGridHierarchicIterator < GridImp > | hbegin (int maxLevel) const |
ALU2dGridHierarchicIterator < GridImp > | hend (int maxLevel) const |
Returns iterator to one past the last son. | |
template<int cc> | |
Codim< cc >::EntityPointer | entity (int i) const |
template<int codim> | |
Codim< codim >::EntityPointer | subEntity (int i) const |
PartitionType | partitionType () const |
return partition type of this entity ( see grid.hh ) | |
template<int cc> | |
int | subBoundaryId (int i) const |
The boundaryId of the i-th subentity of codimension cc | |
LocalGeometry | geometryInFather () const |
bool | mightVanish () const |
The former state() method has been replaced by: | |
bool | isNew () const |
bool | mark (int refCount) const |
int | getMark () const |
return current adaptation mark of element | |
void | setElement (const HElementType &element, int face=-1, int level=-1) const |
void | setElement (const EntitySeed &seed) const |
void | setElement (const ALU2dGridEntity &org) const |
void | reset (int l) |
set actual walk level | |
void | removeElement () |
set item pointer to NULL | |
bool | equals (const ALU2dGridEntity< 0, dim, GridImp > &org) const |
compare 2 entities, which means compare the item pointers | |
HElementType & | getItem () const |
EntitySeed | seed () const |
return seed of entity | |
const GridImp & | grid () const |
return reference to grid | |
const FactoryType & | factory () const |
return reference to factory | |
int | getFace () const |
int | getIndex () const |
index is unique within the grid hierachie and per codim | |
Friends | |
class | ALU2dGrid< dim, dimworld, eltype > |
class | ALU2dGridIntersectionIterator< GridImp > |
class | ALU2dGridIntersectionIterator< const GridImp > |
class | ALU2dGridLevelIntersectionIterator< GridImp > |
class | ALU2dGridLevelIntersectionIterator< const GridImp > |
class | ALU2dGridLeafIntersectionIterator< GridImp > |
class | ALU2dGridLeafIntersectionIterator< const GridImp > |
class | ALU2dGridHierarchicIterator< const GridImp > |
class | ALU2dGridHierarchicIterator< GridImp > |
class | ALU2dGridLevelIterator< 0, All_Partition, GridImp > |
class | ALU2dGridLevelIterator< 1, All_Partition, GridImp > |
class | ALU2dGridLevelIterator< 2, All_Partition, GridImp > |
class | ALU2dGridLeafIterator< 0, All_Partition, GridImp > |
class | ALU2dGridLeafIterator< 1, All_Partition, GridImp > |
class | ALU2dGridLeafIterator< 2, All_Partition, GridImp > |
class | ALU2dGridMakeableEntity< 0, dim, GridImp > |
class | ALU2dGridHierarchicIndexSet< dim, dimworld, eltype > |
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 ALU2dGridLeafIntersectionIteratorType Dune::ALU2dGridEntity< 0, dim, GridImp >::ALU2dGridIntersectionIteratorType |
typedef LeafIntersectionIteratorWrapper< GridImp > Dune::ALU2dGridEntity< 0, dim, GridImp >::ALU2dGridLeafIntersectionIteratorType |
tpye of intersection iterator
typedef LevelIntersectionIteratorWrapper< GridImp > Dune::ALU2dGridEntity< 0, dim, GridImp >::ALU2dGridLevelIntersectionIteratorType |
typedef GridImp::ctype Dune::EntityDefaultImplementation< cd, dim, GridImp, ALU2dGridEntity >::ctype [inherited] |
define type used for coordinates in grid module
typedef GridImp::template Codim<0>::Entity Dune::ALU2dGridEntity< 0, dim, GridImp >::Entity |
type of entity interface
typedef ALU2dGridEntityPointer<0,GridImp> Dune::ALU2dGridEntity< 0, dim, GridImp >::EntityPointer |
tpye of entitypointer interface
Reimplemented from Dune::EntityDefaultImplementation< 0, dim, GridImp, ALU2dGridEntity >.
typedef GridImp::template Codim<0>::EntitySeed Dune::ALU2dGridEntity< 0, dim, GridImp >::EntitySeed |
typedef of my type
Reimplemented from Dune::EntityDefaultImplementation< 0, dim, GridImp, ALU2dGridEntity >.
typedef GridImp :: GridObjectFactoryType Dune::ALU2dGridEntity< 0, dim, GridImp >::FactoryType |
typedef GridImp::template Codim<0>::Geometry Dune::ALU2dGridEntity< 0, dim, GridImp >::Geometry |
type of our Geometry interface
typedef GridImp::template Codim<0>::LocalGeometry Dune::ALU2dGridEntity< 0, dim, GridImp >::LocalGeometry |
type of corresponding interface local geometry
anonymous enum [inherited] |
know your own codimension
anonymous enum [inherited] |
know your own dimension
anonymous enum [inherited] |
Know dimension of the entity.
anonymous enum [inherited] |
know your own dimension of world
Dune::ALU2dGridEntity< 0, dim, GridImp >::ALU2dGridEntity | ( | const FactoryType & | factory, |
int | level | ||
) |
Constructor creating empty Entity.
Dune::ALU2dGridEntity< 0, dim, GridImp >::ALU2dGridEntity | ( | const ALU2dGridEntity< 0, dim, GridImp > & | org | ) |
Constructor creating empty Entity.
int Dune::ALU2dGridEntity< 0, dim, GridImp >::boundaryId | ( | ) | const [inline] |
Id of the boundary which is associated with the entity, returns 0 for inner entities, arbitrary int otherwise.
int Dune::ALU2dGridEntity< 0, dim, GridImp >::count | ( | ) | const [inline] |
Intra-element access to entities of codimension cc > codim. Return number of entities with codimension cc.
Codim<cc>::EntityPointer Dune::ALU2dGridEntity< 0, dim, GridImp >::entity | ( | int | i | ) | const |
Provide access to mesh entity i of given codimension. Entities are numbered 0 ... count<cc>()-1
bool Dune::ALU2dGridEntity< 0, dim, GridImp >::equals | ( | const ALU2dGridEntity< 0, dim, GridImp > & | org | ) | const |
compare 2 entities, which means compare the item pointers
const FactoryType& Dune::ALU2dGridEntity< 0, dim, GridImp >::factory | ( | ) | const [inline] |
return reference to factory
EntityPointer Dune::ALU2dGridEntity< 0, dim, GridImp >::father | ( | ) | const |
Inter-level access to father element on coarser grid. Assumes that meshes are nested.
Geometry Dune::ALU2dGridEntity< 0, dim, GridImp >::geometry | ( | ) | const |
geometry of this entity
LocalGeometry Dune::ALU2dGridEntity< 0, dim, GridImp >::geometryInFather | ( | ) | const |
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.
int Dune::ALU2dGridEntity< 0, dim, GridImp >::getFace | ( | ) | const [inline] |
int Dune::ALU2dGridEntity< 0, dim, GridImp >::getIndex | ( | ) | const |
index is unique within the grid hierachie and per codim
HElementType& Dune::ALU2dGridEntity< 0, dim, GridImp >::getItem | ( | ) | const [inline] |
int Dune::ALU2dGridEntity< 0, dim, GridImp >::getMark | ( | ) | const |
return current adaptation mark of element
const GridImp& Dune::ALU2dGridEntity< 0, dim, GridImp >::grid | ( | ) | const [inline] |
return reference to grid
bool Dune::ALU2dGridEntity< 0, dim, GridImp >::hasFather | ( | ) | const [inline] |
returns true if father entity exists
References Dune::ALU2dGridEntity< cd, dim, GridImp >::level().
ALU2dGridHierarchicIterator<GridImp> Dune::ALU2dGridEntity< 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.
References Dune::ALU2dGridEntity< cd, dim, GridImp >::factory().
ALU2dGridHierarchicIterator<GridImp> Dune::ALU2dGridEntity< 0, dim, GridImp >::hend | ( | int | maxLevel | ) | const [inline] |
Returns iterator to one past the last son.
References Dune::ALU2dGridEntity< cd, dim, GridImp >::factory().
ALU2dGridIntersectionIteratorType Dune::ALU2dGridEntity< 0, dim, GridImp >::ibegin | ( | ) | const [inline] |
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.
ALU2dGridIntersectionIteratorType Dune::ALU2dGridEntity< 0, dim, GridImp >::iend | ( | ) | const [inline] |
Reference to one past the last intersection with neighbor.
ALU2dGridLeafIntersectionIteratorType Dune::ALU2dGridEntity< 0, dim, GridImp >::ileafbegin | ( | ) | const [inline] |
ALU2dGridLeafIntersectionIteratorType Dune::ALU2dGridEntity< 0, dim, GridImp >::ileafend | ( | ) | const [inline] |
ALU2dGridLevelIntersectionIteratorType Dune::ALU2dGridEntity< 0, dim, GridImp >::ilevelbegin | ( | ) | const [inline] |
ALU2dGridLevelIntersectionIteratorType Dune::ALU2dGridEntity< 0, dim, GridImp >::ilevelend | ( | ) | const [inline] |
bool Dune::ALU2dGridEntity< 0, dim, GridImp >::isLeaf | ( | ) | const |
returns true if Entity is leaf (i.e. has no children)
bool Dune::ALU2dGridEntity< 0, dim, GridImp >::isNew | ( | ) | const [inline] |
int Dune::ALU2dGridEntity< 0, dim, GridImp >::level | ( | ) | const |
level of this element
bool Dune::ALU2dGridEntity< 0, dim, GridImp >::mark | ( | int | refCount | ) | 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
bool Dune::ALU2dGridEntity< 0, dim, GridImp >::mightVanish | ( | ) | const [inline] |
The former state() method has been replaced by:
References ALU2DSPACE.
PartitionType Dune::ALU2dGridEntity< 0, dim, GridImp >::partitionType | ( | ) | const [inline] |
return partition type of this entity ( see grid.hh )
References Dune::ALU2dGridEntity< cd, dim, GridImp >::grid(), and Dune::InteriorEntity.
void Dune::ALU2dGridEntity< 0, dim, GridImp >::removeElement | ( | ) |
set item pointer to NULL
void Dune::ALU2dGridEntity< 0, dim, GridImp >::reset | ( | int | l | ) |
set actual walk level
EntitySeed Dune::ALU2dGridEntity< 0, dim, GridImp >::seed | ( | ) | const [inline] |
return seed of entity
References Dune::ALU2dGridEntity< cd, dim, GridImp >::getItem().
void Dune::ALU2dGridEntity< 0, dim, GridImp >::setElement | ( | const HElementType & | element, |
int | face = -1 , |
||
int | level = -1 |
||
) | const |
private methods, but public because of datahandle and template arguments of these methods
void Dune::ALU2dGridEntity< 0, dim, GridImp >::setElement | ( | const EntitySeed & | seed | ) | const |
void Dune::ALU2dGridEntity< 0, dim, GridImp >::setElement | ( | const ALU2dGridEntity< 0, dim, GridImp > & | org | ) | const [inline] |
int Dune::ALU2dGridEntity< 0, dim, GridImp >::subBoundaryId | ( | int | i | ) | const |
The boundaryId of the i-th subentity of codimension cc
This does the same as entity<cc>(i).boundaryId()
, but it is usually a lot faster.
Codim< codim >::EntityPointer Dune::ALU2dGridEntity< 0, dim, GridImp >::subEntity | ( | int | i | ) | const [inline] |
Provide access to mesh entity i of given codimension. Entities are numbered 0 ... count<cc>()-1
GeometryType Dune::ALU2dGridEntity< 0, dim, GridImp >::type | ( | ) | const |
return type of geometry
Reimplemented from Dune::EntityDefaultImplementation< 0, dim, GridImp, ALU2dGridEntity >.
friend class ALU2dGrid< dim, dimworld, eltype > [friend] |
friend class ALU2dGridHierarchicIndexSet< dim, dimworld, eltype > [friend] |
friend class ALU2dGridHierarchicIterator< const GridImp > [friend] |
friend class ALU2dGridHierarchicIterator< GridImp > [friend] |
friend class ALU2dGridIntersectionIterator< const GridImp > [friend] |
friend class ALU2dGridIntersectionIterator< GridImp > [friend] |
friend class ALU2dGridLeafIntersectionIterator< const GridImp > [friend] |
friend class ALU2dGridLeafIntersectionIterator< GridImp > [friend] |
friend class ALU2dGridLeafIterator< 0, All_Partition, GridImp > [friend] |
friend class ALU2dGridLeafIterator< 1, All_Partition, GridImp > [friend] |
friend class ALU2dGridLeafIterator< 2, All_Partition, GridImp > [friend] |
friend class ALU2dGridLevelIntersectionIterator< const GridImp > [friend] |
friend class ALU2dGridLevelIntersectionIterator< GridImp > [friend] |
friend class ALU2dGridLevelIterator< 0, All_Partition, GridImp > [friend] |
friend class ALU2dGridLevelIterator< 1, All_Partition, GridImp > [friend] |
friend class ALU2dGridLevelIterator< 2, All_Partition, GridImp > [friend] |
friend class ALU2dGridMakeableEntity< 0, dim, GridImp > [friend] |