|
dune-fem 2.12-git
|
Loading...
Searching...
No Matches
indexsetdofmapper.hh
Go to the documentation of this file.
43 void operator() ( std::size_t index, unsigned int numDofs, Iterator begin, Iterator end, Functor functor ) const
54 Mapping operator() ( const typename GridPart::template Codim< 0 >::EntityType &element, unsigned int subEntity, unsigned int codim ) const { return {}; }
129 DofMapperBase ( const GridPartType &gridPart, LocalDofMappingType localDofMapping, const CodeFactory &codeFactory );
158 void onSubEntity ( const ElementType &element, int i, int c, std::vector< bool > &indices ) const
182 void onSubEntity( const ElementType &element, int i, int c, std::vector< char > &indices ) const;
259 DUNE_THROW( NotImplemented, "Method insertEntity(entity) called on non-adaptive block mapper" );
264 DUNE_THROW( NotImplemented, "Method removeEntity(entity) called on non-adaptive block mapper" );
286 const DofMapperCode &code ( const ElementType &element ) const { return code( element.type() ); }
323 DUNE_THROW( DofMapperError, "Inconsistent number of DoFs on subEntity (codim = " << info.codim << ")." );
342 ::DofMapperBase ( const GridPartType &gridPart, LocalDofMappingType localDofMapping, const CodeFactory &codeFactory )
389 static const bool hasSingleGeometryType = Dune::Capabilities::hasSingleGeometryType< typename GridPartType::GridType > :: v ;
557 DofMapper ( const GridPartType &gridPart, LocalDofMappingType localDofMapping, const CodeFactory &codeFactory )
599 AdaptiveDofMapper ( const GridPartType &gridPart, LocalDofMappingType localDofMapping, const CodeFactory &codeFactory )
731 template< class GridPart, class LocalDofMapping, bool adaptive = Capabilities::isAdaptiveIndexSet< typename GridPart::IndexSetType >::v >
734 typedef typename std::conditional< adaptive, AdaptiveDofMapper< GridPart, LocalDofMapping >, DofMapper< GridPart, LocalDofMapping > >::type Type;
748 typedef typename __IndexSetDofMapper::template Implementation< GridPart, LocalDofMapping >::Type BaseType;
755 IndexSetDofMapper ( const GridPartType &gridPart, LocalDofMappingType localDofMapping, const CodeFactory &codeFactory )
785 struct isConsecutiveIndexSet< __IndexSetDofMapper::AdaptiveDofMapper< GridPart, LocalDofMapping > >
int size() const
iterator end()
iterator begin()
bool active() const
std::ptrdiff_t index() const
virtual void operator()()=0
#define DUNE_THROW(E,...)
constexpr auto filter(std::integer_sequence< T > jSeq)
void removeIndexSet(const IndexSetType &iset)
removed index set from dof manager's list of index sets
Definition dofmanager.hh:1331
void addIndexSet(const IndexSetType &iset)
add index set to dof manager's list of index sets
Definition dofmanager.hh:1296
STL namespace.
static constexpr std::size_t index(const GeometryType >)
static constexpr std::size_t index(const GeometryType >)
static constexpr std::size_t size(std::size_t maxdim)
GeometryType type() const
specialize with true if index set implements the dune-fem interface for index sets
Definition common/indexset.hh:39
specialize with true if index set implements the interface for consecutive index sets
Definition common/indexset.hh:61
static const bool v
Definition common/indexset.hh:68
specialize with true if index set implements the interface for adaptive index sets
Definition common/indexset.hh:83
Definition grcommon.hh:31
Definition misc/functor.hh:31
Definition dofmanager.hh:786
Definition space/mapper/capabilities.hh:22
static const bool v
Definition space/mapper/capabilities.hh:23
Definition code.hh:18
Extended interface for adaptive DoF mappers.
Definition mapper/dofmapper.hh:219
Definition space/mapper/exceptions.hh:14
Definition indexsetdofmapper.hh:39
DefaultLocalDofMapping()
Definition indexsetdofmapper.hh:51
DefaultLocalDofMapping(const GridPart &)
Definition indexsetdofmapper.hh:52
Definition indexsetdofmapper.hh:67
void map(const ElementType &element, std::vector< GlobalKeyType > &indices) const
Definition indexsetdofmapper.hh:432
void removeEntity(const Entity &entity)
Definition indexsetdofmapper.hh:262
static constexpr bool consecutive() noexcept
Definition indexsetdofmapper.hh:224
void read(InStreamInterface< StreamTraits > &in)
Definition indexsetdofmapper.hh:274
void mapEach(const ElementType &element, Functor f) const
map each local DoF number to a global one
Definition indexsetdofmapper.hh:417
const DofMapperCode & code(const GeometryType >) const
Definition indexsetdofmapper.hh:520
SizeType size_
Definition indexsetdofmapper.hh:297
BlockMapType blockMap_
Definition indexsetdofmapper.hh:299
unsigned int maxNumDofs_
Definition indexsetdofmapper.hh:296
void mapEachEntityDof(const Entity &entity, Functor f) const
Definition indexsetdofmapper.hh:441
void requestCodimensions()
submit request for codimensions used to index set
Definition indexsetdofmapper.hh:484
GridPart GridPartType
Definition indexsetdofmapper.hh:122
SizeType GlobalKeyType
Definition indexsetdofmapper.hh:120
bool contains(int codim) const
Definition indexsetdofmapper.hh:199
GridPartType::template Codim< 0 >::EntityType ElementType
Definition indexsetdofmapper.hh:126
const IndexSetType & indexSet() const
Definition indexsetdofmapper.hh:291
std::vector< SubEntityInfo > subEntityInfo_
Definition indexsetdofmapper.hh:298
void backup() const
Definition indexsetdofmapper.hh:269
GridPartType::IndexSetType IndexSetType
Definition indexsetdofmapper.hh:282
CodimType codimType_[dimension+1]
Definition indexsetdofmapper.hh:300
GlobalKeyType oldIndex(int hole, int) const
Definition indexsetdofmapper.hh:236
SizeType offSet(int) const
Definition indexsetdofmapper.hh:251
std::vector< GeometryType > BlockMapType
Definition indexsetdofmapper.hh:283
LocalDofMapping LocalDofMappingType
Definition indexsetdofmapper.hh:123
void restore()
Definition indexsetdofmapper.hh:270
std::vector< DofMapperCode > code_
Definition indexsetdofmapper.hh:295
SizeType size() const
Definition indexsetdofmapper.hh:203
unsigned int numDofs(const ElementType &element) const
Definition indexsetdofmapper.hh:185
unsigned int maxNumDofs() const
Definition indexsetdofmapper.hh:184
GridPart::GridType GridType
Definition indexsetdofmapper.hh:124
@ CodimVariableSize
Definition indexsetdofmapper.hh:85
@ CodimFixedSize
Definition indexsetdofmapper.hh:85
@ CodimEmpty
Definition indexsetdofmapper.hh:85
GlobalKeyType newIndex(int hole, int) const
Definition indexsetdofmapper.hh:241
void resize()
Definition indexsetdofmapper.hh:267
SizeType numBlocks() const
Definition indexsetdofmapper.hh:226
void onSubEntity(const ElementType &element, int i, int c, std::vector< bool > &indices) const
Definition indexsetdofmapper.hh:158
SizeType oldOffSet(int) const
Definition indexsetdofmapper.hh:246
bool fixedDataSize(int codim) const
Definition indexsetdofmapper.hh:201
const DofMapperCode & code(const ElementType &element) const
Definition indexsetdofmapper.hh:286
void mapEntityDofs(const Entity &entity, std::vector< GlobalKeyType > &indices) const
Definition indexsetdofmapper.hh:454
SizeType numberOfHoles(int) const
Definition indexsetdofmapper.hh:231
Dune::ReferenceElements< typename GridPart::ctype, dimension > RefElementsType
Definition indexsetdofmapper.hh:87
void insertEntity(const Entity &entity)
Definition indexsetdofmapper.hh:257
RefElementsType::ReferenceElement RefElementType
Definition indexsetdofmapper.hh:88
LocalDofMapping localDofMapping_
Definition indexsetdofmapper.hh:294
const IndexSetType & indexSet_
Definition indexsetdofmapper.hh:293
unsigned int numEntityDofs(const Entity &entity) const
Definition indexsetdofmapper.hh:477
void write(OutStreamInterface< StreamTraits > &out) const
Definition indexsetdofmapper.hh:272
void update()
update mapper offsets
Definition indexsetdofmapper.hh:505
static const int dimension
Definition indexsetdofmapper.hh:86
bool compress()
Definition indexsetdofmapper.hh:268
const SubEntityInfo & subEntityInfo(const Entity &entity) const
Definition indexsetdofmapper.hh:529
std::size_t SizeType
Definition indexsetdofmapper.hh:71
Definition indexsetdofmapper.hh:75
SubEntityInfo()
Definition indexsetdofmapper.hh:76
SizeType offset
Definition indexsetdofmapper.hh:82
SizeType oldOffset
Definition indexsetdofmapper.hh:82
unsigned int codim
Definition indexsetdofmapper.hh:80
unsigned int numDofs
Definition indexsetdofmapper.hh:81
Definition indexsetdofmapper.hh:93
SubEntityFilter(const RefElementType &refElement, int subEntity, int codim)
Definition indexsetdofmapper.hh:94
bool operator()(int i, int c) const
Definition indexsetdofmapper.hh:110
Definition indexsetdofmapper.hh:117
Definition indexsetdofmapper.hh:310
BuildFunctor(std::vector< SubEntityInfo > &subEntityInfo)
Definition indexsetdofmapper.hh:311
Definition indexsetdofmapper.hh:542
BaseType::GridPartType::GridType GridType
Definition indexsetdofmapper.hh:548
BaseType::SubEntityInfo SubEntityInfo
Definition indexsetdofmapper.hh:547
BaseType::SizeType SizeType
Definition indexsetdofmapper.hh:554
~DofMapper()
Definition indexsetdofmapper.hh:566
DofManagerType & dofManager_
Definition indexsetdofmapper.hh:574
DofMapper(const GridPartType &gridPart, LocalDofMappingType localDofMapping, const CodeFactory &codeFactory)
Definition indexsetdofmapper.hh:557
ThisType & operator=(const ThisType &)=delete
DofMapper(const ThisType &)=delete
BaseType::LocalDofMappingType LocalDofMappingType
Definition indexsetdofmapper.hh:553
DofManager< GridType > DofManagerType
Definition indexsetdofmapper.hh:549
BaseType::GridPartType GridPartType
Definition indexsetdofmapper.hh:552
Definition indexsetdofmapper.hh:584
bool compress()
Definition indexsetdofmapper.hh:642
void update()
Definition indexsetdofmapper.hh:617
int numBlocks() const
Definition indexsetdofmapper.hh:621
void read(InStreamInterface< StreamTraits > &in)
Definition indexsetdofmapper.hh:648
DofManager< GridType > DofManagerType
Definition indexsetdofmapper.hh:591
BlockMapType blockMap_
Definition indexsetdofmapper.hh:299
void write(OutStreamInterface< StreamTraits > &out) const
Definition indexsetdofmapper.hh:645
BaseType::LocalDofMappingType LocalDofMappingType
Definition indexsetdofmapper.hh:595
BaseType::SubEntityInfo SubEntityInfo
Definition indexsetdofmapper.hh:589
bool consecutive() const
Definition indexsetdofmapper.hh:632
SizeType newIndex(SizeType hole, int blk) const
Definition indexsetdofmapper.hh:716
void insertEntity(const Entity &entity)
Definition indexsetdofmapper.hh:635
void backup() const
Definition indexsetdofmapper.hh:653
SizeType oldIndex(SizeType hole, int blk) const
Definition indexsetdofmapper.hh:703
BaseType::GridPartType::GridType GridType
Definition indexsetdofmapper.hh:590
void resize()
Definition indexsetdofmapper.hh:640
AdaptiveDofMapper(const GridPartType &gridPart, LocalDofMappingType localDofMapping, const CodeFactory &codeFactory)
Definition indexsetdofmapper.hh:599
BaseType::GridPartType GridPartType
Definition indexsetdofmapper.hh:594
BaseType::SizeType SizeType
Definition indexsetdofmapper.hh:596
~AdaptiveDofMapper()
Definition indexsetdofmapper.hh:608
AdaptiveDofMapper(const ThisType &)=delete
ThisType & operator=(const ThisType &)=delete
SizeType offSet(int blk) const
Definition indexsetdofmapper.hh:672
SizeType numberOfHoles(int blk) const
Definition indexsetdofmapper.hh:692
void restore()
Definition indexsetdofmapper.hh:654
DofManagerType & dofManager_
Definition indexsetdofmapper.hh:662
SizeType oldOffSet(int blk) const
Definition indexsetdofmapper.hh:682
void removeEntity(const Entity &entity)
Definition indexsetdofmapper.hh:638
Definition indexsetdofmapper.hh:733
std::conditional< adaptive, AdaptiveDofMapper< GridPart, LocalDofMapping >, DofMapper< GridPart, LocalDofMapping > >::type Type
Definition indexsetdofmapper.hh:734
Definition indexsetdofmapper.hh:747
IndexSetDofMapper(const GridPartType &gridPart, LocalDofMappingType localDofMapping, const CodeFactory &codeFactory)
Definition indexsetdofmapper.hh:755
IndexSetDofMapper(const GridPartType &gridPart, const CodeFactory &codeFactory)
Definition indexsetdofmapper.hh:760
BaseType::LocalDofMappingType LocalDofMappingType
Definition indexsetdofmapper.hh:752
BaseType::GridPartType GridPartType
Definition indexsetdofmapper.hh:751
T max(T... args)
T push_back(T... args)
T reserve(T... args)
T resize(T... args)
T size(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8