1 #ifndef DUNE_FEM_THEADFILTER_HH 2 #define DUNE_FEM_THEADFILTER_HH 19 template<
class >
class FilterDefaultImplementation;
26 template<
class Gr
idPartImp >
51 template<
class Gr
idPartImp >
67 static const int dimension = GridPartType::GridType::dimension;
69 static const int nCodim = dimension+1;
91 const ThreadArrayType& threadNum,
93 : indexSet_( gridPart.indexSet() ),
94 threadNum_( threadNum ),
100 : indexSet_( other.indexSet_ ),
101 threadNum_( other.threadNum_ ),
102 thread_( other.thread_ )
107 template<
class Intersection >
120 return (thread_ == threadNum_[ indexSet_.index( entity ) ]);
128 template<
class Entity >
131 enum { cc = Entity::codimension };
132 return contains< cc >( entity );
136 template<
class Intersection >
139 return intersection.boundary();
143 template<
class Intersection >
146 return intersection.boundaryId();
150 template<
class Intersection >
153 return intersection.neighbor();
166 #endif // #ifndef DUNE_FEM_THREADFILTER_HH
bool contains(const typename Codim< cd >::EntityType &entity) const
returns true if the given entity has the correct thread number for higher codims false is returned ...
Definition: threadfilter.hh:116
Codim< 0 >::EntityType EntityType
entity type for codimension 0
Definition: threadfilter.hh:44
bool intersectionBoundary(const Intersection &intersection) const
returns true if an intersection is a boundary intersection
Definition: threadfilter.hh:137
const IndexSetType & indexSet_
Definition: threadfilter.hh:157
GridPartImp GridPartType
grid part type
Definition: threadfilter.hh:30
Definition: threadfilter.hh:79
MutableArray< int > ThreadArrayType
Definition: threadfilter.hh:87
int intersectionBoundaryId(const Intersection &intersection) const
returns the boundary id for an intersection
Definition: threadfilter.hh:144
Definition: threadfilter.hh:27
bool intersectionNeighbor(const Intersection &intersection) const
returns true if for an intersection a neighbor exsits
Definition: threadfilter.hh:151
entity types
Definition: threadfilter.hh:37
ThreadFilter< GridPartType > FilterType
filter type
Definition: threadfilter.hh:33
ThreadFilter(const ThisType &other)
copy constructor
Definition: threadfilter.hh:99
GridPartType::template Codim< cd >::EntityType EntityType
entity type for given codimension
Definition: threadfilter.hh:40
GridPartType::IndexSetType IndexSetType
type of index set
Definition: threadfilter.hh:76
bool contains(const Entity &entity) const
returns true if the given entity has the correct thread number for higher codims false is returned ...
Definition: threadfilter.hh:129
Definition: coordinate.hh:4
ThreadFilter(const GridPartType &gridPart, const ThreadArrayType &threadNum, const int thead)
constructor
Definition: threadfilter.hh:90
Definition: threadfilter.hh:20
Traits::template Codim< cd >::EntityType EntityType
Definition: threadfilter.hh:81
const int thread_
Definition: threadfilter.hh:159
Definition: basicfilterwrapper.hh:20
const ThreadArrayType & threadNum_
Definition: threadfilter.hh:158
bool interiorIntersection(const Intersection &intersection) const
return false since all interior intersections should be skipped
Definition: threadfilter.hh:108
Traits::FilterType FilterType
type of the filter implementation
Definition: threadfilter.hh:73
Traits::EntityType EntityType
type of codim 0 entity
Definition: threadfilter.hh:85