Dune Core Modules (2.4.1)

Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl > Class Template Reference

Class that wraps IntersectionIteratorImp of a grid and gets it's internal object from a object stack hold by the grid. More...

#include <dune/grid/alugrid/common/intersectioniteratorwrapper.hh>

Public Types

enum  
 dimension
 
enum  
 dimensionworld
 
typedef GridImp::ctype ctype
 define type used for coordinates in grid module
 
typedef GridImp::template Codim< 0 >::Entity Entity
 Entity type.
 
typedef GridImp::template Codim< 0 >::EntityPointer EntityPointer
 type of EntityPointer
 
typedef GridImp::template Codim< 1 >::Geometry Geometry
 type of intersectionGlobal
 
typedef GridImp::template Codim< 1 >::LocalGeometry LocalGeometry
 type of intersection*Local
 
typedef FieldVector< ctype, dimworld > NormalType
 type of normal vector
 

Public Member Functions

template<class EntityImp >
 IntersectionIteratorWrapper (const EntityImp &en, int wLevel, bool end)
 constructor called from the ibegin and iend method
 
 IntersectionIteratorWrapper (const ThisType &org)
 The copy constructor.
 
ThisTypeoperator= (const ThisType &org)
 the f*cking assignment operator
 
 ~IntersectionIteratorWrapper ()
 The Destructor puts internal object back to stack.
 
bool equals (const ThisType &i) const
 the equality method
 
void increment ()
 increment iterator
 
EntityPointer outside () const
 access neighbor
 
EntityPointer inside () const
 access entity where iteration started
 
bool boundary () const
 
bool neighbor () const
 return true if across the intersection a neighbor on this level exists
 
int boundaryId () const
 return information about the Boundary
 
size_t boundarySegmentIndex () const
 return the boundary segment index
 
LocalGeometry geometryInInside () const
 
Geometry geometry () const
 
GeometryType type () const
 obtain the type of reference element for this intersection
 
int indexInInside () const
 
LocalGeometry geometryInOutside () const
 
int indexInOutside () const
 
int twistInInside () const
 twist of the face seen from the inner element
 
int twistInOutside () const
 twist of the face seen from the outer element
 
const NormalType unitOuterNormal (const FieldVector< ctype, dim-1 > &local) const
 
const NormalType centerUnitOuterNormal () const
 
const NormalType outerNormal (const FieldVector< ctype, dim-1 > &local) const
 
const NormalType integrationOuterNormal (const FieldVector< ctype, dim-1 > &local) const
 
int level () const
 return level of iterator
 
bool conforming () const
 return true if intersection is conform (i.e. only one neighbor)
 
IntersectionIteratorImp & it ()
 returns reference to underlying intersection iterator implementation
 

Detailed Description

template<class GridImp, class IntersectionIteratorImpl>
class Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >

Class that wraps IntersectionIteratorImp of a grid and gets it's internal object from a object stack hold by the grid.

Member Function Documentation

◆ boundary()

template<class GridImp , class IntersectionIteratorImpl >
bool Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::boundary ( ) const
inline

return true if intersection is with boundary.

Todo:
connection with boundary information, processor/outer boundary

References Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::it().

◆ centerUnitOuterNormal()

template<class GridImp , class IntersectionIteratorImpl >
const NormalType Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::centerUnitOuterNormal ( ) const
inline

◆ geometry()

template<class GridImp , class IntersectionIteratorImpl >
Geometry Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::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.

References Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::it().

Referenced by Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::centerUnitOuterNormal().

◆ geometryInInside()

template<class GridImp , class IntersectionIteratorImpl >
LocalGeometry Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::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.

References Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::it().

◆ geometryInOutside()

template<class GridImp , class IntersectionIteratorImpl >
LocalGeometry Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::geometryInOutside ( ) const
inline

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

References Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::it().

◆ indexInInside()

template<class GridImp , class IntersectionIteratorImpl >
int Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::indexInInside ( ) const
inline

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

References Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::it().

◆ indexInOutside()

template<class GridImp , class IntersectionIteratorImpl >
int Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::indexInOutside ( ) const
inline

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

References Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::it().

◆ integrationOuterNormal()

template<class GridImp , class IntersectionIteratorImpl >
const NormalType Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::integrationOuterNormal ( const FieldVector< ctype, dim-1 > &  local) const
inline

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

References Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::it().

◆ outerNormal()

template<class GridImp , class IntersectionIteratorImpl >
const NormalType Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::outerNormal ( const FieldVector< ctype, dim-1 > &  local) const
inline

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

References Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::it().

◆ unitOuterNormal()

template<class GridImp , class IntersectionIteratorImpl >
const NormalType Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::unitOuterNormal ( const FieldVector< ctype, dim-1 > &  local) const
inline

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

References Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::it().

Referenced by Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::centerUnitOuterNormal().


The documentation for this class was generated from the following file:
Creative Commons License   |  Legal Statements / Impressum  |  Hosted by TU Dresden  |  generated with Hugo v0.111.3 (Nov 13, 23:29, 2024)