Dune::IdentityGridEntity< 0, dim, GridImp > Class Template Reference

Specialization for codim-0-entities.This class embodies the topological parts of elements of the grid. It has an extended interface compared to the general entity class. For example, Entities of codimension 0 allow to visit all neighbors. More...

#include <dune/grid/identitygrid/identitygridentity.hh>

List of all members.

Public Types

enum  { CodimInHostGrid = GridImp::HostGridType::dimension - GridImp::dimension }
typedef
GridImp::HostGridType::Traits::template
Codim< CodimInHostGrid >
::EntityPointer 
HostGridEntityPointer
typedef GridImp::template
Codim< 0 >::Geometry 
Geometry
typedef GridImp::template
Codim< 0 >::LocalGeometry 
LocalGeometry
typedef
IdentityGridLevelIntersectionIterator
< GridImp > 
LevelIntersectionIterator
 The Iterator over intersections on this level.
typedef
IdentityGridLeafIntersectionIterator
< GridImp > 
LeafIntersectionIterator
 The Iterator over intersections on the leaf level.
typedef
IdentityGridHierarchicIterator
< GridImp > 
HierarchicIterator
 Iterator over descendants of the entity.

Public Member Functions

template<class HostGridEntityPointer >
 IdentityGridEntity (const GridImp *identityGrid, const HostGridEntityPointer &hostEntity)
 Constructor for an entity in a given grid level.
 IdentityGridEntity (const IdentityGridEntity &original)
 ~IdentityGridEntity ()
 Destructor.
IdentityGridEntityoperator= (const IdentityGridEntity &original)
bool hasFather () const
 returns true if father entity exists
int level () const
 Level of this element.
PartitionType partitionType () const
 The partition type for parallel computing.
const Geometrygeometry () const
 Geometry of this entity.
template<int cc>
int count () const
 Return the number of subEntities of codimension cc.
template<int cc>
GridImp::template Codim< cc >
::EntityPointer 
subEntity (int i) const
 Provide access to sub entity i of given codimension. Entities are numbered 0 ... count<cc>()-1.
IdentityGridLevelIntersectionIterator
< GridImp > 
ilevelbegin () const
 First level intersection.
IdentityGridLevelIntersectionIterator
< GridImp > 
ilevelend () const
 Reference to one past the last neighbor.
IdentityGridLeafIntersectionIterator
< GridImp > 
ileafbegin () const
 First leaf intersection.
IdentityGridLeafIntersectionIterator
< GridImp > 
ileafend () const
 Reference to one past the last leaf intersection.
bool isLeaf () const
 returns true if Entity has NO children
IdentityGridEntityPointer
< 0, GridImp > 
father () const
const LocalGeometrygeometryInFather () const
 Location of this element relative to the reference element 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.
IdentityGridHierarchicIterator
< GridImp > 
hbegin (int maxLevel) const
 Inter-level access to son elements on higher levels<=maxlevel. This is provided for sparsely stored nested unstructured meshes. Returns iterator to first son.
IdentityGridHierarchicIterator
< GridImp > 
hend (int maxLevel) const
 Returns iterator to one past the last son.
bool wasRefined () const
bool mightBeCoarsened () const
template<class HostGridEntityPointer >
void setToTarget (const HostGridEntityPointer &target)

Public Attributes

const GridImp * identityGrid_
MakeableInterfaceObject
< Geometry > * 
geo_
 the current geometry
MakeableInterfaceObject
< LocalGeometry > * 
geoInFather_
HostGridEntityPointer hostEntity_

Friends

class HostGridAccess< typename remove_const< GridImp >::type >

Detailed Description

template<int dim, class GridImp>
class Dune::IdentityGridEntity< 0, dim, GridImp >

Specialization for codim-0-entities.

This class embodies the topological parts of elements of the grid. It has an extended interface compared to the general entity class. For example, Entities of codimension 0 allow to visit all neighbors.


