|
dune-fem 2.8.0
|
#include <dune/fem/space/mapper/indexsetdofmapper.hh>

Classes | |
| struct | BuildFunctor |
| struct | MapFunctor |
| struct | SubEntityFilter |
| struct | SubEntityInfo |
Public Types | |
| typedef std::size_t | SizeType |
| typedef SizeType | GlobalKeyType |
| typedef GridPart | GridPartType |
| typedef LocalDofMapping | LocalDofMappingType |
| typedef GridPart::GridType | GridType |
| typedef GridPartType::template Codim< 0 >::EntityType | ElementType |
Public Member Functions | |
| template<class CodeFactory > | |
| DofMapperBase (const GridPartType &gridPart, LocalDofMappingType localDofMapping, const CodeFactory &codeFactory) | |
| template<class Functor > | |
| void | mapEach (const ElementType &element, Functor f) const |
| map each local DoF number to a global one | |
| void | map (const ElementType &element, std::vector< GlobalKeyType > &indices) const |
| void | onSubEntity (const ElementType &element, int i, int c, std::vector< bool > &indices) const |
| fills a vector of bools with true indicating that the corresponding local degree of freedom is attached to the subentity specified by the (c,i) pair. A local dof is attached to a subentity S if it is attached either to that subentity or to a subentity S'<S i.e. S' has codimension greater than c and lies within S. For example all dofs are attached to the element itself and dofs attached to a vertex of an edge are also attached to that edge. | |
| unsigned int | maxNumDofs () const |
| unsigned int | numDofs (const ElementType &element) const |
| template<class Entity , class Functor > | |
| void | mapEachEntityDof (const Entity &entity, Functor f) const |
| template<class Entity > | |
| void | mapEntityDofs (const Entity &entity, std::vector< GlobalKeyType > &indices) const |
| template<class Entity > | |
| unsigned int | numEntityDofs (const Entity &entity) const |
| bool | contains (int codim) const |
| bool | fixedDataSize (int codim) const |
| SizeType | size () const |
| void | update () |
| update mapper offsets | |
| SizeType | numBlocks () const |
| SizeType | numberOfHoles (int) const |
| GlobalKeyType | oldIndex (int hole, int) const |
| GlobalKeyType | newIndex (int hole, int) const |
| SizeType | oldOffSet (int) const |
| SizeType | offSet (int) const |
| template<class Entity > | |
| void | insertEntity (const Entity &entity) |
| template<class Entity > | |
| void | removeEntity (const Entity &entity) |
| void | resize () |
| bool | compress () |
| void | backup () const |
| void | restore () |
| template<class StreamTraits > | |
| void | write (OutStreamInterface< StreamTraits > &out) const |
| template<class StreamTraits > | |
| void | read (InStreamInterface< StreamTraits > &in) |
Static Public Member Functions | |
| static constexpr bool | consecutive () noexcept |
Protected Types | |
| enum | CodimType { CodimEmpty , CodimFixedSize , CodimVariableSize } |
| typedef Dune::ReferenceElements< typename GridPart::ctype, dimension > | RefElementsType |
| typedef RefElementsType::ReferenceElement | RefElementType |
| typedef GridPartType::IndexSetType | IndexSetType |
| typedef std::vector< GeometryType > | BlockMapType |
Protected Member Functions | |
| void | requestCodimensions () |
| submit request for codimensions used to index set | |
| const DofMapperCode & | code (const GeometryType >) const |
| const DofMapperCode & | code (const ElementType &element) const |
| template<class Entity > | |
| const SubEntityInfo & | subEntityInfo (const Entity &entity) const |
| const IndexSetType & | indexSet () const |
Protected Attributes | |
| const IndexSetType & | indexSet_ |
| LocalDofMapping | localDofMapping_ |
| std::vector< DofMapperCode > | code_ |
| unsigned int | maxNumDofs_ |
| SizeType | size_ |
| std::vector< SubEntityInfo > | subEntityInfo_ |
| BlockMapType | blockMap_ |
| CodimType | codimType_ [dimension+1] |
Static Protected Attributes | |
| static const int | dimension = GridPart::dimension |
|
protected |
| typedef GridPartType::template Codim<0>::EntityType Dune::Fem::__IndexSetDofMapper::DofMapperBase< GridPart, LocalDofMapping >::ElementType |
| typedef SizeType Dune::Fem::__IndexSetDofMapper::DofMapperBase< GridPart, LocalDofMapping >::GlobalKeyType |
| typedef GridPart Dune::Fem::__IndexSetDofMapper::DofMapperBase< GridPart, LocalDofMapping >::GridPartType |
| typedef GridPart::GridType Dune::Fem::__IndexSetDofMapper::DofMapperBase< GridPart, LocalDofMapping >::GridType |
|
protected |
| typedef LocalDofMapping Dune::Fem::__IndexSetDofMapper::DofMapperBase< GridPart, LocalDofMapping >::LocalDofMappingType |
|
protected |
|
protected |
| typedef std::size_t Dune::Fem::__IndexSetDofMapper::DofMapperBase< GridPart, LocalDofMapping >::SizeType |
|
protected |
|
inline |
|
inline |
|
inlineprotected |
|
inlineprotected |
|
inline |
|
inlinestaticconstexprnoexcept |
|
inline |
|
inline |
|
inlineprotected |
|
inline |
|
inline |
|
inline |
map each local DoF number to a global one
| [in] | element | element, the DoFs belong to |
| [in] | f | functor to call for each DoF |
The functor has to be a copyable object satisfying the following interface:
For each DoF to be mapped, this method will call the application operator once.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
fills a vector of bools with true indicating that the corresponding local degree of freedom is attached to the subentity specified by the (c,i) pair. A local dof is attached to a subentity S if it is attached either to that subentity or to a subentity S'<S i.e. S' has codimension greater than c and lies within S. For example all dofs are attached to the element itself and dofs attached to a vertex of an edge are also attached to that edge.
|
inline |
|
inline |
|
inlineprotected |
submit request for codimensions used to index set
|
inline |
|
inline |
|
inline |
|
inlineprotected |
|
inline |
update mapper offsets
|
inline |
|
protected |
|
protected |
|
protected |
|
staticprotected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |