dune-grid-dev-howto  2.2.0
Public Types | Public Member Functions | Friends
Dune::IdentityGridLeafIntersection< GridImp > Class Template Reference

An intersection with a leaf neighbor elementMesh entities of codimension 0 ("elements") allow to visit all neighbors, where a neighbor is an entity of codimension 0 which has a common entity of codimension 1 These neighbors are accessed via a IntersectionIterator. This allows the implement non-matching meshes. The number of neighbors may be different from the number of an element! More...

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

List of all members.

Public Types

typedef GridImp::template
Codim< 0 >::EntityPointer 
EntityPointer
typedef GridImp::template
Codim< 1 >::Geometry 
Geometry
typedef GridImp::template
Codim< 1 >::LocalGeometry 
LocalGeometry
typedef GridImp::template
Codim< 0 >::Entity 
Entity
typedef FieldVector< ctype,
dimworld > 
NormalVector

Public Member Functions

 IdentityGridLeafIntersection (const GridImp *identityGrid, const HostLeafIntersectionIterator &hostIterator)
EntityPointer inside () const
EntityPointer outside () const
bool boundary () const
 return true if intersection is with boundary.
NormalVector centerUnitOuterNormal () const
 Return unit outer normal (length == 1)
bool neighbor () const
 return true if across the edge an neighbor on this level exists
int boundaryId () const
 return information about the Boundary
size_t boundarySegmentIndex () const
 return the boundary segment index
bool conforming () const
 Return true if this is a conforming intersection.
GeometryType type () const
 Geometry type of an intersection.
LocalGeometry geometryInInside () const
LocalGeometry geometryInOutside () const
Geometry geometry () const
int indexInInside () const
 local number of codim 1 entity in self where intersection is contained in
int indexInOutside () const
 local number of codim 1 entity in neighbor where intersection is contained
FieldVector< ctype,
GridImp::dimensionworld > 
outerNormal (const FieldVector< ctype, GridImp::dimension-1 > &local) const
 return outer normal
FieldVector< ctype,
GridImp::dimensionworld > 
integrationOuterNormal (const FieldVector< ctype, GridImp::dimension-1 > &local) const
 return outer normal multiplied by the integration element
FieldVector< ctype,
GridImp::dimensionworld > 
unitOuterNormal (const FieldVector< ctype, GridImp::dimension-1 > &local) const
 return unit outer normal

Friends

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

Detailed Description

template<class GridImp>
class Dune::IdentityGridLeafIntersection< GridImp >

An intersection with a leaf neighbor element

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


Member Typedef Documentation

template<class GridImp >
typedef GridImp::template Codim<0>::Entity Dune::IdentityGridLeafIntersection< GridImp >::Entity
template<class GridImp >
typedef GridImp::template Codim<0>::EntityPointer Dune::IdentityGridLeafIntersection< GridImp >::EntityPointer
template<class GridImp >
typedef GridImp::template Codim<1>::Geometry Dune::IdentityGridLeafIntersection< GridImp >::Geometry
template<class GridImp >
typedef GridImp::template Codim<1>::LocalGeometry Dune::IdentityGridLeafIntersection< GridImp >::LocalGeometry
template<class GridImp >
typedef FieldVector<ctype, dimworld> Dune::IdentityGridLeafIntersection< GridImp >::NormalVector

Constructor & Destructor Documentation

template<class GridImp >
Dune::IdentityGridLeafIntersection< GridImp >::IdentityGridLeafIntersection ( const GridImp *  identityGrid,
const HostLeafIntersectionIterator &  hostIterator 
)
inline

Member Function Documentation

template<class GridImp >
bool Dune::IdentityGridLeafIntersection< GridImp >::boundary ( ) const
inline

return true if intersection is with boundary.

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

return information about the Boundary

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

return the boundary segment index

template<class GridImp >
NormalVector Dune::IdentityGridLeafIntersection< GridImp >::centerUnitOuterNormal ( ) const
inline

Return unit outer normal (length == 1)

The returned vector is the normal at the center() of the intersection's geometry. It is scaled to have unit length.

template<class GridImp >
bool Dune::IdentityGridLeafIntersection< GridImp >::conforming ( ) const
inline

Return true if this is a conforming intersection.

template<class GridImp >
Geometry Dune::IdentityGridLeafIntersection< GridImp >::geometry ( ) const
inline

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 >
LocalGeometry Dune::IdentityGridLeafIntersection< GridImp >::geometryInInside ( ) const
inline

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 >
LocalGeometry Dune::IdentityGridLeafIntersection< GridImp >::geometryInOutside ( ) const
inline

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

template<class GridImp >
int Dune::IdentityGridLeafIntersection< GridImp >::indexInInside ( ) const
inline

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

template<class GridImp >
int Dune::IdentityGridLeafIntersection< GridImp >::indexInOutside ( ) const
inline

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

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

return EntityPointer to the Entity on the inside of this intersection (that is the Entity where we started this Iterator)

template<class GridImp >
FieldVector<ctype, GridImp::dimensionworld> Dune::IdentityGridLeafIntersection< GridImp >::integrationOuterNormal ( const FieldVector< ctype, GridImp::dimension-1 > &  local) const
inline

return outer normal multiplied by the integration element

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

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

template<class GridImp >
FieldVector<ctype, GridImp::dimensionworld> Dune::IdentityGridLeafIntersection< GridImp >::outerNormal ( const FieldVector< ctype, GridImp::dimension-1 > &  local) const
inline

return outer normal

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

return EntityPointer to the Entity on the outside of this intersection (that is the neighboring Entity)

template<class GridImp >
GeometryType Dune::IdentityGridLeafIntersection< GridImp >::type ( ) const
inline

Geometry type of an intersection.

template<class GridImp >
FieldVector<ctype, GridImp::dimensionworld> Dune::IdentityGridLeafIntersection< GridImp >::unitOuterNormal ( const FieldVector< ctype, GridImp::dimension-1 > &  local) const
inline

return unit outer normal


Friends And Related Function Documentation

template<class GridImp >
friend class HostGridAccess< typename remove_const< GridImp >::type >
friend
template<class GridImp >
friend class IdentityGridLeafIntersectionIterator< GridImp >
friend

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