dune-alugrid 2.8.0
|
#include <dune/alugrid/3d/iterator.hh>
Public Types | |
typedef ALUTwists<(dim==3) ? GridImp::elementType==tetra ? 3 :4 :2, dim-1 > | Twists |
typedef Twists::Twist | Twist |
typedef GridImp::template Codim< 0 >::Entity | Entity |
typedef GridImp::template Codim< 0 >::EntityImp | EntityImp |
typedef GridImp::template Codim< 1 >::Geometry | Geometry |
typedef GridImp::template Codim< 1 >::LocalGeometry | LocalGeometry |
typedef ALU3dGridIntersectionIterator< GridImp > | ImplementationType |
typedef Dune::Intersection< GridImp, Dune::ALU3dGridIntersectionIterator< GridImp > > | Intersection |
type of the intersection More... | |
typedef FieldVector< alu3d_ctype, dimworld > | NormalType |
Public Member Functions | |
ALU3dGridIntersectionIterator (const bool levelIntersectionIterator=false) | |
The default Constructor. More... | |
ALU3dGridIntersectionIterator (const ALU3dGridIntersectionIterator< GridImp > &org) | |
The copy constructor. More... | |
void | assign (const ALU3dGridIntersectionIterator< GridImp > &org) |
assignment of iterators More... | |
bool | equals (const ALU3dGridIntersectionIterator< GridImp > &i) const |
The copy constructor. More... | |
void | increment () |
increment iterator More... | |
EntityImp | outside () const |
access neighbor More... | |
EntityImp | inside () const |
access entity where iteration started More... | |
bool | boundary () const |
return true if intersection is with boundary. More... | |
bool | neighbor () const |
return true if across the face an neighbor on leaf exists More... | |
int | boundaryId () const |
return information about the Boundary More... | |
size_t | boundarySegmentIndex () const |
return the boundary segment index More... | |
int | segmentId () const |
return the segment id (non-consecutive) More... | |
LocalGeometry | geometryInInside () const |
Geometry | geometry () const |
GeometryType | type () const |
obtain the type of reference element for this intersection More... | |
int | indexInInside () const |
LocalGeometry | geometryInOutside () const |
int | indexInOutside () const |
Twist | twistInInside () const |
returns twist of face compared to inner element More... | |
Twist | twistInOutside () const |
returns twist of face compared to outer element More... | |
NormalType | unitOuterNormal (const FieldVector< alu3d_ctype, dim-1 > &local) const |
NormalType | outerNormal (const FieldVector< alu3d_ctype, dim-1 > &local) const |
NormalType | integrationOuterNormal (const FieldVector< alu3d_ctype, dim-1 > &local) const |
int | level () const |
return level of iterator (level of item) More... | |
int | outsideLevel () const |
bool | conforming () const |
return true if intersection is conforming More... | |
const GEOFaceType & | getItem () const |
return current face More... | |
int | weight () const |
return communication weight More... | |
void | invalidate () |
Public Attributes | |
unsigned int | refCount_ |
Protected Types | |
enum | IntersectionIteratorType { IntersectionLeaf , IntersectionLevel , IntersectionBoth } |
typedef GridImp::Traits::template Codim< 1 >::GeometryImpl | GeometryImpl |
typedef GridImp::Traits::template Codim< 1 >::LocalGeometryImpl | LocalGeometryImpl |
Protected Member Functions | |
void | done () |
template<class EntityType > | |
void | done (const EntityType &en) |
void | setFirstItem (const HElementType &elem, int wLevel) |
void | setInteriorItem (const HElementType &elem, const BNDFaceType &bnd, int wLevel) |
void | first (const EntityImp &en, int wLevel, const GridImp &grid) |
void | setNewFace (const GEOFaceType &newFace) |
void | buildLocalGeometries () const |
const ALU3dImplTraits< tetra, Comm >::GEOFaceType * | getFace (const GEOTriangleBndType &bnd, int index) const |
const ALU3dImplTraits< hexa, Comm >::GEOFaceType * | getFace (const GEOQuadBndType &bnd, int index) const |
const ALU3dImplTraits< tetra, Comm >::GEOFaceType * | getFace (const GEOTetraElementType &elem, int index) const |
const ALU3dImplTraits< hexa, Comm >::GEOFaceType * | getFace (const GEOHexaElementType &elem, int index) const |
Protected Attributes | |
FaceInfoType | connector_ |
GeometryInfoType | geoProvider_ |
const IMPLElementType * | item_ |
current element from which we started the intersection iterator More... | |
const BNDFaceType * | ghost_ |
current pointer to ghost face if iterator was started from ghost element More... | |
const GridImp * | grid_ |
pointer to grid implementation More... | |
int | innerLevel_ |
int | index_ |
GeometryImpl | intersectionGlobal_ |
LocalGeometryImpl | intersectionSelfLocal_ |
LocalGeometryImpl | intersectionNeighborLocal_ |
NormalType | unitOuterNormal_ |
Mesh entities of codimension 0 ("elements") allow to visit all neighbors, wh a neighbor is an entity of codimension 0 which has a common entity of codimens These neighbors are accessed via a IntersectionIterator. This allows the implement non-matching meshes. The number of neigbors may be different from the number o of an element!
typedef GridImp::template Codim<0>::Entity Dune::ALU3dGridIntersectionIterator< GridImp >::Entity |
typedef GridImp::template Codim<0>::EntityImp Dune::ALU3dGridIntersectionIterator< GridImp >::EntityImp |
typedef GridImp::template Codim<1>::Geometry Dune::ALU3dGridIntersectionIterator< GridImp >::Geometry |
|
protected |
typedef ALU3dGridIntersectionIterator< GridImp > Dune::ALU3dGridIntersectionIterator< GridImp >::ImplementationType |
typedef Dune::Intersection< GridImp, Dune::ALU3dGridIntersectionIterator< GridImp > > Dune::ALU3dGridIntersectionIterator< GridImp >::Intersection |
type of the intersection
typedef GridImp::template Codim<1>::LocalGeometry Dune::ALU3dGridIntersectionIterator< GridImp >::LocalGeometry |
|
protected |
typedef FieldVector<alu3d_ctype, dimworld> Dune::ALU3dGridIntersectionIterator< GridImp >::NormalType |
typedef Twists::Twist Dune::ALU3dGridIntersectionIterator< GridImp >::Twist |
typedef ALUTwists< (dim == 3 ) ? GridImp::elementType == tetra ? 3 : 4 : 2, dim-1 > Dune::ALU3dGridIntersectionIterator< GridImp >::Twists |
|
protected |
|
explicit |
The default Constructor.
alu_inline Dune::ALU3dGridIntersectionIterator< GridImp >::ALU3dGridIntersectionIterator | ( | const ALU3dGridIntersectionIterator< GridImp > & | org | ) |
The copy constructor.
alu_inline void Dune::ALU3dGridIntersectionIterator< GridImp >::assign | ( | const ALU3dGridIntersectionIterator< GridImp > & | org | ) |
assignment of iterators
alu_inline bool Dune::ALU3dGridIntersectionIterator< GridImp >::boundary |
return true if intersection is with boundary.
alu_inline int Dune::ALU3dGridIntersectionIterator< GridImp >::boundaryId |
return information about the Boundary
alu_inline size_t Dune::ALU3dGridIntersectionIterator< GridImp >::boundarySegmentIndex |
return the boundary segment index
|
protected |
|
inline |
return true if intersection is conforming
|
protected |
|
inlineprotected |
alu_inline bool Dune::ALU3dGridIntersectionIterator< GridImp >::equals | ( | const ALU3dGridIntersectionIterator< GridImp > & | i | ) | const |
The copy constructor.
|
protected |
alu_inline ALU3dGridIntersectionIterator< GridImp >::Geometry Dune::ALU3dGridIntersectionIterator< GridImp >::geometry |
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.
alu_inline ALU3dGridIntersectionIterator< GridImp >::LocalGeometry Dune::ALU3dGridIntersectionIterator< GridImp >::geometryInInside |
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.
alu_inline ALU3dGridIntersectionIterator< GridImp >::LocalGeometry Dune::ALU3dGridIntersectionIterator< GridImp >::geometryInOutside |
intersection of codimension 1 of this neighbor with element where iteration started. Here returned element is in LOCAL coordinates of neighbor
|
protected |
|
protected |
|
protected |
|
protected |
|
inline |
return current face
alu_inline void Dune::ALU3dGridIntersectionIterator< GridImp >::increment |
increment iterator
alu_inline int Dune::ALU3dGridIntersectionIterator< GridImp >::indexInInside |
local index of codim 1 entity in self where intersection is contained in
alu_inline int Dune::ALU3dGridIntersectionIterator< GridImp >::indexInOutside |
local index of codim 1 entity in neighbor where intersection is contained
alu_inline ALU3dGridIntersectionIterator< GridImp >::EntityImp Dune::ALU3dGridIntersectionIterator< GridImp >::inside |
access entity where iteration started
alu_inline ALU3dGridIntersectionIterator< GridImp >::NormalType Dune::ALU3dGridIntersectionIterator< GridImp >::integrationOuterNormal | ( | const FieldVector< alu3d_ctype, dim-1 > & | local | ) | const |
return outer normal, this should be dependent on local coordinates for higher order boundary
|
inline |
alu_inline int Dune::ALU3dGridIntersectionIterator< GridImp >::level |
return level of iterator (level of item)
alu_inline bool Dune::ALU3dGridIntersectionIterator< GridImp >::neighbor |
return true if across the face an neighbor on leaf exists
alu_inline ALU3dGridIntersectionIterator< GridImp >::NormalType Dune::ALU3dGridIntersectionIterator< GridImp >::outerNormal | ( | const FieldVector< alu3d_ctype, dim-1 > & | local | ) | const |
return outer normal, this should be dependent on local coordinates for higher order boundary
alu_inline ALU3dGridIntersectionIterator< GridImp >::EntityImp Dune::ALU3dGridIntersectionIterator< GridImp >::outside |
access neighbor
|
inline |
alu_inline int Dune::ALU3dGridIntersectionIterator< GridImp >::segmentId |
return the segment id (non-consecutive)
|
protected |
|
protected |
|
protected |
alu_inline ALU3dGridIntersectionIterator< GridImp >::Twist Dune::ALU3dGridIntersectionIterator< GridImp >::twistInInside |
returns twist of face compared to inner element
alu_inline ALU3dGridIntersectionIterator< GridImp >::Twist Dune::ALU3dGridIntersectionIterator< GridImp >::twistInOutside |
returns twist of face compared to outer element
alu_inline GeometryType Dune::ALU3dGridIntersectionIterator< GridImp >::type |
obtain the type of reference element for this intersection
alu_inline ALU3dGridIntersectionIterator< GridImp >::NormalType Dune::ALU3dGridIntersectionIterator< GridImp >::unitOuterNormal | ( | const FieldVector< alu3d_ctype, dim-1 > & | local | ) | const |
return unit outer normal, this should be dependent on local coordinates for higher order boundary
|
inline |
return communication weight
|
mutableprotected |
structure containing the topological and geometrical information about the face which the iterator points to
|
mutableprotected |
|
protected |
current pointer to ghost face if iterator was started from ghost element
|
protected |
pointer to grid implementation
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
protected |
current element from which we started the intersection iterator
unsigned int Dune::ALU3dGridIntersectionIterator< GridImp >::refCount_ |
|
mutableprotected |