|
dune-pdelab 2.8
|
Loading...
Searching...
No Matches
partitionviewentityset.hh
Go to the documentation of this file.
85 using Iterator = typename GV::template Codim<codim>::template Partition<Partitions::partitionIterator()>::Iterator;
370 PartitionViewEntitySetIndexSetBase& operator=(const PartitionViewEntitySetIndexSetBase&) = delete;
552 return Capabilities::hasEntityIterator<Grid,dim>::v && hasAllEntityIterators(Dune::Dim<dim+1>{});
562 std::partial_sum(_mapped_gt_offsets.begin(),_mapped_gt_offsets.end(),_mapped_gt_offsets.begin());
600 auto ref_el = ReferenceElements<typename Base::Traits::CoordinateField,GV::dimension>::general(e.type());
652 return _indices[_gt_offsets[gt_index] + baseIndexSet().index(e)] + _mapped_gt_offsets[gt_index];
660 auto gt = ReferenceElements<typename Base::Traits::CoordinateField,GV::dimension>::general(e.type()).type(i,codim);
663 return _indices[_gt_offsets[gt_index] + baseIndexSet().subIndex(e,i,codim)] + _mapped_gt_offsets[gt_index];
714 std::partial_sum(_mapped_gt_offsets.begin(),_mapped_gt_offsets.end(),_mapped_gt_offsets.begin());
731 return baseIndexSet().index(e) + _mapped_gt_offsets[Dune::GlobalGeometryTypeIndex::index(e.type())];
747 auto gt = ReferenceElements<typename Base::Traits::CoordinateField,GV::dimension>::general(e.type()).type(i,codim);
749 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:796
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)
Partition view (or entity set) of a grid view.
Definition partitionviewentityset.hh:120
GV::template Codim< codim >::template Partition< pitype >::Iterator end() const
Definition partitionviewentityset.hh:199
const IndexSet & indexSet() const
Returns the IndexSet of this EntitySet.
Definition partitionviewentityset.hh:165
PartitionViewEntitySet(const GridView &gv, CodimMask supported_codims)
Definition partitionviewentityset.hh:269
const CollectiveCommunication & comm() const
Definition partitionviewentityset.hh:240
static const dim_type dimension
Definition partitionviewentityset.hh:143
void reset()
Reset this EntitySet, which removes all entities from it.
Definition partitionviewentityset.hh:278
CoordinateField ctype
Definition partitionviewentityset.hh:140
static const dim_type dimensionworld
Definition partitionviewentityset.hh:144
bool contains(const GeometryType >) const
Definition partitionviewentityset.hh:225
bool operator==(const PartitionViewEntitySet &other) const
Compare to another partition view.
Definition partitionviewentityset.hh:323
Codim< codim >::Iterator begin() const
Definition partitionviewentityset.hh:178
bool update(bool force=false)
Update the internal state of this EntitySet.
Definition partitionviewentityset.hh:310
static constexpr CodimMask allCodims()
Definition partitionviewentityset.hh:154
IntersectionIterator iend(const typename Codim< 0 >::Entity &entity) const
Definition partitionviewentityset.hh:235
const GridView & gridView() const
Returns the underlying GridView.
Definition partitionviewentityset.hh:264
typename Traits::CodimMask CodimMask
Definition partitionviewentityset.hh:135
typename Traits::IntersectionIterator IntersectionIterator
Definition partitionviewentityset.hh:133
typename Traits::CollectiveCommunication CollectiveCommunication
Definition partitionviewentityset.hh:134
bool operator!=(const PartitionViewEntitySet &other) const
Compare to another partition view.
Definition partitionviewentityset.hh:328
typename Traits::GridView GridView
Definition partitionviewentityset.hh:128
size_type size(dim_type codim) const
Definition partitionviewentityset.hh:204
size_type size(const GeometryType >) const
Definition partitionviewentityset.hh:209
GV::template Codim< codim >::template Partition< pitype >::Iterator begin() const
Definition partitionviewentityset.hh:192
bool contains(const Entity &e) const
Definition partitionviewentityset.hh:215
typename Traits::Grid Grid
Definition partitionviewentityset.hh:127
void removeCodim(dim_type codim)
Remove all entities of the given codim from this EntitySet.
Definition partitionviewentityset.hh:290
const Grid & grid() const
Definition partitionviewentityset.hh:159
bool contains(dim_type codim) const
Definition partitionviewentityset.hh:220
typename Traits::IndexSet IndexSet
Definition partitionviewentityset.hh:129
PartitionViewEntitySet(const GridView &gv, bool initialize=true)
Definition partitionviewentityset.hh:273
typename Traits::Partitions Partitions
Definition partitionviewentityset.hh:126
size_type overlapSize(dim_type codim) const
Returns the overlap size of this EntitySet, which depends on its PartitionSet.
Definition partitionviewentityset.hh:246
const BaseIndexSet & baseIndexSet() const
Returns the IndexSet of the underlying GridView.
Definition partitionviewentityset.hh:171
static const bool conforming
Definition partitionviewentityset.hh:142
bool needsUpdate() const
Returns true if you need to call update on this EntitySet before using it.
Definition partitionviewentityset.hh:296
typename Traits::CoordinateField CoordinateField
Definition partitionviewentityset.hh:136
void communicate(DataHandle &data, InterfaceType iftype, CommunicationDirection dir) const
Definition partitionviewentityset.hh:258
typename Traits::Intersection Intersection
Definition partitionviewentityset.hh:132
void addCodim(dim_type codim)
Add all entities of the given codim to this EntitySet.
Definition partitionviewentityset.hh:284
typename Traits::Element Element
Definition partitionviewentityset.hh:131
static constexpr Partitions partitions()
Definition partitionviewentityset.hh:149
typename Traits::BaseIndexSet BaseIndexSet
Definition partitionviewentityset.hh:130
typename Traits::template Codim< codim > Codim
Definition partitionviewentityset.hh:147
Codim< codim >::Iterator end() const
Definition partitionviewentityset.hh:185
typename Traits::size_type size_type
Definition partitionviewentityset.hh:137
IntersectionIterator ibegin(const typename Codim< 0 >::Entity &entity) const
Definition partitionviewentityset.hh:230
typename Traits::dim_type dim_type
Definition partitionviewentityset.hh:138
size_type ghostSize(dim_type codim) const
Returns the ghost size of this EntitySet, which depends on its PartitionSet.
Definition partitionviewentityset.hh:252
Definition partitionviewentityset.hh:519
Index index(const E &e) const
Definition partitionviewentityset.hh:624
typename Traits::dim_type dim_type
Definition partitionviewentityset.hh:354
typename Traits::size_type size_type
Definition partitionviewentityset.hh:353
typename Traits::Partitions Partitions
Definition partitionviewentityset.hh:349
Index uniqueSubIndex(const E &e, size_type i, dim_type codim) const
Definition partitionviewentityset.hh:656
bool needsUpdate() const
Definition partitionviewentityset.hh:476
const BaseIndexSet & baseIndexSet() const
Definition partitionviewentityset.hh:448
typename Traits::CodimMask CodimMask
Definition partitionviewentityset.hh:357
PartitionViewEntitySetIndexSet(const GV &gv, CodimMask wanted_codims, bool initialize)
Definition partitionviewentityset.hh:667
const GridView & gridView() const
Definition partitionviewentityset.hh:471
static constexpr Index invalidIndex()
Definition partitionviewentityset.hh:361
Index subIndex(const E &e, size_type i, dim_type codim) const
Definition partitionviewentityset.hh:634
typename Traits::Index Index
Definition partitionviewentityset.hh:355
Index uniqueIndex(const E &e) const
Definition partitionviewentityset.hh:646
bool contains(const Entity &e) const
Definition partitionviewentityset.hh:433
Definition partitionviewentityset.hh:41
typename BaseIndexSet::IndexType Index
Definition partitionviewentityset.hh:62
typename GV::Traits::Grid Grid
Definition partitionviewentityset.hh:45
typename GV::template Codim< 0 >::Entity Element
Definition partitionviewentityset.hh:51
int dim_type
Definition partitionviewentityset.hh:60
PartitionViewEntitySetIndexSet< GV, Partitions > IndexSet
Definition partitionviewentityset.hh:48
typename GV::Traits::IntersectionIterator IntersectionIterator
Definition partitionviewentityset.hh:55
static const dim_type dimensionworld
Definition partitionviewentityset.hh:79
IteratorRange< std::vector< GeometryType >::const_iterator > Types
Definition partitionviewentityset.hh:64
GV GridView
Definition partitionviewentityset.hh:46
static const bool conforming
Definition partitionviewentityset.hh:75
std::size_t size_type
Definition partitionviewentityset.hh:59
static constexpr Index invalidIndex()
Definition partitionviewentityset.hh:70
typename GV::Traits::Intersection Intersection
Definition partitionviewentityset.hh:53
typename GV::Traits::CollectiveCommunication CollectiveCommunication
Definition partitionviewentityset.hh:57
typename std::decay< P >::type Partitions
Definition partitionviewentityset.hh:43
static const dim_type dimension
Definition partitionviewentityset.hh:77
std::bitset< GV::dimension+1 > CodimMask
Definition partitionviewentityset.hh:66
typename GV::Traits::IndexSet BaseIndexSet
Definition partitionviewentityset.hh:49
typename Grid::ctype CoordinateField
Definition partitionviewentityset.hh:68
Definition partitionviewentityset.hh:83
typename GV::template Codim< codim >::Entity Entity
Definition partitionviewentityset.hh:87
typename GV::template Codim< codim >::Geometry Geometry
Definition partitionviewentityset.hh:89
typename GV::template Codim< codim >::template Partition< Partitions::partitionIterator()>::Iterator Iterator
Definition partitionviewentityset.hh:85
typename GV::template Codim< codim >::LocalGeometry LocalGeometry
Definition partitionviewentityset.hh:91
Definition partitionviewentityset.hh:95
typename GV::template Codim< codim >::template Partition< pitype >::Iterator Iterator
Definition partitionviewentityset.hh:97
Definition partitionviewentityset.hh:340
size_type size(GeometryType gt) const
Definition partitionviewentityset.hh:417
bool contains(const GeometryType >) const
Definition partitionviewentityset.hh:443
CodimMask _wanted_codims
Definition partitionviewentityset.hh:503
typename Traits::dim_type dim_type
Definition partitionviewentityset.hh:354
typename Traits::size_type size_type
Definition partitionviewentityset.hh:353
typename Traits::Partitions Partitions
Definition partitionviewentityset.hh:349
bool needsUpdate() const
Definition partitionviewentityset.hh:476
Types types() const
Definition partitionviewentityset.hh:459
const BaseIndexSet & baseIndexSet() const
Definition partitionviewentityset.hh:448
typename Traits::CodimMask CodimMask
Definition partitionviewentityset.hh:357
bool _needs_update
Definition partitionviewentityset.hh:502
size_type size(dim_type codim) const
Definition partitionviewentityset.hh:424
PartitionViewEntitySetIndexSetBase(const PartitionViewEntitySetIndexSetBase &)=delete
typename Traits::BaseIndexSet BaseIndexSet
Definition partitionviewentityset.hh:352
void removeCodim(dim_type codim)
Definition partitionviewentityset.hh:495
void reset()
Definition partitionviewentityset.hh:483
std::array< size_type, GlobalGeometryTypeIndex::size(GV::dimension)+1 > _mapped_gt_offsets
Definition partitionviewentityset.hh:507
void addCodim(dim_type codim)
Definition partitionviewentityset.hh:489
CodimMask _active_codims
Definition partitionviewentityset.hh:505
bool update(bool force)
Definition partitionviewentityset.hh:375
const GridView & gridView() const
Definition partitionviewentityset.hh:471
std::bitset< GlobalGeometryTypeIndex::size(GV::dimension)> _active_geometry_types
Definition partitionviewentityset.hh:504
PartitionViewEntitySetIndexSetBase(const GV &gv, CodimMask wanted_codims)
Definition partitionviewentityset.hh:465
static constexpr Index invalidIndex()
Definition partitionviewentityset.hh:361
PartitionViewEntitySetIndexSetBase & operator=(const PartitionViewEntitySetIndexSetBase &)=delete
typename Traits::GridView GridView
Definition partitionviewentityset.hh:351
typename Traits::Index Index
Definition partitionviewentityset.hh:355
typename Traits::Types Types
Definition partitionviewentityset.hh:356
typename Traits::Grid Grid
Definition partitionviewentityset.hh:350
typename Traits::template Codim< codim > Codim
Definition partitionviewentityset.hh:367
Types types(dim_type codim) const
Definition partitionviewentityset.hh:453
bool contains(const Entity &e) const
Definition partitionviewentityset.hh:433
std::array< size_type, GlobalGeometryTypeIndex::size(GV::dimension)+1 > _gt_offsets
Definition partitionviewentityset.hh:506
bool contains(dim_type codim) const
Definition partitionviewentityset.hh:438
Index IndexType
Definition partitionviewentityset.hh:359
typename Traits::dim_type dim_type
Definition partitionviewentityset.hh:354
typename Traits::size_type size_type
Definition partitionviewentityset.hh:353
typename Traits::Partitions Partitions
Definition partitionviewentityset.hh:349
PartitionViewEntitySetIndexSet(const GV &gv, CodimMask wanted_codims, bool initialize=true)
Definition partitionviewentityset.hh:752
typename Traits::CodimMask CodimMask
Definition partitionviewentityset.hh:357
Index uniqueSubIndex(const E &e, size_type i, dim_type codim) const
Definition partitionviewentityset.hh:745
Index subIndex(const E &e, size_type i, dim_type codim) const
Definition partitionviewentityset.hh:735
typename Traits::Index Index
Definition partitionviewentityset.hh:355
Index uniqueIndex(const E &e) const
Definition partitionviewentityset.hh:728
Index index(const E &e) const
Definition partitionviewentityset.hh:721
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