Dune::ALU3dGridLevelIntersectionIterator< GridImp > Class Template Reference

#include <dune/grid/alugrid/3d/iterator.hh>

Inheritance diagram for Dune::ALU3dGridLevelIntersectionIterator< GridImp >:
Inheritance graph

List of all members.

Public Types

typedef
GridImp::GridObjectFactoryType 
FactoryType
typedef ALUMemoryProvider
< ThisType
StorageType
typedef GridImp::template
Codim< 0 >::Entity 
Entity
typedef GridImp::template
Codim< 1 >::Geometry 
Geometry
typedef GridImp::template
Codim< 1 >::LocalGeometry 
LocalGeometry
typedef
ALU3dGridIntersectionIterator
< GridImp > 
ImplementationType
typedef Dune::Intersection
< GridImp,
Dune::ALU3dGridIntersectionIterator
Intersection
 type of the intersection
typedef ALU3dGridGeometry< dim-1,
dimworld, GridImp > 
GeometryImp
typedef
MakeableInterfaceObject
< Geometry
GeometryObject
typedef FieldVector
< alu3d_ctype, dimworld > 
NormalType
typedef ALU3dGridEntityPointer
< 0, GridImp > 
EntityPointer

Public Member Functions

 ALU3dGridLevelIntersectionIterator (const FactoryType &factory, HElementType *el, int wLevel, bool end=false)
 ALU3dGridLevelIntersectionIterator (const FactoryType &factory, int wLevel)
 ALU3dGridLevelIntersectionIterator (const ThisType &org)
 The copy constructor.
void assign (const ThisType &org)
 assignment of iterators
void increment ()
 increment iterator
template<class EntityType >
void first (const EntityType &en, int wLevel)
bool neighbor () const
 return true if across the edge an neighbor on this level exists
bool levelNeighbor () const
 return true if across the edge an neighbor on this level exists
bool leafNeighbor () const
 return true if across the edge an neighbor on leaf level exists
bool conforming () const
 return true if intersection is conforming
void assign (const ALU3dGridIntersectionIterator< GridImp > &org)
 assignment of iterators
const Intersectiondereference () const
bool equals (const ALU3dGridIntersectionIterator< GridImp > &i) const
 The copy constructor.
EntityPointer outside () const
 access neighbor
EntityPointer inside () const
 access entity where iteration started
bool boundary () const
 return true if intersection is with boundary.
int boundaryId () const
 return information about the Boundary
size_t boundarySegmentIndex () const
 return the boundary segment index
const LocalGeometrygeometryInInside () const
const Geometrygeometry () const
GeometryType type () const
 obtain the type of reference element for this intersection
int indexInInside () const
const LocalGeometrygeometryInOutside () const
int indexInOutside () const
int twistInSelf () const
 returns twist of face compared to inner element
int twistInNeighbor () const
 returns twist of face compared to outer element
int twistInInside () const
 returns twist of face compared to inner element
int twistInOutside () const
 returns twist of face compared to outer element
NormalTypeunitOuterNormal (const FieldVector< alu3d_ctype, dim-1 > &local) const
NormalTypeouterNormal (const FieldVector< alu3d_ctype, dim-1 > &local) const
NormalTypeintegrationOuterNormal (const FieldVector< alu3d_ctype, dim-1 > &local) const
int level () const
 return level of iterator

Protected Types

enum  IntersectionIteratorType { IntersectionLeaf, IntersectionLevel, IntersectionBoth }

Protected Member Functions

void done ()
template<class EntityType >
void done (const EntityType &en)
GeometryImpintersectionGlobalImp () const
GeometryImpintersectionSelfLocalImp () const
GeometryImpintersectionNeighborLocalImp () const
void buildLocalGeometries () const
const ALU3dImplTraits< tetra,
Comm >::GEOFaceType * 
getFace (const GEOTriangleBndType &bnd, int index) const
const ALU3dImplTraits< hexa,
Comm >::GEOFaceType * 
getFace (const GEOQuadBndType &bnd, int index) const
const ALU3dImplTraits< tetra,
Comm >::GEOFaceType * 
getFace (const GEOTetraElementType &elem, int index) const
const ALU3dImplTraits< hexa,
Comm >::GEOFaceType * 
getFace (const GEOHexaElementType &elem, int index) const

Protected Attributes

FaceInfoType connector_
GeometryInfoType geoProvider_
const FactoryTypefactory_
const IMPLElementType * item_
 current element from which we started the intersection iterator
const BNDFaceType * ghost_
 current pointer to ghost face if iterator was started from ghost element
int innerLevel_
int index_
GeometryObject intersectionGlobal_
GeometryObject intersectionSelfLocal_
GeometryObject intersectionNeighborLocal_
NormalType unitOuterNormal_
bool done_

Friends

class ALU3dGridEntity< 0, dim, GridImp >
class IntersectionIteratorWrapper< GridImp, ThisType >

template<class GridImp>
class Dune::ALU3dGridLevelIntersectionIterator< GridImp >


Member Typedef Documentation

template<class GridImp>
typedef GridImp::template Codim<0>::Entity Dune::ALU3dGridIntersectionIterator< GridImp >::Entity [inherited]
template<class GridImp>
typedef ALU3dGridEntityPointer<0,GridImp> Dune::ALU3dGridIntersectionIterator< GridImp >::EntityPointer [inherited]
template<class GridImp >
typedef GridImp::GridObjectFactoryType Dune::ALU3dGridLevelIntersectionIterator< GridImp >::FactoryType
template<class GridImp>
typedef GridImp::template Codim<1>::Geometry Dune::ALU3dGridIntersectionIterator< GridImp >::Geometry [inherited]
template<class GridImp>
typedef ALU3dGridGeometry<dim-1,dimworld,GridImp> Dune::ALU3dGridIntersectionIterator< GridImp >::GeometryImp [inherited]
template<class GridImp>
typedef MakeableInterfaceObject<Geometry> Dune::ALU3dGridIntersectionIterator< GridImp >::GeometryObject [inherited]
template<class GridImp>
typedef ALU3dGridIntersectionIterator< GridImp > Dune::ALU3dGridIntersectionIterator< GridImp >::ImplementationType [inherited]
template<class GridImp>
typedef Dune::Intersection< GridImp, Dune::ALU3dGridIntersectionIterator > Dune::ALU3dGridIntersectionIterator< GridImp >::Intersection [inherited]

type of the intersection

template<class GridImp>
typedef GridImp::template Codim<1>::LocalGeometry Dune::ALU3dGridIntersectionIterator< GridImp >::LocalGeometry [inherited]
template<class GridImp>
typedef FieldVector<alu3d_ctype, dimworld> Dune::ALU3dGridIntersectionIterator< GridImp >::NormalType [inherited]

Member Enumeration Documentation

template<class GridImp>
enum Dune::ALU3dGridIntersectionIterator::IntersectionIteratorType [protected, inherited]
Enumerator:
IntersectionLeaf 
IntersectionLevel 
IntersectionBoth 

Constructor & Destructor Documentation

template<class GridImp >
Dune::ALU3dGridLevelIntersectionIterator< GridImp >::ALU3dGridLevelIntersectionIterator ( const FactoryType factory,
HElementType *  el,
int  wLevel,
bool  end = false 
)

The default Constructor , level tells on which level we want neighbours

template<class GridImp >
Dune::ALU3dGridLevelIntersectionIterator< GridImp >::ALU3dGridLevelIntersectionIterator ( const FactoryType factory,
int  wLevel 
)
template<class GridImp >
Dune::ALU3dGridLevelIntersectionIterator< GridImp >::ALU3dGridLevelIntersectionIterator ( const ThisType org  ) 

The copy constructor.


Member Function Documentation

template<class GridImp >
void Dune::ALU3dGridLevelIntersectionIterator< GridImp >::assign ( const ThisType org  ) 

assignment of iterators

template<class GridImp>
void Dune::ALU3dGridIntersectionIterator< GridImp >::assign ( const ALU3dGridIntersectionIterator< GridImp > &  org  )  [inherited]

assignment of iterators

template<class GridImp>
bool Dune::ALU3dGridIntersectionIterator< GridImp >::boundary (  )  const [inherited]

return true if intersection is with boundary.

template<class GridImp>
int Dune::ALU3dGridIntersectionIterator< GridImp >::boundaryId (  )  const [inherited]

return information about the Boundary

template<class GridImp>
size_t Dune::ALU3dGridIntersectionIterator< GridImp >::boundarySegmentIndex (  )  const [inherited]

return the boundary segment index

template<class GridImp>
void Dune::ALU3dGridIntersectionIterator< GridImp >::buildLocalGeometries (  )  const [protected, inherited]
template<class GridImp>
const Intersection& Dune::ALU3dGridIntersectionIterator< GridImp >::dereference (  )  const [inline, inherited]
template<class GridImp>
void Dune::ALU3dGridIntersectionIterator< GridImp >::done (  )  [protected, inherited]
template<class GridImp>
template<class EntityType >
void Dune::ALU3dGridIntersectionIterator< GridImp >::done ( const EntityType &  en  )  [inline, protected, inherited]
template<class GridImp>
bool Dune::ALU3dGridIntersectionIterator< GridImp >::equals ( const ALU3dGridIntersectionIterator< GridImp > &  i  )  const [inherited]

The copy constructor.

template<class GridImp >
template<class EntityType >
void Dune::ALU3dGridLevelIntersectionIterator< GridImp >::first ( const EntityType &  en,
int  wLevel 
)
template<class GridImp>
const Geometry& Dune::ALU3dGridIntersectionIterator< GridImp >::geometry (  )  const [inherited]

intersection of codimension 1 of this neighbor with element where iteration started. Here returned element is in GLOBAL coordinates of the element where iteration started.

template<class GridImp>
const LocalGeometry& Dune::ALU3dGridIntersectionIterator< GridImp >::geometryInInside (  )  const [inherited]

intersection of codimension 1 of this neighbor with element where iteration started. Here returned element is in LOCAL coordinates of the element where iteration started.

template<class GridImp>
const LocalGeometry& Dune::ALU3dGridIntersectionIterator< GridImp >::geometryInOutside (  )  const [inherited]

intersection of codimension 1 of this neighbor with element where iteration started. Here returned element is in LOCAL coordinates of neighbor

template<class GridImp>
const ALU3dImplTraits< hexa, Comm >::GEOFaceType* Dune::ALU3dGridIntersectionIterator< GridImp >::getFace ( const GEOHexaElementType &  elem,
int  index 
) const [protected, inherited]
template<class GridImp>
const ALU3dImplTraits< tetra, Comm >::GEOFaceType* Dune::ALU3dGridIntersectionIterator< GridImp >::getFace ( const GEOTriangleBndType &  bnd,
int  index 
) const [protected, inherited]
template<class GridImp>
const ALU3dImplTraits< hexa, Comm >::GEOFaceType* Dune::ALU3dGridIntersectionIterator< GridImp >::getFace ( const GEOQuadBndType &  bnd,
int  index 
) const [protected, inherited]
template<class GridImp>
const ALU3dImplTraits< tetra, Comm >::GEOFaceType* Dune::ALU3dGridIntersectionIterator< GridImp >::getFace ( const GEOTetraElementType &  elem,
int  index 
) const [protected, inherited]
template<class GridImp >
void Dune::ALU3dGridLevelIntersectionIterator< GridImp >::increment (  ) 

increment iterator

Reimplemented from Dune::ALU3dGridIntersectionIterator< GridImp >.

template<class GridImp>
int Dune::ALU3dGridIntersectionIterator< GridImp >::indexInInside (  )  const [inherited]

local index of codim 1 entity in self where intersection is contained in

template<class GridImp>
int Dune::ALU3dGridIntersectionIterator< GridImp >::indexInOutside (  )  const [inherited]

local index of codim 1 entity in neighbor where intersection is contained

template<class GridImp>
EntityPointer Dune::ALU3dGridIntersectionIterator< GridImp >::inside (  )  const [inherited]

access entity where iteration started

template<class GridImp>
NormalType& Dune::ALU3dGridIntersectionIterator< GridImp >::integrationOuterNormal ( const FieldVector< alu3d_ctype, dim-1 > &  local  )  const [inherited]

return outer normal, this should be dependent on local coordinates for higher order boundary

template<class GridImp>
GeometryImp& Dune::ALU3dGridIntersectionIterator< GridImp >::intersectionGlobalImp (  )  const [inline, protected, inherited]
template<class GridImp>
GeometryImp& Dune::ALU3dGridIntersectionIterator< GridImp >::intersectionNeighborLocalImp (  )  const [inline, protected, inherited]
template<class GridImp>
GeometryImp& Dune::ALU3dGridIntersectionIterator< GridImp >::intersectionSelfLocalImp (  )  const [inline, protected, inherited]
template<class GridImp >
bool Dune::ALU3dGridLevelIntersectionIterator< GridImp >::leafNeighbor (  )  const

return true if across the edge an neighbor on leaf level exists

Reimplemented from Dune::ALU3dGridIntersectionIterator< GridImp >.

template<class GridImp>
int Dune::ALU3dGridIntersectionIterator< GridImp >::level (  )  const [inherited]

return level of iterator

template<class GridImp >
bool Dune::ALU3dGridLevelIntersectionIterator< GridImp >::levelNeighbor (  )  const

return true if across the edge an neighbor on this level exists

Reimplemented from Dune::ALU3dGridIntersectionIterator< GridImp >.

template<class GridImp >
bool Dune::ALU3dGridLevelIntersectionIterator< GridImp >::neighbor (  )  const

return true if across the edge an neighbor on this level exists

Reimplemented from Dune::ALU3dGridIntersectionIterator< GridImp >.

Referenced by Dune::ALU3dGridLevelIntersectionIterator< GridImp >::conforming().

template<class GridImp>
NormalType& Dune::ALU3dGridIntersectionIterator< GridImp >::outerNormal ( const FieldVector< alu3d_ctype, dim-1 > &  local  )  const [inherited]

return outer normal, this should be dependent on local coordinates for higher order boundary

template<class GridImp>
EntityPointer Dune::ALU3dGridIntersectionIterator< GridImp >::outside (  )  const [inherited]

access neighbor

template<class GridImp>
int Dune::ALU3dGridIntersectionIterator< GridImp >::twistInInside (  )  const [inherited]

returns twist of face compared to inner element

Referenced by Dune::ALU3dGridIntersectionIterator< GridImp >::twistInSelf().

template<class GridImp>
int Dune::ALU3dGridIntersectionIterator< GridImp >::twistInNeighbor (  )  const [inline, inherited]

returns twist of face compared to outer element

References Dune::ALU3dGridIntersectionIterator< GridImp >::twistInOutside().

template<class GridImp>
int Dune::ALU3dGridIntersectionIterator< GridImp >::twistInOutside (  )  const [inherited]

returns twist of face compared to outer element

Referenced by Dune::ALU3dGridIntersectionIterator< GridImp >::twistInNeighbor().

template<class GridImp>
int Dune::ALU3dGridIntersectionIterator< GridImp >::twistInSelf (  )  const [inline, inherited]

returns twist of face compared to inner element

References Dune::ALU3dGridIntersectionIterator< GridImp >::twistInInside().

template<class GridImp>
GeometryType Dune::ALU3dGridIntersectionIterator< GridImp >::type (  )  const [inherited]

obtain the type of reference element for this intersection

template<class GridImp>
NormalType& Dune::ALU3dGridIntersectionIterator< GridImp >::unitOuterNormal ( const FieldVector< alu3d_ctype, dim-1 > &  local  )  const [inherited]

return unit outer normal, this should be dependent on local coordinates for higher order boundary


Friends And Related Function Documentation

template<class GridImp >
friend class ALU3dGridEntity< 0, dim, GridImp > [friend]
template<class GridImp >
friend class IntersectionIteratorWrapper< GridImp, ThisType > [friend]

Member Data Documentation

template<class GridImp>
FaceInfoType Dune::ALU3dGridIntersectionIterator< GridImp >::connector_ [mutable, protected, inherited]

structure containing the topological and geometrical information about the face which the iterator points to

Referenced by Dune::ALU3dGridLevelIntersectionIterator< GridImp >::conforming(), and Dune::ALU3dGridIntersectionIterator< GridImp >::conforming().

template<class GridImp>
bool Dune::ALU3dGridIntersectionIterator< GridImp >::done_ [protected, inherited]
template<class GridImp>
const FactoryType& Dune::ALU3dGridIntersectionIterator< GridImp >::factory_ [protected, inherited]
template<class GridImp>
GeometryInfoType Dune::ALU3dGridIntersectionIterator< GridImp >::geoProvider_ [mutable, protected, inherited]
template<class GridImp>
const BNDFaceType* Dune::ALU3dGridIntersectionIterator< GridImp >::ghost_ [protected, inherited]

current pointer to ghost face if iterator was started from ghost element

template<class GridImp>
int Dune::ALU3dGridIntersectionIterator< GridImp >::index_ [mutable, protected, inherited]
template<class GridImp>
int Dune::ALU3dGridIntersectionIterator< GridImp >::innerLevel_ [mutable, protected, inherited]
template<class GridImp>
const IMPLElementType* Dune::ALU3dGridIntersectionIterator< GridImp >::item_ [protected, inherited]

current element from which we started the intersection iterator

template<class GridImp>
NormalType Dune::ALU3dGridIntersectionIterator< GridImp >::unitOuterNormal_ [mutable, protected, inherited]

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].