Member Typedef Documentation

template<int dim, class GridImp >
typedef GridImp::template Codim<0>::Geometry Dune::IdentityGridEntity< 0, dim, GridImp >::Geometry
template<int dim, class GridImp >
typedef IdentityGridHierarchicIterator<GridImp> Dune::IdentityGridEntity< 0, dim, GridImp >::HierarchicIterator

Iterator over descendants of the entity.

template<int dim, class GridImp >
typedef GridImp::HostGridType::Traits::template Codim<CodimInHostGrid>::EntityPointer Dune::IdentityGridEntity< 0, dim, GridImp >::HostGridEntityPointer
template<int dim, class GridImp >
typedef IdentityGridLeafIntersectionIterator<GridImp> Dune::IdentityGridEntity< 0, dim, GridImp >::LeafIntersectionIterator

The Iterator over intersections on the leaf level.

template<int dim, class GridImp >
typedef IdentityGridLevelIntersectionIterator<GridImp> Dune::IdentityGridEntity< 0, dim, GridImp >::LevelIntersectionIterator

The Iterator over intersections on this level.

template<int dim, class GridImp >
typedef GridImp::template Codim<0>::LocalGeometry Dune::IdentityGridEntity< 0, dim, GridImp >::LocalGeometry

Member Enumeration Documentation

template<int dim, class GridImp >
anonymous enum
Enumerator:
CodimInHostGrid 

Constructor & Destructor Documentation

template<int dim, class GridImp >
template<class HostGridEntityPointer >
Dune::IdentityGridEntity< 0, dim, GridImp >::IdentityGridEntity ( const GridImp *  identityGrid,
const HostGridEntityPointer hostEntity 
) [inline]

Constructor for an entity in a given grid level.

template<int dim, class GridImp >
Dune::IdentityGridEntity< 0, dim, GridImp >::IdentityGridEntity ( const IdentityGridEntity< 0, dim, GridImp > &  original  )  [inline]
Todo:
Please doc me !
template<int dim, class GridImp >
Dune::IdentityGridEntity< 0, dim, GridImp >::~IdentityGridEntity (  )  [inline]

Destructor.


Member Function Documentation

template<int dim, class GridImp >
template<int cc>
int Dune::IdentityGridEntity< 0, dim, GridImp >::count (  )  const [inline]

Return the number of subEntities of codimension cc.

References Dune::IdentityGridEntity< codim, dim, GridImp >::hostEntity_.

template<int dim, class GridImp >
IdentityGridEntityPointer<0,GridImp> Dune::IdentityGridEntity< 0, dim, GridImp >::father (  )  const [inline]

Inter-level access to father element on coarser grid. Assumes that meshes are nested.

References Dune::IdentityGridEntity< codim, dim, GridImp >::hostEntity_.

template<int dim, class GridImp >
const Geometry& Dune::IdentityGridEntity< 0, dim, GridImp >::geometry (  )  const [inline]
template<int dim, class GridImp >
const LocalGeometry& Dune::IdentityGridEntity< 0, dim, GridImp >::geometryInFather (  )  const [inline]

Location of this element relative to the reference element 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.

References Dune::IdentityGridEntity< codim, dim, GridImp >::hostEntity_.

template<int dim, class GridImp >
bool Dune::IdentityGridEntity< 0, dim, GridImp >::hasFather (  )  const [inline]

returns true if father entity exists

References Dune::IdentityGridEntity< codim, dim, GridImp >::hostEntity_.

template<int dim, class GridImp >
IdentityGridHierarchicIterator<GridImp> Dune::IdentityGridEntity< 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.

template<int dim, class GridImp >
IdentityGridHierarchicIterator<GridImp> Dune::IdentityGridEntity< 0, dim, GridImp >::hend ( int  maxLevel  )  const [inline]

Returns iterator to one past the last son.

template<int dim, class GridImp >
IdentityGridLeafIntersectionIterator<GridImp> Dune::IdentityGridEntity< 0, dim, GridImp >::ileafbegin (  )  const [inline]
template<int dim, class GridImp >
IdentityGridLeafIntersectionIterator<GridImp> Dune::IdentityGridEntity< 0, dim, GridImp >::ileafend (  )  const [inline]

Reference to one past the last leaf intersection.

References Dune::IdentityGridEntity< codim, dim, GridImp >::hostEntity_.

template<int dim, class GridImp >
IdentityGridLevelIntersectionIterator<GridImp> Dune::IdentityGridEntity< 0, dim, GridImp >::ilevelbegin (  )  const [inline]

First level intersection.

References Dune::IdentityGridEntity< codim, dim, GridImp >::hostEntity_.

template<int dim, class GridImp >
IdentityGridLevelIntersectionIterator<GridImp> Dune::IdentityGridEntity< 0, dim, GridImp >::ilevelend (  )  const [inline]

Reference to one past the last neighbor.

References Dune::IdentityGridEntity< codim, dim, GridImp >::hostEntity_.

template<int dim, class GridImp >
bool Dune::IdentityGridEntity< 0, dim, GridImp >::isLeaf (  )  const [inline]

returns true if Entity has NO children

References Dune::IdentityGridEntity< codim, dim, GridImp >::hostEntity_.

template<int dim, class GridImp >
int Dune::IdentityGridEntity< 0, dim, GridImp >::level (  )  const [inline]
template<int dim, class GridImp >
bool Dune::IdentityGridEntity< 0, dim, GridImp >::mightBeCoarsened (  )  const [inline]
Todo:
Please doc me !
template<int dim, class GridImp >
IdentityGridEntity& Dune::IdentityGridEntity< 0, dim, GridImp >::operator= ( const IdentityGridEntity< 0, dim, GridImp > &  original  )  [inline]
template<int dim, class GridImp >
PartitionType Dune::IdentityGridEntity< 0, dim, GridImp >::partitionType (  )  const [inline]

The partition type for parallel computing.

References Dune::IdentityGridEntity< codim, dim, GridImp >::hostEntity_.

template<int dim, class GridImp >
template<class HostGridEntityPointer >
void Dune::IdentityGridEntity< 0, dim, GridImp >::setToTarget ( const HostGridEntityPointer target  )  [inline]
template<int dim, class GridImp >
template<int cc>
GridImp::template Codim<cc>::EntityPointer Dune::IdentityGridEntity< 0, dim, GridImp >::subEntity ( int  i  )  const [inline]

Provide access to sub entity i of given codimension. Entities are numbered 0 ... count<cc>()-1.

References Dune::IdentityGridEntity< codim, dim, GridImp >::hostEntity_.

template<int dim, class GridImp >
bool Dune::IdentityGridEntity< 0, dim, GridImp >::wasRefined (  )  const [inline]

Friends And Related Function Documentation

template<int dim, class GridImp >
friend class HostGridAccess< typename remove_const< GridImp >::type > [friend]

Member Data Documentation

template<int dim, class GridImp >
MakeableInterfaceObject<Geometry>* Dune::IdentityGridEntity< 0, dim, GridImp >::geo_ [mutable]

the current geometry

template<int dim, class GridImp >
MakeableInterfaceObject<LocalGeometry>* Dune::IdentityGridEntity< 0, dim, GridImp >::geoInFather_ [mutable]
Todo:
Please doc me !
template<int dim, class GridImp >
HostGridEntityPointer Dune::IdentityGridEntity< 0, dim, GridImp >::hostEntity_
Todo:
Please doc me !
template<int dim, class GridImp >
const GridImp* Dune::IdentityGridEntity< 0, dim, GridImp >::identityGrid_

The documentation for this class was generated from the following file:

Generated on Fri Apr 29 2011 with Doxygen (ver 1.7.1) [doxygen-log,error-log].