dune-grid-glue  2.3.0
Public Types | Public Member Functions | Friends | List of all members
Dune::GridGlue::Intersection< P0, P1, I, O > Class Template Reference

The intersection of two entities of the two patches of a GridGlue. More...

#include <dune/grid-glue/gridglue.hh>

Inheritance diagram for Dune::GridGlue::Intersection< P0, P1, I, O >:
Inheritance graph

Public Types

enum  { coorddim = Traits::coorddim, mydim = Traits::mydim, insidePatch = Traits::insidePatch, outsidePatch = Traits::outsidePatch }
 
typedef IntersectionTraits< P0,
P1, I, O > 
Traits
 
typedef Traits::GridGlue GridGlue
 
typedef Traits::IntersectionData IntersectionData
 
typedef Traits::InsideGridView InsideGridView
 
typedef Traits::InsideLocalGeometry InsideLocalGeometry
 
typedef Traits::OutsideGridView OutsideGridView
 
typedef
Traits::OutsideLocalGeometry 
OutsideLocalGeometry
 
typedef Traits::OutsideGeometry OutsideGeometry
 
typedef Traits::Geometry Geometry
 
typedef Traits::ctype ctype
 
typedef
InsideGridView::Traits::template
Codim< 0 >::Entity 
InsideEntity
 
typedef
InsideGridView::Traits::template
Codim< 0 >::EntityPointer 
InsideEntityPointer
 
typedef
OutsideGridView::Traits::template
Codim< 0 >::Entity 
OutsideEntity
 
typedef
OutsideGridView::Traits::template
Codim< 0 >::EntityPointer 
OutsideEntityPointer
 
typedef Traits::LocalCoordinate LocalCoordinate
 
typedef Traits::GlobalCoordinate GlobalCoordinate
 

Public Member Functions

 Intersection (const GridGlue *glue, const IntersectionData *i)
 Constructor for a given Dataset. More...
 
InsideEntityPointer inside (unsigned int parentId=0) const
 Return EntityPointer to the Entity on the inside of this intersection. More...
 
OutsideEntityPointer outside (unsigned int parentId=0) const
 Return EntityPointer to the Entity on the outside of this intersection. More...
 
bool conforming () const
 Return true if intersection is conforming. More...
 
const InsideLocalGeometrygeometryInInside (unsigned int parentId=0) const
 Geometric information about this intersection in local coordinates of the inside() entity. More...
 
const OutsideLocalGeometrygeometryInOutside (unsigned int parentId=0) const
 Geometric information about this intersection in local coordinates of the outside() entity. More...
 
const Geometrygeometry () const
 Geometric information about this intersection as part of the inside grid. More...
 
const OutsideGeometrygeometryOutside () const
 Geometric information about this intersection as part of the outside grid. More...
 
Dune::GeometryType type () const
 Type of reference element for this intersection. More...
 
bool self () const
 For parallel computations: Return true if inside() entity exists locally. More...
 
size_t neighbor (unsigned int g=0) const
 For parallel computations: Return true if outside() entity exists locally. More...
 
int indexInInside (unsigned int parentId=0) const
 Local number of codim 1 entity in the inside() Entity where intersection is contained in. More...
 
int indexInOutside (unsigned int parentId=0) const
 Local number of codim 1 entity in outside() Entity where intersection is contained in. More...
 
GlobalCoordinate outerNormal (const Dune::FieldVector< ctype, mydim > &local) const
 Return an outer normal (length not necessarily 1) More...
 
GlobalCoordinate unitOuterNormal (const Dune::FieldVector< ctype, mydim > &local) const
 Return a unit outer normal. More...
 
GlobalCoordinate integrationOuterNormal (const Dune::FieldVector< ctype, mydim > &local) const
 Return an outer normal with the length of the integration element. More...
 
GlobalCoordinate centerUnitOuterNormal () const
 Unit outer normal at the center of the intersection. More...
 
Intersection< P0, P1, O, I > flip () const
 

Friends

class IntersectionIndexSet< P0, P1 >
 

Detailed Description

template<typename P0, typename P1, int I, int O>
class Dune::GridGlue::Intersection< P0, P1, I, O >

The intersection of two entities of the two patches of a GridGlue.

Member Typedef Documentation

template<typename P0, typename P1, int I, int O>
typedef Traits::ctype Dune::GridGlue::Intersection< P0, P1, I, O >::ctype
template<typename P0, typename P1, int I, int O>
typedef Traits::Geometry Dune::GridGlue::Intersection< P0, P1, I, O >::Geometry
template<typename P0, typename P1, int I, int O>
typedef Traits::GlobalCoordinate Dune::GridGlue::Intersection< P0, P1, I, O >::GlobalCoordinate
template<typename P0, typename P1, int I, int O>
typedef Traits::GridGlue Dune::GridGlue::Intersection< P0, P1, I, O >::GridGlue
template<typename P0, typename P1, int I, int O>
typedef InsideGridView::Traits::template Codim<0>::Entity Dune::GridGlue::Intersection< P0, P1, I, O >::InsideEntity
template<typename P0, typename P1, int I, int O>
typedef InsideGridView::Traits::template Codim<0>::EntityPointer Dune::GridGlue::Intersection< P0, P1, I, O >::InsideEntityPointer
template<typename P0, typename P1, int I, int O>
typedef Traits::InsideGridView Dune::GridGlue::Intersection< P0, P1, I, O >::InsideGridView
template<typename P0, typename P1, int I, int O>
typedef Traits::InsideLocalGeometry Dune::GridGlue::Intersection< P0, P1, I, O >::InsideLocalGeometry
template<typename P0, typename P1, int I, int O>
typedef Traits::IntersectionData Dune::GridGlue::Intersection< P0, P1, I, O >::IntersectionData
template<typename P0, typename P1, int I, int O>
typedef Traits::LocalCoordinate Dune::GridGlue::Intersection< P0, P1, I, O >::LocalCoordinate
template<typename P0, typename P1, int I, int O>
typedef OutsideGridView::Traits::template Codim<0>::Entity Dune::GridGlue::Intersection< P0, P1, I, O >::OutsideEntity
template<typename P0, typename P1, int I, int O>
typedef OutsideGridView::Traits::template Codim<0>::EntityPointer Dune::GridGlue::Intersection< P0, P1, I, O >::OutsideEntityPointer
template<typename P0, typename P1, int I, int O>
typedef Traits::OutsideGeometry Dune::GridGlue::Intersection< P0, P1, I, O >::OutsideGeometry
template<typename P0, typename P1, int I, int O>
typedef Traits::OutsideGridView Dune::GridGlue::Intersection< P0, P1, I, O >::OutsideGridView
template<typename P0, typename P1, int I, int O>
typedef Traits::OutsideLocalGeometry Dune::GridGlue::Intersection< P0, P1, I, O >::OutsideLocalGeometry
template<typename P0, typename P1, int I, int O>
typedef IntersectionTraits<P0,P1,I,O> Dune::GridGlue::Intersection< P0, P1, I, O >::Traits

Member Enumeration Documentation

template<typename P0, typename P1, int I, int O>
anonymous enum
Enumerator
coorddim 

Dimension of the world space of the intersection.

mydim 

Dimension of the intersection.

insidePatch 

document the inside & outside patch

outsidePatch 

Constructor & Destructor Documentation

template<typename P0, typename P1, int I, int O>
Dune::GridGlue::Intersection< P0, P1, I, O >::Intersection ( const GridGlue glue,
const IntersectionData i 
)
inline

Constructor for a given Dataset.

Member Function Documentation

template<typename P0, typename P1, int I, int O>
GlobalCoordinate Dune::GridGlue::Intersection< P0, P1, I, O >::centerUnitOuterNormal ( ) const
inline

Unit outer normal at the center of the intersection.

Used for some grids that do not implement element geometries

