dune-grid  2.3.0
Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
Dune::ALU2dGridIntersectionBase< GridImp > Class Template Referenceabstract

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

Inheritance diagram for Dune::ALU2dGridIntersectionBase< GridImp >:
Dune::ALU2dGridLeafIntersectionIterator< GridImp > Dune::ALU2dGridLevelIntersectionIterator< GridImp >

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
< GridImp > > 
Intersection
 type of the intersection More...
 
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 FieldVector
< alu2d_ctype, dimworld > 
NormalType
 
typedef FieldVector
< alu2d_ctype, dim-1 > 
LocalCoordinate
 
typedef ALU2dGridEntityPointer
< 0, GridImp > 
EntityPointerImp
 
typedef ALU2dImplTraits
< dimworld, eltype >
::ThinelementType 
ThinelementType
 
typedef ALU2dImplTraits
< dimworld, eltype >
::HElementType 
HElementType
 
typedef ALU2dImplTraits
< dimworld, eltype >
::HBndElType 
HBndElType
 
typedef
ALU2DIntersectionGeometryStorage
< GridImp, LocalGeometryImpl > 
LocalGeometryStorageType
 
typedef
ALU2dGridIntersectionBase
< GridImp > 
ThisType
 

Public Member Functions

 ALU2dGridIntersectionBase (const FactoryType &factory, int wLevel)
 The default Constructor , creating an empty ALU2dGridIntersectionIterator. More...
 
 ALU2dGridIntersectionBase (const ThisType &org)
 The copy constructor. More...
 
virtual ~ALU2dGridIntersectionBase ()
 
void assign (const ThisType &org)
 The copy constructor. More...
 
const Intersectiondereference () const
 
bool equals (const ThisType &i) const
 check whether entities are the same or whether iterator is done More...
 
int level () const
 return level of inside(entity) More...
 
bool boundary () const
 return true if intersection is with boundary More...
 
int boundaryId () const
 return boundary type More...
 
size_t boundarySegmentIndex () const
 return the boundary segment index More...
 
bool neighbor () const
 return true if intersection is with neighbor on this level More...
 
EntityPointer inside () const
 return EntityPointer to the Entity on the inside of this intersection. More...
 
EntityPointer outside () const
 return EntityPointer to the Entity on the outside of this intersection. More...
 
int indexInInside () const
 local index of codim 1 entity in self where intersection is contained in More...
 
int indexInOutside () const
 local index of codim 1 entity in neighbor where intersection is contained in More...
 
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
 
LocalGeometry geometryInInside () const
 
LocalGeometry geometryInOutside () const
 
Geometry geometry () const
 
GeometryType type () const
 obtain the type of reference element for this intersection More...
 

Protected Member Functions

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

Protected Attributes

struct
Dune::ALU2dGridIntersectionBase::impl 
current
 
GeometryImpl intersectionGlobal_
 
LocalGeometryImpl intersectionSelfLocal_
 
LocalGeometryImpl 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 ALU2dGridEntity<0,dim,GridImp> Dune::ALU2dGridIntersectionBase< GridImp >::EntityImp
template<class GridImp>
typedef GridImp::template Codim<0>::EntityPointer Dune::ALU2dGridIntersectionBase< GridImp >::EntityPointer
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
template<class GridImp>
typedef Dune::Intersection< GridImp, Dune::ALU2dGridIntersectionBase< GridImp > > Dune::ALU2dGridIntersectionBase< GridImp >::Intersection

type of the intersection

template<class GridImp>
typedef FieldVector< alu2d_ctype, dim-1 > Dune::ALU2dGridIntersectionBase< GridImp >::LocalCoordinate
template<class GridImp>
typedef GridImp::template Codim<1>::LocalGeometry Dune::ALU2dGridIntersectionBase< GridImp >::LocalGeometry
template<class GridImp>
typedef ALU2DIntersectionGeometryStorage< GridImp, LocalGeometryImpl > Dune::ALU2dGridIntersectionBase< GridImp >::LocalGeometryStorageType
template<class GridImp>
typedef FieldVector< alu2d_ctype, dimworld > Dune::ALU2dGridIntersectionBase< GridImp >::NormalType
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)
inline

The copy constructor.

template<class GridImp>
virtual Dune::ALU2dGridIntersectionBase< GridImp >::~ALU2dGridIntersectionBase ( )
inlinevirtual

Member Function Documentation

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

return true if intersection is with boundary

template<class GridImp >
int Dune::ALU2dGridIntersectionBase< GridImp >::boundaryId ( ) const
inline

return boundary type

References Dune::Alberta::abs().

template<class GridImp >
size_t Dune::ALU2dGridIntersectionBase< GridImp >::boundarySegmentIndex ( ) const
inline

return the boundary segment index

