Dune Core Modules (2.9.0)

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/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< 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 GridImp &grid, const EntityImp &en, int wLevel, bool end)
 constructor called from the ibegin and iend method
 
bool equals (const ThisType &other) const
 the equality method
 
void increment ()
 increment iterator
 
Entity outside () const
 access neighbor
 
Entity 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
 
int segmentId () const
 return the segment index (non-consecutive)
 
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
 
Twist twistInInside () const
 twist of the face seen from the inner element
 
Twist 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
 
int weight () const
 return weight associated with graph edge between the neighboring elements
 

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

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

References Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::type(), and Dune::IntersectionIteratorWrapper< GridImp, IntersectionIteratorImpl >::unitOuterNormal().

◆ 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().

◆ 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.80.0 (Apr 25, 22:37, 2024)