template<typename P0, typename P1, int I, int O>
bool Dune::GridGlue::Intersection< P0, P1, I, O >::conforming ( ) const
inline

Return true if intersection is conforming.

template<typename P0, typename P1, int I, int O>
Intersection<P0,P1,O,I> Dune::GridGlue::Intersection< P0, P1, I, O >::flip ( ) const
inline
template<typename P0, typename P1, int I, int O>
const Geometry& Dune::GridGlue::Intersection< P0, P1, I, O >::geometry ( ) const
inline
template<typename P0, typename P1, int I, int O>
const InsideLocalGeometry& Dune::GridGlue::Intersection< P0, P1, I, O >::geometryInInside ( unsigned int  parentId = 0) const
inline

Geometric information about this intersection in local coordinates of the inside() entity.

template<typename P0, typename P1, int I, int O>
const OutsideLocalGeometry& Dune::GridGlue::Intersection< P0, P1, I, O >::geometryInOutside ( unsigned int  parentId = 0) const
inline

Geometric information about this intersection in local coordinates of the outside() entity.

template<typename P0, typename P1, int I, int O>
const OutsideGeometry& Dune::GridGlue::Intersection< P0, P1, I, O >::geometryOutside ( ) const
inline

Geometric information about this intersection as part of the outside grid.

template<typename P0, typename P1, int I, int O>
int Dune::GridGlue::Intersection< P0, P1, I, O >::indexInInside ( unsigned int  parentId = 0) const
inline

Local number of codim 1 entity in the inside() Entity where intersection is contained in.

Referenced by Dune::GridGlue::Intersection< P0, P1, inside, outside >::indexInInside(), and Dune::GridGlue::Intersection< P0, P1, inside, outside >::indexInOutside().

template<typename P0, typename P1, int I, int O>
int Dune::GridGlue::Intersection< P0, P1, I, O >::indexInOutside ( unsigned int  parentId = 0) const
inline

Local number of codim 1 entity in outside() Entity where intersection is contained in.

template<typename P0, typename P1, int I, int O>
InsideEntityPointer Dune::GridGlue::Intersection< P0, P1, I, O >::inside ( unsigned int  parentId = 0) const
inline

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

template<typename P0, typename P1, int I, int O>
GlobalCoordinate Dune::GridGlue::Intersection< P0, P1, I, O >::integrationOuterNormal ( const Dune::FieldVector< ctype, mydim > &  local) const
inline

Return an outer normal with the length of the integration element.

template<typename P0, typename P1, int I, int O>
size_t Dune::GridGlue::Intersection< P0, P1, I, O >::neighbor ( unsigned int  g = 0) const
inline
template<typename P0, typename P1, int I, int O>
GlobalCoordinate Dune::GridGlue::Intersection< P0, P1, I, O >::outerNormal ( const Dune::FieldVector< ctype, mydim > &  local) const
inline

Return an outer normal (length not necessarily 1)

Todo:
Implement the general n-ary cross product here

Referenced by Dune::GridGlue::Intersection< P0, P1, inside, outside >::unitOuterNormal().

template<typename P0, typename P1, int I, int O>
OutsideEntityPointer Dune::GridGlue::Intersection< P0, P1, I, O >::outside ( unsigned int  parentId = 0) const
inline

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

template<typename P0, typename P1, int I, int O>
bool Dune::GridGlue::Intersection< P0, P1, I, O >::self ( ) const
inline

For parallel computations: Return true if inside() entity exists locally.

template<typename P0, typename P1, int I, int O>
Dune::GeometryType Dune::GridGlue::Intersection< P0, P1, I, O >::type ( ) const
inline
template<typename P0, typename P1, int I, int O>
GlobalCoordinate Dune::GridGlue::Intersection< P0, P1, I, O >::unitOuterNormal ( const Dune::FieldVector< ctype, mydim > &  local) const
inline

Friends And Related Function Documentation

template<typename P0, typename P1, int I, int O>
friend class IntersectionIndexSet< P0, P1 >
friend

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