dune-fem 2.8.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | Static Protected Member Functions | List of all members
Dune::Fem::AdaptiveDofMapper< DofMapperTraits > Class Template Reference

Extended interface for adaptive DoF mappers. More...

#include <dune/fem/space/mapper/dofmapper.hh>

Inheritance diagram for Dune::Fem::AdaptiveDofMapper< DofMapperTraits >:
Inheritance graph

Public Types

typedef BaseType::SizeType SizeType
 type of size integer
 
typedef SizeType GlobalKeyType
 at the moment this should be similar to SizeType
 
typedef DofMapperTraits Traits
 
typedef Traits::DofMapperType DofMapperType
 type of the DofMapper implementation
 
typedef Traits::ElementType ElementType
 type of codimension 0 entities
 
typedef ElementType EntityType
 

Public Member Functions

SizeType numberOfHoles (const int block) const
 return number of holes for data block
 
GlobalKeyType oldIndex (const int hole, const int block) const
 return old index of hole for data block (with resprect to new offset)
 
GlobalKeyType newIndex (const int hole, const int block) const
 return new index of hole for data block (with resprect to new offset)
 
bool consecutive () const
 return true if compress will affect data
 
SizeType oldOffSet (const int block) const
 return old offsets for given block
 
SizeType offSet (const int block) const
 return current offsets for given block
 
SizeType numBlocks () const
 return number of supported blocks
 
void update ()
 update DoF mapping after grid modification
 
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
 

Protected Member Functions

const Implementation & asImp () const
 
Implementation & asImp ()
 

Static Protected Member Functions

static const Implementation & asImp (const ThisType &other)
 
static Implementation & asImp (ThisType &other)
 
static const DofMapperTraits ::DofMapperTypeasImp (const ThisType &other)
 
static DofMapperTraits ::DofMapperTypeasImp (ThisType &other)
 

Detailed Description

template<class DofMapperTraits>
class Dune::Fem::AdaptiveDofMapper< DofMapperTraits >

Extended interface for adaptive DoF mappers.

Member Typedef Documentation

◆ DofMapperType

template<class DofMapperTraits >
typedef Traits::DofMapperType Dune::Fem::DofMapper< DofMapperTraits >::DofMapperType
inherited

type of the DofMapper implementation

◆ ElementType

template<class DofMapperTraits >
typedef Traits::ElementType Dune::Fem::DofMapper< DofMapperTraits >::ElementType
inherited

type of codimension 0 entities

◆ EntityType

template<class DofMapperTraits >
typedef ElementType Dune::Fem::DofMapper< DofMapperTraits >::EntityType
inherited

◆ GlobalKeyType

template<class DofMapperTraits >
typedef SizeType Dune::Fem::AdaptiveDofMapper< DofMapperTraits >::GlobalKeyType

at the moment this should be similar to SizeType

◆ SizeType

template<class DofMapperTraits >
typedef BaseType::SizeType Dune::Fem::AdaptiveDofMapper< DofMapperTraits >::SizeType

type of size integer

◆ Traits

template<class DofMapperTraits >
typedef DofMapperTraits Dune::Fem::DofMapper< DofMapperTraits >::Traits
inherited

Member Function Documentation

◆ asImp() [1/6]

template<class DofMapperTraits >
Implementation & Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp ( )
inlineprotected

◆ asImp() [2/6]

template<class DofMapperTraits >
const Implementation & Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp ( ) const
inlineprotected

◆ asImp() [3/6]

static const DofMapperTraits ::DofMapperType & Dune::Fem::BartonNackmanInterface< DofMapper< DofMapperTraits > , DofMapperTraits ::DofMapperType >::asImp ( const ThisType other)
inlinestaticprotectedinherited

◆ asImp() [4/6]

template<class DofMapperTraits >
static const Implementation & Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp ( const ThisType other)
inlinestaticprotected

◆ asImp() [5/6]

static DofMapperTraits ::DofMapperType & Dune::Fem::BartonNackmanInterface< DofMapper< DofMapperTraits > , DofMapperTraits ::DofMapperType >::asImp ( ThisType other)
inlinestaticprotectedinherited

◆ asImp() [6/6]

template<class DofMapperTraits >
static Implementation & Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp ( ThisType other)
inlinestaticprotected

