dune-foamgrid 2.8.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Attributes | List of all members
Dune::FoamGridLeafIntersection< GridImp > Class Template Reference

Iterator over all element neighborsMesh 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/foamgrid/foamgrid/foamgridintersections.hh>

Inheritance diagram for Dune::FoamGridLeafIntersection< GridImp >:
Inheritance graph

Public Types

typedef GridImp::template Codim< 0 >::Entity Entity
 

Public Member Functions

bool conforming () const
 Return true if this is a conforming intersection. More...
 
int indexInOutside (std::size_t neighborIndex=0) const
 local number of codim 1 entity in neighbor where intersection is contained More...
 
LocalGeometry geometryInInside () const
 
LocalGeometry geometryInOutside (std::size_t neighborIndex=0) const
 
Geometry geometry () const
 
bool neighbor () const
 return true if across the facet a neighbor on this level exists More...
 
Entity inside () const
 
Entity outside () const
 
bool equals (const FoamGridIntersection< GridImp > &i) const
 equality More...
 
bool boundary () const
 return true if intersection is with boundary. More...
 
int boundarySegmentIndex () const
 return information about the Boundary More...
 
GeometryType type () const
 Geometry type of an intersection. More...
 
int indexInInside () const
 local number of codim 1 entity in self where intersection is contained in More...
 
FieldVector< ctype, dimworld > outerNormal (const FieldVector< ctype, dimgrid-1 > &local) const
 return outer normal More...
 
FieldVector< ctype, dimworld > integrationOuterNormal (const FieldVector< ctype, dimgrid-1 > &local) const
 return outer normal multiplied by the integration element More...
 
FieldVector< ctype, dimworld > unitOuterNormal (const FieldVector< ctype, dimgrid-1 > &local) const
 return unit outer normal More...
 
FieldVector< ctype, dimworld > centerUnitOuterNormal () const
 return unit outer normal at the intersection center More...
 

Protected Attributes

const FoamGridEntityImp< dimgrid, dimgrid, dimworld, ctype > * center_
 
int facetIndex_
 Count on which facet we are lookin' at.
More...
 
std::vector< constFoamGridEntityImp< dimgrid, dimgrid, dimworld, ctype > * >::const_iterator neighbor_
 Iterator to the other neighbor of the intersection. More...
 

Detailed Description

template<class GridImp>
class Dune::FoamGridLeafIntersection< GridImp >

Iterator over all element neighbors

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

◆ Entity

template<class GridImp >
typedef GridImp::template Codim<0>::Entity Dune::FoamGridIntersection< GridImp >::Entity
inherited

Member Function Documentation

◆ boundary()

template<class GridImp >
bool Dune::FoamGridIntersection< GridImp >::boundary ( ) const
inlineinherited

return true if intersection is with boundary.

◆ boundarySegmentIndex()

template<class GridImp >
int Dune::FoamGridIntersection< GridImp >::boundarySegmentIndex ( ) const
inlineinherited

return information about the Boundary

◆ centerUnitOuterNormal()

template<class GridImp >
FieldVector< ctype, dimworld > Dune::FoamGridIntersection< GridImp >::centerUnitOuterNormal ( ) const
inlineinherited

return unit outer normal at the intersection center

◆ conforming()

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

Return true if this is a conforming intersection.

◆ equals()

template<class GridImp >
bool Dune::FoamGridIntersection< GridImp >::equals ( const FoamGridIntersection< GridImp > &  i) const
inlineinherited

equality

◆ geometry()

template<class GridImp >
Geometry Dune::FoamGridLeafIntersection< 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.

◆ geometryInInside()

template<class GridImp >
LocalGeometry Dune::FoamGridLeafIntersection< 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.

◆ geometryInOutside()

template<class GridImp >
LocalGeometry Dune::FoamGridLeafIntersection< GridImp >::geometryInOutside ( std::size_t  neighborIndex = 0) const
inline

intersection of codimension 1 of this neighbor with element where iteration started. Here returned element is in LOCAL coordinates of neighbor In the LeafIntersection the intersection might be non-conforming For surface grids with local non-conforming adaptivity the geometryInOutside is undefined

◆ indexInInside()

template<class GridImp >
int Dune::FoamGridIntersection< GridImp >::indexInInside ( ) const
inlineinherited

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

◆ indexInOutside()

template<class GridImp >
int Dune::FoamGridLeafIntersection< GridImp >::indexInOutside ( std::size_t  neighborIndex = 0) const
inlinevirtual

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

Implements Dune::FoamGridIntersection< GridImp >.

◆ inside()

template<class GridImp >
Entity Dune::FoamGridIntersection< GridImp >::inside ( ) const
inlineinherited

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

◆ integrationOuterNormal()

template<class GridImp >
FieldVector< ctype, dimworld > Dune::FoamGridIntersection< GridImp >::integrationOuterNormal ( const FieldVector< ctype, dimgrid-1 > &  local) const
inlineinherited

return outer normal multiplied by the integration element

◆ neighbor()

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

return true if across the facet a neighbor on this level exists

◆ outerNormal()

template<class GridImp >
FieldVector< ctype, dimworld > Dune::FoamGridIntersection< GridImp >::outerNormal ( const FieldVector< ctype, dimgrid-1 > &  local) const
inlineinherited

return outer normal

◆ outside()

template<class GridImp >
Entity Dune::FoamGridIntersection< GridImp >::outside ( ) const
inlineinherited

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

◆ type()

template<class GridImp >
GeometryType Dune::FoamGridIntersection< GridImp >::type ( ) const
inlineinherited

Geometry type of an intersection.

◆ unitOuterNormal()

template<class GridImp >
FieldVector< ctype, dimworld > Dune::FoamGridIntersection< GridImp >::unitOuterNormal ( const FieldVector< ctype, dimgrid-1 > &  local) const
inlineinherited

return unit outer normal

Member Data Documentation

◆ center_

template<class GridImp >
const FoamGridEntityImp<dimgrid, dimgrid, dimworld, ctype>* Dune::FoamGridIntersection< GridImp >::center_
protectedinherited

◆ facetIndex_

template<class GridImp >
int Dune::FoamGridIntersection< GridImp >::facetIndex_
protectedinherited

Count on which facet we are lookin' at.

◆ neighbor_

template<class GridImp >
std::vector<constFoamGridEntityImp<dimgrid,dimgrid,dimworld,ctype>*>::const_iterator Dune::FoamGridIntersection< GridImp >::neighbor_
protectedinherited

Iterator to the other neighbor of the intersection.


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