3 #ifndef DUNE_ALBERTA_ENTITY_HH
4 #define DUNE_ALBERTA_ENTITY_HH
20 template<
int codim,
class Gr
id >
23 template<
int codim,
class Gr
id,
bool leafIterator >
26 template<
class Gr
id >
29 template<
class Gr
id >
32 template<
class Gr
id >
44 template<
int codim,
int dim,
class Gr
id >
111 bool equals (
const This &other )
const;
142 ElementInfo elementInfo_;
160 template<
int dim,
class Gr
id >
179 template<
int codim >
189 typedef typename Grid::template Codim< 0 >::EntitySeed
EntitySeed;
190 typedef typename Grid::template Codim< 0 >::Geometry
Geometry;
192 typedef typename Grid::Traits::template Codim< 0 >::GeometryImpl
GeometryImpl;
214 int boundaryId ()
const;
231 template<
int codim >
248 int k = dimension-codim+1;
252 for (
int i=n-k+1; i<=n; i++)
254 for (
long i=2; i<=k; i++)
270 template<
int codim >
271 typename Grid::template Codim< codim >::Entity
subEntity (
int i )
const;
278 AlbertaGridLeafIntersectionIterator ileafbegin ()
const;
281 AlbertaGridLeafIntersectionIterator ileafend ()
const;
285 if(
grid().maxLevel() == 0 )
289 DUNE_THROW( NotImplemented,
"method ilevelbegin not implemented for AlbertaGrid." );
300 bool isLeaf ()
const;
304 Entity father ()
const;
308 return (this->
level()>0);
319 LocalGeometry geometryInFather ()
const;
325 HierarchicIterator hbegin (
int maxlevel)
const;
328 HierarchicIterator hend (
int maxlevel)
const;
334 bool mightVanish ()
const;
338 bool hasBoundaryIntersections ()
const ;
344 bool equals (
const This &i )
const;
379 template<
int codim >
382 return elementInfo().template twist< codim >(
grid().generic2alberta( codim, i ) );
393 ElementInfo elementInfo_;
398 #endif // #if HAVE_ALBERTA
400 #endif // #ifndef DUNE_ALBERTA_ENTITY_HH
Grid::template Codim< codim >::Entity Entity
Definition: albertagrid/entity.hh:68
const Grid & grid() const
obtain a reference to the grid
Definition: albertagrid/entity.hh:361
AlbertaGridLevelIntersectionIterator ilevelbegin() const
Definition: albertagrid/entity.hh:283
int level() const
level of this element
Definition: entity.cc:92
The dimension of the world the grid lives in.
Definition: common/grid.hh:408
int twist() const
obtain twist
Definition: albertagrid/entity.hh:373
EntitySeed seed() const
obtain entity seed
Definition: albertagrid/entity.hh:223
Definition: albertagrid/entity.hh:24
PartitionType partitionType() const
return partition type of this entity
Definition: entity.cc:38
void setEntity(const This &other)
Definition: entity.cc:85
Definition: albertagrid/entity.hh:27
Grid::template Codim< 0 >::EntitySeed EntitySeed
Definition: albertagrid/entity.hh:189
static const int dimension
Definition: albertagrid/entity.hh:58
Dune::AlbertaGridLeafIntersectionIterator< Grid > AlbertaGridLeafIntersectionIterator
Definition: albertagrid/entity.hh:197
Grid::template Codim< codim >::EntitySeed EntitySeed
Definition: albertagrid/entity.hh:69
Geometry geometry() const
geometry of this entity
Definition: entity.cc:101
Grid::template Codim< cd >::EntityPointer EntityPointer
Definition: albertagrid/entity.hh:65
Grid::template Codim< 0 >::LocalGeometry LocalGeometry
Definition: albertagrid/entity.hh:191
bool hasFather() const
returns true if father entity exists
Definition: albertagrid/entity.hh:306
#define ALBERTA
Definition: albertaheader.hh:27
Grid::Traits::template Codim< 0 >::GeometryImpl GeometryImpl
Definition: albertagrid/entity.hh:192
Grid::template Codim< 0 >::Entity Entity
Definition: albertagrid/entity.hh:188
EntityPointer implementation for AlbertaGrid.
Definition: albertagrid/entity.hh:21
static const int codimension
Definition: albertagrid/entity.hh:59
Default Implementations for EntityImp.
Definition: common/entity.hh:739
Grid::template Codim< codim >::EntityPointer EntityPointer
Definition: albertagrid/entity.hh:183
[ provides Dune::Grid ]
Definition: agrid.hh:137
int twist() const
obtain twist
Definition: albertagrid/entity.hh:132
Alberta::ElementInfo< dimension > ElementInfo
Definition: albertagrid/entity.hh:72
Definition: albertagrid/entity.hh:63
Definition: albertagrid/entity.hh:161
Grid::template Codim< 0 >::Geometry Geometry
Definition: albertagrid/entity.hh:190
const ElementInfo & elementInfo() const
Definition: albertagrid/entity.hh:349
Definition: albertagrid/entity.hh:33
Grid abstract base classThis class is the base class for all grid implementations. Although no virtual functions are used we call it abstract since its methods do not contain an implementation but forward to the methods of the derived class via the Barton-Nackman trick.
Definition: common/grid.hh:388
int count() const
Definition: albertagrid/entity.hh:232
Grid::HierarchicIterator HierarchicIterator
Definition: albertagrid/entity.hh:194
Grid::template Codim< 0 >::EntityPointer EntityPointer
Definition: albertagrid/entity.hh:195
Alberta::ElementInfo< dimension > ElementInfo
Definition: albertagrid/entity.hh:200
Grid::template Codim< codim >::Entity Entity
Definition: albertagrid/entity.hh:185
static const int mydimension
Definition: albertagrid/entity.hh:60
ALBERTA EL_INFO * getElInfo() const
needed for the LevelIterator and LeafIterator
Definition: entity.cc:60
AlbertaGridLevelIntersectionIterator ilevelend() const
Definition: albertagrid/entity.hh:294
int subEntity() const
obtain number of the subentity within the element (in ALBERTA numbering)
Definition: albertagrid/entity.hh:367
Definition: albertagrid/entity.hh:30
provides a wrapper for ALBERTA's el_info structure
int twist(int i) const
obtain twist of a subentity
Definition: albertagrid/entity.hh:380
unsigned int subEntities(unsigned int codim) const
Obtain the number of subentities of a given codimension.
Definition: albertagrid/entity.hh:245
AlbertaGridEntity()
Definition: entity.cc:30
void setElement(const ElementInfo &elementInfo, int subEntity)
Definition: entity.cc:76
Grid::template Codim< codim >::Geometry Geometry
Definition: albertagrid/entity.hh:70
AlbertaGridLeafIntersectionIterator AlbertaGridLevelIntersectionIterator
Definition: albertagrid/entity.hh:198
int subEntity() const
obtain number of the subentity within the element (in ALBERTA numbering)
Definition: albertagrid/entity.hh:126
Include standard header files.
Definition: agrid.hh:59
Definition: albertagrid/entity.hh:45
bool equals(const This &other) const
equality of entities
Definition: entity.cc:46
GridFamily::Traits::HierarchicIterator HierarchicIterator
A type that is a model of Dune::HierarchicIterator A type of iterator that allows to examine...
Definition: common/grid.hh:512
const Grid & grid() const
obtain a reference to the grid
Definition: albertagrid/entity.hh:120
EntitySeed seed() const
obtain entity seed
Definition: albertagrid/entity.hh:99
GeometryType type() const
type of geometry of this entity
Definition: entity.cc:112
Definition: albertagrid/entityseed.hh:16
void clearElement()
Definition: entity.cc:68
GeometryType
Type representing VTK's entity geometry types.
Definition: common.hh:178
PartitionType
Attributes used in the generic overlap model.
Definition: gridenums.hh:28
const ElementInfo & elementInfo() const
Definition: albertagrid/entity.hh:108