3 #ifndef DUNE_ALBERTA_ENTITY_HH 4 #define DUNE_ALBERTA_ENTITY_HH 20 template<
int codim,
class Gr
id,
bool leafIterator >
23 template<
class Gr
id >
26 template<
class Gr
id >
29 template<
class Gr
id >
41 template<
int codim,
int dim,
class Gr
id >
108 int n = mydimension+1;
109 int k = dimension-cd+1;
113 for (
int i=n-k+1; i<=n; i++)
115 for (
long i=2; i<=k; i++)
131 bool equals (
const This &other )
const;
162 ElementInfo elementInfo_;
180 template<
int dim,
class Gr
id >
198 template<
int codim >
206 typedef typename Grid::template Codim< 0 >::EntitySeed
EntitySeed;
207 typedef typename Grid::template Codim< 0 >::Geometry
Geometry;
209 typedef typename Grid::Traits::template Codim< 0 >::GeometryImpl
GeometryImpl;
230 int boundaryId ()
const;
251 int n = mydimension+1;
252 int k = dimension-cd+1;
256 for (
int i=n-k+1; i<=n; i++)
258 for (
long i=2; i<=k; i++)
274 template<
int codim >
282 AlbertaGridLeafIntersectionIterator ileafbegin ()
const;
285 AlbertaGridLeafIntersectionIterator ileafend ()
const;
289 if(
grid().maxLevel() == 0 )
293 DUNE_THROW( NotImplemented,
"method ilevelbegin not implemented for AlbertaGrid." );
304 bool isLeaf ()
const;
308 Entity father ()
const;
312 return (this->
level()>0);
323 LocalGeometry geometryInFather ()
const;
329 HierarchicIterator hbegin (
int maxlevel)
const;
332 HierarchicIterator hend (
int maxlevel)
const;
338 bool mightVanish ()
const;
342 bool hasBoundaryIntersections ()
const ;
348 bool equals (
const This &i )
const;
383 template<
int codim >
386 return elementInfo().template twist< codim >(
grid().generic2alberta( codim, i ) );
397 ElementInfo elementInfo_;
402 #endif // #if HAVE_ALBERTA 404 #endif // #ifndef DUNE_ALBERTA_ENTITY_HH #define ALBERTA
Definition: albertaheader.hh:27
bool hasFather() const
returns true if father entity exists
Definition: albertagrid/entity.hh:310
Grid::template Codim< 0 >::LocalGeometry LocalGeometry
Definition: albertagrid/entity.hh:208
Grid::HierarchicIterator HierarchicIterator
Definition: albertagrid/entity.hh:211
Grid::template Codim< 0 >::Geometry Geometry
Definition: albertagrid/entity.hh:207
Grid::template Codim< 0 >::Entity Entity
Definition: albertagrid/entity.hh:205
Geometry geometry() const
geometry of this entity
Definition: entity.cc:101
Dune::AlbertaGridLeafIntersectionIterator< Grid > AlbertaGridLeafIntersectionIterator
Definition: albertagrid/entity.hh:213
int level() const
level of this element
Definition: entity.cc:92
AlbertaGridEntity()
Definition: entity.cc:30
const ElementInfo & elementInfo() const
Definition: albertagrid/entity.hh:128
Definition: albertagrid/entity.hh:27
const ElementInfo & elementInfo() const
Definition: albertagrid/entity.hh:353
Default Implementations for EntityImp.
Definition: common/entity.hh:547
int twist() const
obtain twist
Definition: albertagrid/entity.hh:152
void setEntity(const This &other)
Definition: entity.cc:85
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:373
[ provides Dune::Grid ]
Definition: agrid.hh:136
AlbertaGridLevelIntersectionIterator ilevelbegin() const
Definition: albertagrid/entity.hh:287
Grid::template Codim< cd >::Entity Entity
Definition: albertagrid/entity.hh:62
Alberta::ElementInfo< dimension > ElementInfo
Definition: albertagrid/entity.hh:216
const Grid & grid() const
obtain a reference to the grid
Definition: albertagrid/entity.hh:140
provides a wrapper for ALBERTA's el_info structure
static const int dimension
Definition: albertagrid/entity.hh:55
int twist(int i) const
obtain twist of a subentity
Definition: albertagrid/entity.hh:384
unsigned int subEntities(unsigned int cd) const
Obtain the number of subentities of a given codimension.
Definition: albertagrid/entity.hh:106
ALBERTA EL_INFO * getElInfo() const
needed for the LevelIterator and LeafIterator
Definition: entity.cc:60
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:486
Definition: albertagrid/entity.hh:42
Grid::template Codim< 0 >::EntitySeed EntitySeed
Definition: albertagrid/entity.hh:206
EntitySeed seed() const
obtain entity seed
Definition: albertagrid/entity.hh:96
Definition: albertagrid/entity.hh:24
AlbertaGridLeafIntersectionIterator AlbertaGridLevelIntersectionIterator
Definition: albertagrid/entity.hh:214
Grid::template Codim< codim >::Entity Entity
Definition: albertagrid/entity.hh:202
GeometryType
Type representing VTK's entity geometry types.
Definition: common.hh:178
Definition: albertagrid/entity.hh:181
Definition: albertagrid/entity.hh:30
Definition: albertagrid/entity.hh:21
Grid::template Codim< codim >::EntitySeed EntitySeed
Definition: albertagrid/entity.hh:66
unsigned int subEntities(unsigned int cd) const
Obtain the number of subentities of a given codimension.
Definition: albertagrid/entity.hh:249
AlbertaGridLevelIntersectionIterator ilevelend() const
Definition: albertagrid/entity.hh:298
PartitionType
Attributes used in the generic overlap model.
Definition: gridenums.hh:28
Definition: albertagrid/entityseed.hh:16
Definition: albertagrid/entity.hh:60
int subEntity() const
obtain number of the subentity within the element (in ALBERTA numbering)
Definition: albertagrid/entity.hh:371
PartitionType partitionType() const
return partition type of this entity
Definition: entity.cc:38
void clearElement()
Definition: entity.cc:68
EntitySeed seed() const
obtain entity seed
Definition: albertagrid/entity.hh:239
GeometryType type() const
type of geometry of this entity
Definition: entity.cc:112
The dimension of the world the grid lives in.
Definition: common/grid.hh:393
static const int codimension
Definition: albertagrid/entity.hh:56
Grid::template Codim< codim >::Entity Entity
Definition: albertagrid/entity.hh:65
int twist() const
obtain twist
Definition: albertagrid/entity.hh:377
void setElement(const ElementInfo &elementInfo, int subEntity)
Definition: entity.cc:76
bool equals(const This &other) const
equality of entities
Definition: entity.cc:46
Alberta::ElementInfo< dimension > ElementInfo
Definition: albertagrid/entity.hh:69
Grid::template Codim< codim >::Geometry Geometry
Definition: albertagrid/entity.hh:67
Grid::Traits::template Codim< 0 >::GeometryImpl GeometryImpl
Definition: albertagrid/entity.hh:209
const Grid & grid() const
obtain a reference to the grid
Definition: albertagrid/entity.hh:365
static const int mydimension
Definition: albertagrid/entity.hh:57
Include standard header files.
Definition: agrid.hh:58
int subEntity() const
obtain number of the subentity within the element (in ALBERTA numbering)
Definition: albertagrid/entity.hh:146