template<class GridImp >
void Dune::ALU2dGridIntersectionBase< GridImp >::checkValid ( )
inlineprotected

return true if intersection is with boundary

References Dune::All_Partition.

template<class GridImp>
virtual bool Dune::ALU2dGridIntersectionBase< GridImp >::conforming ( ) const
protectedpure virtual
template<class GridImp>
const Intersection& Dune::ALU2dGridIntersectionBase< GridImp >::dereference ( ) const
inline
template<class GridImp >
void Dune::ALU2dGridIntersectionBase< GridImp >::done ( const HElementType inside)
inlineprotected
template<class GridImp>
void Dune::ALU2dGridIntersectionBase< GridImp >::done ( const EntityImp en)
inlineprotected
template<class GridImp >
bool Dune::ALU2dGridIntersectionBase< GridImp >::equals ( const ThisType i) const
inline
template<class GridImp >
void Dune::ALU2dGridIntersectionBase< GridImp >::first ( const EntityImp en,
int  wLevel 
)
inlineprotected
template<class GridImp >
ALU2dGridIntersectionBase< GridImp >::Geometry Dune::ALU2dGridIntersectionBase< GridImp >::geometry ( ) const
inline
template<class GridImp >
ALU2dGridIntersectionBase< GridImp >::LocalGeometry Dune::ALU2dGridIntersectionBase< GridImp >::geometryInInside ( ) const
inline
template<class GridImp >
ALU2dGridIntersectionBase< GridImp >::LocalGeometry Dune::ALU2dGridIntersectionBase< GridImp >::geometryInOutside ( ) const
inline

References Dune::conforming.

template<class GridImp>
const GridImp& Dune::ALU2dGridIntersectionBase< GridImp >::grid ( ) const
inlineprotected
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::mixed, 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::mixed, and ALU2DSPACENAME::triangle.

template<class GridImp >
ALU2dGridIntersectionBase< GridImp >::EntityPointer Dune::ALU2dGridIntersectionBase< GridImp >::inside ( ) const
inline

return EntityPointer to the Entity on the inside of this intersection.

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

return level of inside(entity)

return level of inside() entitiy

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

return true if intersection is with neighbor on this level

template<class GridImp >
ALU2dGridIntersectionBase< GridImp >::NormalType Dune::ALU2dGridIntersectionBase< GridImp >::outerNormal ( const LocalCoordinate local) const
inline

References Dune::cube.

template<class GridImp >
ALU2dGridIntersectionBase< GridImp >::EntityPointer Dune::ALU2dGridIntersectionBase< GridImp >::outside ( ) const
inline

return EntityPointer to the Entity on the outside of this intersection.

template<class GridImp>
virtual void Dune::ALU2dGridIntersectionBase< GridImp >::setFirstItem ( const HElementType elem,
int  wLevel 
)
protectedpure virtual
template<class GridImp >
int Dune::ALU2dGridIntersectionBase< GridImp >::twistInInside ( ) const
inline
template<class GridImp>
int Dune::ALU2dGridIntersectionBase< GridImp >::twistInNeighbor ( ) const
inline
Deprecated:
Use twistInOutside() instead. This method will be removed after Dune 2.3.
Deprecated:
"Use twistInOutside() instead."

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

template<class GridImp >
int Dune::ALU2dGridIntersectionBase< GridImp >::twistInOutside ( ) const
inline
template<class GridImp>
int Dune::ALU2dGridIntersectionBase< GridImp >::twistInSelf ( ) const
inline
Deprecated:
Use twistInInside() instead. This method will be removed after Dune 2.3.
Deprecated:
"Use twistInInside() instead."

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

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
template<class GridImp >
void Dune::ALU2dGridIntersectionBase< GridImp >::unsetUp2Date ( )
inlineprotected

Friends And Related Function Documentation

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

Member Data Documentation

template<class GridImp>
struct Dune::ALU2dGridIntersectionBase::impl Dune::ALU2dGridIntersectionBase< GridImp >::current
protected
template<class GridImp>
const FactoryType& Dune::ALU2dGridIntersectionBase< GridImp >::factory_
protected
template<class GridImp>
GeometryImpl Dune::ALU2dGridIntersectionBase< GridImp >::intersectionGlobal_
mutableprotected
template<class GridImp>
LocalGeometryImpl Dune::ALU2dGridIntersectionBase< GridImp >::intersectionNeighborLocal_
mutableprotected
template<class GridImp>
LocalGeometryImpl Dune::ALU2dGridIntersectionBase< GridImp >::intersectionSelfLocal_
mutableprotected
template<class GridImp>
const LocalGeometryStorageType& Dune::ALU2dGridIntersectionBase< GridImp >::localGeomStorage_
protected
template<class GridImp>
int Dune::ALU2dGridIntersectionBase< GridImp >::walkLevel_
mutableprotected

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