|
dune-pdelab 2.9
|
Loading...
Searching...
No Matches
partitionviewentityset.hh
Go to the documentation of this file.
84 using Iterator = typename GV::template Codim<codim>::template Partition<Partitions::partitionIterator()>::Iterator;
371 PartitionViewEntitySetIndexSetBase& operator=(const PartitionViewEntitySetIndexSetBase&) = delete;
554 return Capabilities::hasEntityIterator<Grid,dim>::v && hasAllEntityIterators(Dune::Dim<dim+1>{});
564 std::partial_sum(_mapped_gt_offsets.begin(),_mapped_gt_offsets.end(),_mapped_gt_offsets.begin());
602 auto ref_el = ReferenceElements<typename Base::Traits::CoordinateField,GV::dimension>::general(e.type());
637 auto gt = ReferenceElements<typename Base::Traits::CoordinateField,GV::dimension>::general(e.type()).type(i,codim);
673 return _indices[_gt_offsets[gt_index] + baseIndexSet().index(e)] + _mapped_gt_offsets[gt_index];
681 auto gt = ReferenceElements<typename Base::Traits::CoordinateField,GV::dimension>::general(e.type()).type(i,codim);
684 return _indices[_gt_offsets[gt_index] + baseIndexSet().subIndex(e,i,codim)] + _mapped_gt_offsets[gt_index];
736 std::partial_sum(_mapped_gt_offsets.begin(),_mapped_gt_offsets.end(),_mapped_gt_offsets.begin());
744 auto gt = ReferenceElements<typename Base::Traits::CoordinateField,GV::dimension>::general(e.type()).type(i,codim);
770 return baseIndexSet().index(e) + _mapped_gt_offsets[Dune::GlobalGeometryTypeIndex::index(e.type())];
787 auto gt = ReferenceElements<typename Base::Traits::CoordinateField,GV::dimension>::general(e.type()).type(i,codim);
789 return baseIndexSet().subIndex(e,i,codim) + _mapped_gt_offsets[Dune::GlobalGeometryTypeIndex::index(gt)];
int size() const
static StaticIntegralRange< T, to > range(std::integral_constant< T, to >) noexcept
bool gt(const T &first, const T &second, typename EpsilonType< T >::Type epsilon=DefaultEpsilon< T, style >::value())
STL namespace.
typename impl::_isEntitySet< T >::type isEntitySet
Type Trait to determine whether T is an EntitySet.
Definition partitionviewentityset.hh:836
For backward compatibility – Do not use this!
CommunicationDirection
InterfaceType
IteratorRange<... > elements(const GV &gv)
IteratorRange<... > entities(const GV &gv, Codim< codim > cd)
constexpr Overlap overlap
constexpr All all
constexpr Ghost ghost
static constexpr std::size_t index(const GeometryType >)
static constexpr std::size_t offset(std::size_t dim)
static constexpr std::size_t size(std::size_t maxdim)
GridImp::template Codim< cd >::Entity Entity
Partition view (or entity set) of a grid view.
Definition partitionviewentityset.hh:119
GV::template Codim< codim >::template Partition< pitype >::Iterator end() const
Definition partitionviewentityset.hh:198
const IndexSet & indexSet() const
Returns the IndexSet of this EntitySet.
Definition partitionviewentityset.hh:164
PartitionViewEntitySet(const GridView &gv, CodimMask supported_codims)
Definition partitionviewentityset.hh:268
static const dim_type dimension
Definition partitionviewentityset.hh:142
void reset()
Reset this EntitySet, which removes all entities from it.
Definition partitionviewentityset.hh:277
CoordinateField ctype
Definition partitionviewentityset.hh:139
static const dim_type dimensionworld
Definition partitionviewentityset.hh:143
bool contains(const GeometryType >) const
Definition partitionviewentityset.hh:224
bool operator==(const PartitionViewEntitySet &other) const
Compare to another partition view.
Definition partitionviewentityset.hh:322
Codim< codim >::Iterator begin() const
Definition partitionviewentityset.hh:177
bool update(bool force=false)
Update the internal state of this EntitySet.
Definition partitionviewentityset.hh:309
static constexpr CodimMask allCodims()
Definition partitionviewentityset.hh:153
IntersectionIterator iend(const typename Codim< 0 >::Entity &entity) const
Definition partitionviewentityset.hh:234
const GridView & gridView() const
Returns the underlying GridView.
Definition partitionviewentityset.hh:263
typename Traits::CodimMask CodimMask
Definition partitionviewentityset.hh:134
typename Traits::IntersectionIterator IntersectionIterator
Definition partitionviewentityset.hh:132
bool operator!=(const PartitionViewEntitySet &other) const
Compare to another partition view.
Definition partitionviewentityset.hh:327
typename Traits::GridView GridView
Definition partitionviewentityset.hh:127
size_type size(dim_type codim) const
Definition partitionviewentityset.hh:203
size_type size(const GeometryType >) const
Definition partitionviewentityset.hh:208
GV::template Codim< codim >::template Partition< pitype >::Iterator begin() const
Definition partitionviewentityset.hh:191
bool contains(const Entity &e) const
Definition partitionviewentityset.hh:214
typename Traits::Grid Grid
Definition partitionviewentityset.hh:126
void removeCodim(dim_type codim)
Remove all entities of the given codim from this EntitySet.
Definition partitionviewentityset.hh:289
const Grid & grid() const
Definition partitionviewentityset.hh:158
bool contains(dim_type codim) const
Definition partitionviewentityset.hh:219
typename Traits::IndexSet IndexSet
Definition partitionviewentityset.hh:128
PartitionViewEntitySet(const GridView &gv, bool initialize=true)
Definition partitionviewentityset.hh:272
typename Traits::Partitions Partitions
Definition partitionviewentityset.hh:125
size_type overlapSize(dim_type codim) const
Returns the overlap size of this EntitySet, which depends on its PartitionSet.
Definition partitionviewentityset.hh:245
typename Traits::Communication Communication
Definition partitionviewentityset.hh:133
const BaseIndexSet & baseIndexSet() const
Returns the IndexSet of the underlying GridView.
Definition partitionviewentityset.hh:170
static const bool conforming
Definition partitionviewentityset.hh:141
bool needsUpdate() const
Returns true if you need to call update on this EntitySet before using it.
Definition partitionviewentityset.hh:295
typename Traits::CoordinateField CoordinateField
Definition partitionviewentityset.hh:135
void communicate(DataHandle &data, InterfaceType iftype, CommunicationDirection dir) const
Definition partitionviewentityset.hh:257
typename Traits::Intersection Intersection
Definition partitionviewentityset.hh:131
void addCodim(dim_type codim)
Add all entities of the given codim to this EntitySet.
Definition partitionviewentityset.hh:283
typename Traits::Element Element
Definition partitionviewentityset.hh:130
static constexpr Partitions partitions()
Definition partitionviewentityset.hh:148
typename Traits::BaseIndexSet BaseIndexSet
Definition partitionviewentityset.hh:129
typename Traits::template Codim< codim > Codim
Definition partitionviewentityset.hh:146
Codim< codim >::Iterator end() const
Definition partitionviewentityset.hh:184
typename Traits::size_type size_type
Definition partitionviewentityset.hh:136
IntersectionIterator ibegin(const typename Codim< 0 >::Entity &entity) const
Definition partitionviewentityset.hh:229
const Communication & comm() const
Definition partitionviewentityset.hh:239
typename Traits::dim_type dim_type
Definition partitionviewentityset.hh:137
size_type ghostSize(dim_type codim) const
Returns the ghost size of this EntitySet, which depends on its PartitionSet.
Definition partitionviewentityset.hh:251
Definition partitionviewentityset.hh:520
typename Traits::dim_type dim_type
Definition partitionviewentityset.hh:353
Index subIndex(const typename Traits::template Codim< cc >::Entity &e, size_type i, dim_type codim) const
Definition partitionviewentityset.hh:656
typename Traits::size_type size_type
Definition partitionviewentityset.hh:352
typename Traits::Partitions Partitions
Definition partitionviewentityset.hh:348
Index uniqueSubIndex(const E &e, size_type i, dim_type codim) const
Definition partitionviewentityset.hh:677
bool needsUpdate() const
Definition partitionviewentityset.hh:477
const BaseIndexSet & baseIndexSet() const
Definition partitionviewentityset.hh:449
typename Traits::CodimMask CodimMask
Definition partitionviewentityset.hh:356
Index index(const typename Traits::template Codim< cc >::Entity &e) const
Definition partitionviewentityset.hh:646
PartitionViewEntitySetIndexSet(const GV &gv, CodimMask wanted_codims, bool initialize)
Definition partitionviewentityset.hh:688
Index index(const Entity &e) const
Definition partitionviewentityset.hh:651
const GridView & gridView() const
Definition partitionviewentityset.hh:472
static constexpr Index invalidIndex()
Definition partitionviewentityset.hh:362
Index subIndex(const E &e, size_type i, dim_type codim) const
Definition partitionviewentityset.hh:662
typename Traits::Index Index
Definition partitionviewentityset.hh:354
Index uniqueIndex(const E &e) const
Definition partitionviewentityset.hh:667
bool contains(const Entity &e) const
Definition partitionviewentityset.hh:434
Definition partitionviewentityset.hh:40
typename BaseIndexSet::IndexType Index
Definition partitionviewentityset.hh:61
typename GV::Traits::Grid Grid
Definition partitionviewentityset.hh:44
typename GV::template Codim< 0 >::Entity Element
Definition partitionviewentityset.hh:50
int dim_type
Definition partitionviewentityset.hh:59
PartitionViewEntitySetIndexSet< GV, Partitions > IndexSet
Definition partitionviewentityset.hh:47
typename GV::Traits::IntersectionIterator IntersectionIterator
Definition partitionviewentityset.hh:54
static const dim_type dimensionworld
Definition partitionviewentityset.hh:78
GV GridView
Definition partitionviewentityset.hh:45
static const bool conforming
Definition partitionviewentityset.hh:74
std::size_t size_type
Definition partitionviewentityset.hh:58
std::vector< GeometryType > Types
Definition partitionviewentityset.hh:63
static constexpr Index invalidIndex()
Definition partitionviewentityset.hh:69
typename GV::Traits::Intersection Intersection
Definition partitionviewentityset.hh:52
typename std::decay< P >::type Partitions
Definition partitionviewentityset.hh:42
static const dim_type dimension
Definition partitionviewentityset.hh:76
typename GV::Traits::Communication Communication
Definition partitionviewentityset.hh:56
std::bitset< GV::dimension+1 > CodimMask
Definition partitionviewentityset.hh:65
typename GV::Traits::IndexSet BaseIndexSet
Definition partitionviewentityset.hh:48
typename Grid::ctype CoordinateField
Definition partitionviewentityset.hh:67
Definition partitionviewentityset.hh:82
typename GV::template Codim< codim >::Entity Entity
Definition partitionviewentityset.hh:86
typename GV::template Codim< codim >::Geometry Geometry
Definition partitionviewentityset.hh:88
typename GV::template Codim< codim >::template Partition< Partitions::partitionIterator()>::Iterator Iterator
Definition partitionviewentityset.hh:84
typename GV::template Codim< codim >::LocalGeometry LocalGeometry
Definition partitionviewentityset.hh:90
Definition partitionviewentityset.hh:94
typename GV::template Codim< codim >::template Partition< pitype >::Iterator Iterator
Definition partitionviewentityset.hh:96
Definition partitionviewentityset.hh:339
size_type size(GeometryType gt) const
Definition partitionviewentityset.hh:418
bool contains(const GeometryType >) const
Definition partitionviewentityset.hh:444
CodimMask _wanted_codims
Definition partitionviewentityset.hh:504
typename Traits::dim_type dim_type
Definition partitionviewentityset.hh:353
typename Traits::size_type size_type
Definition partitionviewentityset.hh:352
typename Traits::Partitions Partitions
Definition partitionviewentityset.hh:348
bool needsUpdate() const
Definition partitionviewentityset.hh:477
Types types() const
Definition partitionviewentityset.hh:460
const BaseIndexSet & baseIndexSet() const
Definition partitionviewentityset.hh:449
typename Traits::CodimMask CodimMask
Definition partitionviewentityset.hh:356
bool _needs_update
Definition partitionviewentityset.hh:503
size_type size(dim_type codim) const
Definition partitionviewentityset.hh:425
PartitionViewEntitySetIndexSetBase(const PartitionViewEntitySetIndexSetBase &)=delete
typename Traits::BaseIndexSet BaseIndexSet
Definition partitionviewentityset.hh:351
void removeCodim(dim_type codim)
Definition partitionviewentityset.hh:496
void reset()
Definition partitionviewentityset.hh:484
std::array< size_type, GlobalGeometryTypeIndex::size(GV::dimension)+1 > _mapped_gt_offsets
Definition partitionviewentityset.hh:508
PartitionViewEntitySetTraits< GV, P > Traits
Definition partitionviewentityset.hh:346
void addCodim(dim_type codim)
Definition partitionviewentityset.hh:490
CodimMask _active_codims
Definition partitionviewentityset.hh:506
bool update(bool force)
Definition partitionviewentityset.hh:376
const GridView & gridView() const
Definition partitionviewentityset.hh:472
static const dim_type dimension
Definition partitionviewentityset.hh:360
std::bitset< GlobalGeometryTypeIndex::size(GV::dimension)> _active_geometry_types
Definition partitionviewentityset.hh:505
PartitionViewEntitySetIndexSetBase(const GV &gv, CodimMask wanted_codims)
Definition partitionviewentityset.hh:466
static constexpr Index invalidIndex()
Definition partitionviewentityset.hh:362
PartitionViewEntitySetIndexSetBase & operator=(const PartitionViewEntitySetIndexSetBase &)=delete
typename Traits::GridView GridView
Definition partitionviewentityset.hh:350
typename Traits::Index Index
Definition partitionviewentityset.hh:354
typename Traits::Types Types
Definition partitionviewentityset.hh:355
typename Traits::Grid Grid
Definition partitionviewentityset.hh:349
typename Traits::template Codim< codim > Codim
Definition partitionviewentityset.hh:368
Types types(dim_type codim) const
Definition partitionviewentityset.hh:454
bool contains(const Entity &e) const
Definition partitionviewentityset.hh:434
std::array< size_type, GlobalGeometryTypeIndex::size(GV::dimension)+1 > _gt_offsets
Definition partitionviewentityset.hh:507
bool contains(dim_type codim) const
Definition partitionviewentityset.hh:439
Index IndexType
Definition partitionviewentityset.hh:358
Index subIndex(const typename Traits::template Codim< cc >::Entity &e, size_type i, dim_type codim) const
Definition partitionviewentityset.hh:775
typename Traits::dim_type dim_type
Definition partitionviewentityset.hh:353
typename Traits::size_type size_type
Definition partitionviewentityset.hh:352
typename Traits::Partitions Partitions
Definition partitionviewentityset.hh:348
PartitionViewEntitySetIndexSet(const GV &gv, CodimMask wanted_codims, bool initialize=true)
Definition partitionviewentityset.hh:792
typename Traits::CodimMask CodimMask
Definition partitionviewentityset.hh:356
Index uniqueSubIndex(const E &e, size_type i, dim_type codim) const
Definition partitionviewentityset.hh:785
Index subIndex(const E &e, size_type i, dim_type codim) const
Definition partitionviewentityset.hh:780
Index index(const typename Traits::template Codim< cc >::Entity &e) const
Definition partitionviewentityset.hh:760
typename Traits::Index Index
Definition partitionviewentityset.hh:354
Index uniqueIndex(const E &e) const
Definition partitionviewentityset.hh:767
Index index(const E &e) const
Definition partitionviewentityset.hh:753
T assign(T... args)
T back(T... args)
T begin(T... args)
T end(T... args)
T equal_range(T... args)
T fill(T... args)
T partial_sum(T... args)
T reset(T... args)
T set(T... args)
T size(T... args)
T test(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8