◆ consecutive()

template<class DofMapperTraits >
bool Dune::Fem::AdaptiveDofMapper< DofMapperTraits >::consecutive ( ) const
inline

return true if compress will affect data

◆ contains()

template<class DofMapperTraits >
bool Dune::Fem::DofMapper< DofMapperTraits >::contains ( const int  codim) const
inlineinherited

returns true if DoFs for given codimension exist

Parameters
[in]codimcodimension to check
Returns
true if DoFs for codimension exist

◆ fixedDataSize()

template<class DofMapperTraits >
bool Dune::Fem::DofMapper< DofMapperTraits >::fixedDataSize ( const int  codim) const
inlineinherited

Check, whether the data in a codimension has fixed size.

◆ mapEach()

template<class DofMapperTraits >
template<class Functor >
void Dune::Fem::DofMapper< DofMapperTraits >::mapEach ( const ElementType element,
Functor  f 
) const
inlineinherited

map each local DoF number to a global key

Parameters
[in]elementelement, the DoFs belong to
[in]ffunctor to call for each DoF

The functor has to be a copyable object satisfying the following interface:

struct Functor
{
// application operator
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
inlineinherited

map each local DoF number to a global key

Parameters
[in]entityentity, the DoFs belong to
[in]ffunctor to call for each DoF

The functor has to be a copyable object satisfying the following interface:

struct Functor
{
// application operator
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 >
int Dune::Fem::DofMapper< DofMapperTraits >::maxNumDofs ( ) const
inlineinherited

obtain maximal number of DoFs on one entity

◆ newIndex()

template<class DofMapperTraits >
GlobalKeyType Dune::Fem::AdaptiveDofMapper< DofMapperTraits >::newIndex ( const int  hole,
const int  block 
) const
inline

return new index of hole for data block (with resprect to new offset)

◆ numberOfHoles()

template<class DofMapperTraits >
SizeType Dune::Fem::AdaptiveDofMapper< DofMapperTraits >::numberOfHoles ( const int  block) const
inline

return number of holes for data block

◆ numBlocks()

template<class DofMapperTraits >
SizeType Dune::Fem::AdaptiveDofMapper< DofMapperTraits >::numBlocks ( ) const
inline

return number of supported blocks

◆ numDofs()

template<class DofMapperTraits >
SizeType Dune::Fem::DofMapper< DofMapperTraits >::numDofs ( const ElementType element) const
inlineinherited

obtain number of DoFs on an entity

Parameters
[in]elemententity of codimension 0
Returns
number of DoFs on the entity

◆ numEntityDofs()

template<class DofMapperTraits >
template<class Entity >
SizeType Dune::Fem::DofMapper< DofMapperTraits >::numEntityDofs ( const Entity &  entity) const
inlineinherited

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 $E$ of codimension 0:

\[
\mathrm{numDofs}( E ) = \sum_{e \subset E} \mathrm{numEntityDofs}( e ),
\]

where $\subset$ denotes the subentity relation.

Parameters
[in]entityentity of codimension
Returns
number of DoFs on the entity

◆ offSet()

template<class DofMapperTraits >
SizeType Dune::Fem::AdaptiveDofMapper< DofMapperTraits >::offSet ( const int  block) const
inline

return current offsets for given block

◆ oldIndex()

template<class DofMapperTraits >
GlobalKeyType Dune::Fem::AdaptiveDofMapper< DofMapperTraits >::oldIndex ( const int  hole,
const int  block 
) const
inline

return old index of hole for data block (with resprect to new offset)

◆ oldOffSet()

template<class DofMapperTraits >
SizeType Dune::Fem::AdaptiveDofMapper< DofMapperTraits >::oldOffSet ( const int  block) const
inline

return old offsets for given block

◆ size()

template<class DofMapperTraits >
SizeType Dune::Fem::DofMapper< DofMapperTraits >::size ( ) const
inlineinherited

return number of dofs for special function space and grid on specified level

◆ update()

template<class DofMapperTraits >
void Dune::Fem::AdaptiveDofMapper< DofMapperTraits >::update ( )
inline

update DoF mapping after grid modification

Adaptive DoF mappers are considered to be always up to date and this method does nothing.


The documentation for this class was generated from the following file: