Dune::ALU2dGridIntersectionBase< GridImp > Class Template Reference

#include <dune/grid/alugrid/2d/intersection.hh>

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

List of all members.

Classes

struct  impl

Public Types

enum  { dimension = GridImp::dimension }
enum  { dimensionworld = GridImp::dimensionworld }
typedef
GridImp::GridObjectFactoryType 
FactoryType
typedef
ALU2dGridIntersectionBase
< GridImp > 
ImplementationType
typedef Dune::Intersection
< GridImp,
Dune::ALU2dGridIntersectionBase
Intersection
 type of the intersection
typedef GridImp::template
Codim< 0 >::Entity 
Entity
typedef GridImp::template
Codim< 0 >::EntityPointer 
EntityPointer
typedef GridImp::template
Codim< 1 >::Geometry 
Geometry
typedef GridImp::template
Codim< 1 >::LocalGeometry 
LocalGeometry
typedef ALU2dGridEntity
< 0, dim, GridImp > 
EntityImp
typedef ALU2dGridGeometry< dim-1,
dimworld, GridImp > 
GeometryImp
typedef ALU2dGridGeometry< dim-1,
dim, GridImp > 
LocalGeometryImp
typedef FieldVector
< alu2d_ctype, dimworld > 
NormalType
typedef FieldVector
< alu2d_ctype, dim-1 > 
LocalCoordinate
typedef ALU2dGridEntityPointer
< 0, GridImp > 
EntityPointerImp
typedef
MakeableInterfaceObject
< Geometry
GeometryObject
typedef
MakeableInterfaceObject
< LocalGeometry
LocalGeometryObject
typedef ALU2dImplTraits
< dimworld, eltype >
::ThinelementType 
ThinelementType
typedef ALU2dImplTraits
< dimworld, eltype >
::HElementType 
HElementType
typedef ALU2dImplTraits
< dimworld, eltype >
::HBndElType 
HBndElType
typedef
ALU2DIntersectionGeometryStorage
< LocalGeometry
LocalGeometryStorageType
typedef
ALU2dGridIntersectionBase
< GridImp > 
ThisType

Public Member Functions

 ALU2dGridIntersectionBase (const FactoryType &factory, int wLevel)
 The default Constructor , creating an empty ALU2dGridIntersectionIterator.
 ALU2dGridIntersectionBase (const ThisType &org)
 The copy constructor.
virtual ~ALU2dGridIntersectionBase ()
void assign (const ThisType &org)
 The copy constructor.
const Intersectiondereference () const
bool equals (const ThisType &i) const
 check whether entities are the same or whether iterator is done
int level () const
 return level of inside(entity)
bool boundary () const
 return true if intersection is with boundary
int boundaryId () const
 return boundary type
size_t boundarySegmentIndex () const
 return the boundary segment index
bool neighbor () const
 return true if intersection is with neighbor on this level
EntityPointer inside () const
 return EntityPointer to the Entity on the inside of this intersection.
EntityPointer outside () const
 return EntityPointer to the Entity on the outside of this intersection.
int indexInInside () const
 local index of codim 1 entity in self where intersection is contained in
int indexInOutside () const
 local index of codim 1 entity in neighbor where intersection is contained in
int twistInInside () const
int twistInOutside () const
int twistInSelf () const
int twistInNeighbor () const
NormalType outerNormal (const LocalCoordinate &local) const
NormalType integrationOuterNormal (const LocalCoordinate &local) const
NormalType unitOuterNormal (const LocalCoordinate &local) const
const LocalGeometrygeometryInInside () const
const LocalGeometrygeometryInOutside () const
const Geometrygeometry () const
GeometryType type () const
 obtain the type of reference element for this intersection

Protected Member Functions

const GridImp & grid () const
virtual bool conforming () const =0
void checkValid ()
 return true if intersection is with boundary
void done (const HElementType *inside)
void done (const EntityImp &en)
void unsetUp2Date ()
void first (const EntityImp &en, int wLevel)
 reset IntersectionIterator to first neighbour
virtual void setFirstItem (const HElementType &elem, int wLevel)=0

Protected Attributes

struct
Dune::ALU2dGridIntersectionBase::impl 
current
GeometryObject intersectionGlobal_
LocalGeometryObject intersectionSelfLocal_
LocalGeometryObject intersectionNeighborLocal_
const FactoryTypefactory_
const LocalGeometryStorageTypelocalGeomStorage_
int walkLevel_

Friends

class LevelIntersectionIteratorWrapper< GridImp >
class LeafIntersectionIteratorWrapper< GridImp >
class IntersectionIteratorWrapper< GridImp, ThisType >

Detailed Description

template<class GridImp>
class Dune::ALU2dGridIntersectionBase< GridImp >

Mesh entities of codimension 0 ("elements") allow to visit all neighbors, wh a neighbor is an entity of codimension 0 which has a common entity of codimens These neighbors are accessed via a IntersectionIterator. This allows the implement non-matching meshes. The number of neigbors may be different from the number o of an element!


Member Typedef Documentation

template<class GridImp>
typedef GridImp::template Codim<0>::Entity Dune::ALU2dGridIntersectionBase< GridImp >::Entity
template<class GridImp>
typedef ALU2dGridEntityPointer<0,GridImp> Dune::ALU2dGridIntersectionBase< GridImp >::EntityPointerImp
template<class GridImp>
typedef GridImp :: GridObjectFactoryType Dune::ALU2dGridIntersectionBase< GridImp >::FactoryType
template<class GridImp>
typedef GridImp::template Codim<1>::Geometry Dune::ALU2dGridIntersectionBase< GridImp >::Geometry
template<class GridImp>
typedef ALU2dImplTraits< dimworld, eltype >::HBndElType Dune::ALU2dGridIntersectionBase< GridImp >::HBndElType
template<class GridImp>
typedef ALU2dImplTraits< dimworld, eltype >::HElementType Dune::ALU2dGridIntersectionBase< GridImp >::HElementType
template<class GridImp>
typedef ALU2dGridIntersectionBase< GridImp > Dune::ALU2dGridIntersectionBase< GridImp >::ImplementationType

type of the intersection

template<class GridImp>
typedef FieldVector< alu2d_ctype, dim-1 > Dune::ALU2dGridIntersectionBase< GridImp >::LocalCoordinate
template<class GridImp>
typedef ALU2dImplTraits< dimworld, eltype >::ThinelementType Dune::ALU2dGridIntersectionBase< GridImp >::ThinelementType
template<class GridImp>
typedef ALU2dGridIntersectionBase<GridImp> Dune::ALU2dGridIntersectionBase< GridImp >::ThisType

Member Enumeration Documentation

template<class GridImp>
anonymous enum
Enumerator:
dimension 
template<class GridImp>
anonymous enum
Enumerator:
dimensionworld 

Constructor & Destructor Documentation

template<class GridImp >
Dune::ALU2dGridIntersectionBase< GridImp >::ALU2dGridIntersectionBase ( const FactoryType factory,
int  wLevel 
) [inline]

The default Constructor , creating an empty ALU2dGridIntersectionIterator.

References Dune::ALU2dGridIntersectionBase< GridImp >::done().

template<class GridImp>
Dune::ALU2dGridIntersectionBase< GridImp >::ALU2dGridIntersectionBase ( const ThisType org  ) 

The copy constructor.

template<class GridImp>
virtual Dune::ALU2dGridIntersectionBase< GridImp >::~ALU2dGridIntersectionBase (  )  [inline, virtual]

Member Function Documentation

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

The copy constructor.

template<class GridImp >
bool Dune::ALU2dGridIntersectionBase< GridImp >::boundary (  )  const [inline]
template<class GridImp >
size_t Dune::ALU2dGridIntersectionBase< GridImp >::boundarySegmentIndex (  )  const [inline]
template<class GridImp>
virtual bool Dune::ALU2dGridIntersectionBase< GridImp >::conforming (  )  const [protected, pure virtual]
template<class GridImp>
const Intersection& Dune::ALU2dGridIntersectionBase< GridImp >::dereference (  )  const [inline]
template<class GridImp>
bool Dune::ALU2dGridIntersectionBase< GridImp >::equals ( const ThisType i  )  const

check whether entities are the same or whether iterator is done

template<class GridImp >
void Dune::ALU2dGridIntersectionBase< GridImp >::first ( const EntityImp en,
int  wLevel 
) [inline, protected]
template<class GridImp >
int Dune::ALU2dGridIntersectionBase< GridImp >::indexInInside (  )  const [inline]

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

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

References ALU2DSPACE, Dune::ALU2dGridIntersectionBase< GridImp >::current, Dune::ALU2dGridIntersectionBase< GridImp >::impl::index_, Dune::mixed, Dune::ALU2dGridIntersectionBase< GridImp >::impl::nFaces(), and ALU2DSPACENAME::triangle.

template<class GridImp >
int Dune::ALU2dGridIntersectionBase< GridImp >::indexInOutside (  )  const [inline]

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

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

References ALU2DSPACE, Dune::ALU2dGridIntersectionBase< GridImp >::current, Dune::mixed, Dune::ALU2dGridIntersectionBase< GridImp >::impl::nFaces(), Dune::ALU2dGridIntersectionBase< GridImp >::impl::opposite(), and ALU2DSPACENAME::triangle.

template<class GridImp >
ALU2dGridIntersectionBase< GridImp >::NormalType Dune::ALU2dGridIntersectionBase< GridImp >::integrationOuterNormal ( const LocalCoordinate local  )  const [inline]
template<class GridImp >
int Dune::ALU2dGridIntersectionBase< GridImp >::level (  )  const [inline]
template<class GridImp >
bool Dune::ALU2dGridIntersectionBase< GridImp >::neighbor (  )  const [inline]

return true if intersection is with neighbor on this level

References Dune::ALU2dGridIntersectionBase< GridImp >::current, and Dune::ALU2dGridIntersectionBase< GridImp >::impl::outside().

template<class GridImp>
virtual void Dune::ALU2dGridIntersectionBase< GridImp >::setFirstItem ( const HElementType elem,
int  wLevel 
) [protected, pure virtual]
template<class GridImp >
int Dune::ALU2dGridIntersectionBase< GridImp >::twistInInside (  )  const [inline]
template<class GridImp>
int Dune::ALU2dGridIntersectionBase< GridImp >::twistInNeighbor (  )  const [inline]
template<class GridImp>
int Dune::ALU2dGridIntersectionBase< GridImp >::twistInSelf (  )  const [inline]
template<class GridImp >
GeometryType Dune::ALU2dGridIntersectionBase< GridImp >::type (  )  const [inline]

obtain the type of reference element for this intersection

References ALU2DSPACE, and ALU2DSPACENAME::triangle.

template<class GridImp >
ALU2dGridIntersectionBase< GridImp >::NormalType Dune::ALU2dGridIntersectionBase< GridImp >::unitOuterNormal ( const LocalCoordinate local  )  const [inline]

Friends And Related Function Documentation

template<class GridImp>
friend class LeafIntersectionIteratorWrapper< GridImp > [friend]
template<class GridImp>
friend class LevelIntersectionIteratorWrapper< GridImp > [friend]

Member Data Documentation


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

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