Interface for calculating the size of a function space for a grid on a specified level. Furthermore the local to global mapping of dof number is done. Also during grid adaptation this mapper knows about old and new indices of entities.
More...
#include <dune/fem/space/mapper/dofmapper.hh >
SizeType size () const
return number of dofs for special function space and grid on specified level
bool contains (const int codim) const
returns true if DoFs for given codimension exist
bool fixedDataSize (const int codim) const
Check, whether the data in a codimension has fixed size.
template<class Functor >
void mapEach (const ElementType &element, Functor f) const
map each local DoF number to a global key
template<class Entity , class Functor >
void mapEachEntityDof (const Entity &entity, Functor f) const
map each local DoF number to a global key
int maxNumDofs () const
obtain maximal number of DoFs on one entity
SizeType numDofs (const ElementType &element) const
obtain number of DoFs on an entity
template<class Entity >
SizeType numEntityDofs (const Entity &entity) const
obtain number of DoFs actually belonging to an entity
void update ()
update DoF mapping after grid modification
const Implementation & asImp () const
Implementation & asImp ()
template<class DofMapperTraits>
class Dune::Fem::DofMapper< DofMapperTraits >
Interface for calculating the size of a function space for a grid on a specified level. Furthermore the local to global mapping of dof number is done. Also during grid adaptation this mapper knows about old and new indices of entities.
◆ DofMapperType
template<class DofMapperTraits >
◆ ElementType
template<class DofMapperTraits >
type of codimension 0 entities
◆ EntityType
template<class DofMapperTraits >
◆ SizeType
template<class DofMapperTraits >
◆ Traits
template<class DofMapperTraits >
◆ asImp() [1/6]
template<class DofMapperTraits >
◆ asImp() [2/6]
template<class DofMapperTraits >
◆ asImp() [3/6]
inline static protected inherited
◆ asImp() [4/6]
template<class DofMapperTraits >
◆ asImp() [5/6]
inline static protected inherited
◆ asImp() [6/6]
template<class DofMapperTraits >
◆ contains()
template<class DofMapperTraits >
returns true if DoFs for given codimension exist
Parameters
[in] codim codimension to check
Returns true if DoFs for codimension exist
◆ fixedDataSize()
template<class DofMapperTraits >
Check, whether the data in a codimension has fixed size.
◆ mapEach()
template<class DofMapperTraits >
template<class Functor >
map each local DoF number to a global key
Parameters
[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:
struct Functor
{
template < class GlobalKey >
void operator() ( const int localDoF, const GlobalKey &globalDoF );
};
For each DoF to be mapped, this method will call the application operator once.
Note There is no guarantee on the order, in which the functor is applied.
The global key has to be compatible with the Dof storage.
◆ mapEachEntityDof()
template<class DofMapperTraits >
template<class Entity , class Functor >
void Dune::Fem::DofMapper < DofMapperTraits >::mapEachEntityDof
(
const Entity &
entity ,
Functor
f
)
const
inline
map each local DoF number to a global key
Parameters
[in] entity entity, the DoFs belong to
[in] f functor to call for each DoF
The functor has to be a copyable object satisfying the following interface:
struct Functor
{
template < class GlobalKey >
void operator() ( const int localDoF, const GlobalKey &globalKey );
};
For each DoF to be mapped, this method will call the application operator once.
Note There is no guarantee on the order, in which the functor is applied.
The global key has to be compatible with the Dof storage.
◆ maxNumDofs()
template<class DofMapperTraits >
obtain maximal number of DoFs on one entity
◆ numDofs()
template<class DofMapperTraits >
obtain number of DoFs on an entity
Parameters
[in] element entity of codimension 0
Returns number of DoFs on the entity
◆ numEntityDofs()
template<class DofMapperTraits >
template<class Entity >
obtain number of DoFs actually belonging to an entity
In contrast to numDofs, this method returns the number of DoFs actually associated with an entity (usually a subentity). We have the following relation for an entity of codimension 0:
where denotes the subentity relation.
Parameters
[in] entity entity of codimension
Returns number of DoFs on the entity
◆ size()
template<class DofMapperTraits >
return number of dofs for special function space and grid on specified level
◆ update()
template<class DofMapperTraits >
update DoF mapping after grid modification
Note This method may not have any semantic side effects and may may be called arbitrarily often.
If the update is expensive, implementors might choose to check the sequence number of the underlying grid part.
The documentation for this class was generated from the following file: