dune-fem  2.8-git
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | List of all members
Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base > Class Template Reference

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

Inheritance diagram for Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >:
Inheritance graph

Public Types

typedef BaseType::Traits Traits
 
typedef Traits::BlockMapperType BlockMapperType
 
typedef Traits::ElementType ElementType
 
typedef Traits::SizeType SizeType
 
typedef Traits::GlobalKeyType GlobalKeyType
 
typedef Traits::DofMapperType DofMapperType
 type of the DofMapper implementation More...
 
typedef ElementType EntityType
 

Public Member Functions

 DofMapper (BlockMapperType &blockMapper, int blockSize)
 
SizeType size () const
 
bool contains (const int codim) const
 
bool fixedDataSize (int codim) const
 
template<class Functor >
void mapEach (const ElementType &element, Functor f) const
 
void map (const ElementType &element, std::vector< GlobalKeyType > &indices) const
 
void onSubEntity (const ElementType &element, int i, int c, std::vector< bool > &indices) 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
 
int maxNumDofs () const
 
SizeType numDofs (const ElementType &element) const
 
template<class Entity >
SizeType numEntityDofs (const Entity &entity) const
 
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
 
const BlockMapperTypeblockMapper () const
 
int blockSize () const
 
void mapEach (const ElementType &element, Functor f) const
 map each local DoF number to a global key More...
 
SizeType numDofs (const ElementType &element) const
 obtain number of DoFs on an entity More...
 
void update ()
 update DoF mapping after grid modification More...
 

Static Public Member Functions

static constexpr bool consecutive () noexcept
 

Protected Member Functions

const ImplementationasImp () const
 
ImplementationasImp ()
 
const ImplementationasImp () const
 

Static Protected Member Functions

static const ImplementationasImp (const ThisType &other)
 
static ImplementationasImp (ThisType &other)
 
static const ImplementationasImp (const ThisType &other)
 
static ImplementationasImp (ThisType &other)
 

Member Typedef Documentation

◆ BlockMapperType

template<class T , template< class > class Base = Dune::Fem::DofMapper>
typedef Traits::BlockMapperType Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::BlockMapperType

◆ DofMapperType

type of the DofMapper implementation

◆ ElementType

template<class T , template< class > class Base = Dune::Fem::DofMapper>
typedef Traits::ElementType Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::ElementType

◆ EntityType

typedef ElementType Dune::Fem::DofMapper< T >::EntityType
inherited

◆ GlobalKeyType

template<class T , template< class > class Base = Dune::Fem::DofMapper>
typedef Traits::GlobalKeyType Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::GlobalKeyType

◆ SizeType

template<class T , template< class > class Base = Dune::Fem::DofMapper>
typedef Traits::SizeType Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::SizeType

◆ Traits

template<class T , template< class > class Base = Dune::Fem::DofMapper>
typedef BaseType::Traits Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::Traits

Constructor & Destructor Documentation

◆ DofMapper()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::DofMapper ( BlockMapperType blockMapper,
int  blockSize 
)
inline

Member Function Documentation

◆ asImp() [1/7]

Implementation& Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp
inlineprotectedinherited

◆ asImp() [2/7]

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

◆ asImp() [3/7]

const Implementation& Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp
inlineprotectedinherited

◆ asImp() [4/7]

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

◆ asImp() [5/7]

static const Implementation& Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp
inlinestaticprotectedinherited

◆ asImp() [6/7]

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

◆ asImp() [7/7]

static Implementation& Dune::Fem::BartonNackmanInterface< Interface, Implementation >::asImp
inlinestaticprotectedinherited

◆ blockMapper()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
const BlockMapperType& Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::blockMapper ( ) const
inline

◆ blockSize()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
int Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::blockSize ( ) const
inline

◆ consecutive()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
static constexpr bool Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::consecutive ( )
inlinestaticconstexprnoexcept

◆ contains()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
bool Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::contains ( const int  codim) const
inline

◆ fixedDataSize()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
bool Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::fixedDataSize ( int  codim) const
inline

◆ map()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
void Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::map ( const ElementType element,
std::vector< GlobalKeyType > &  indices 
) const
inline

◆ mapEach() [1/2]

void Dune::Fem::DofMapper< T >::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.

◆ mapEach() [2/2]

template<class T , template< class > class Base = Dune::Fem::DofMapper>
template<class Functor >
void Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::mapEach ( const ElementType element,
Functor  f 
) const
inline

◆ mapEachEntityDof()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
template<class Entity , class Functor >
void Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::mapEachEntityDof ( const Entity &  entity,
Functor  f 
) const
inline

◆ mapEntityDofs()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
template<class Entity >
void Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::mapEntityDofs ( const Entity &  entity,
std::vector< GlobalKeyType > &  indices 
) const
inline

◆ maxNumDofs()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
int Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::maxNumDofs ( ) const
inline

◆ newIndex()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
GlobalKeyType Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::newIndex ( int  hole,
int   
) const
inline

◆ numberOfHoles()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
SizeType Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::numberOfHoles ( int  ) const
inline

◆ numBlocks()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
SizeType Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::numBlocks ( ) const
inline

◆ numDofs() [1/2]

SizeType Dune::Fem::DofMapper< T >::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

◆ numDofs() [2/2]

template<class T , template< class > class Base = Dune::Fem::DofMapper>
SizeType Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::numDofs ( const ElementType element) const
inline

◆ numEntityDofs()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
template<class Entity >
SizeType Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::numEntityDofs ( const Entity &  entity) const
inline

◆ offSet()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
SizeType Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::offSet ( int  ) const
inline

◆ oldIndex()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
GlobalKeyType Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::oldIndex ( int  hole,
int   
) const
inline

◆ oldOffSet()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
SizeType Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::oldOffSet ( int  ) const
inline

◆ onSubEntity()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
void Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::onSubEntity ( const ElementType element,
int  i,
int  c,
std::vector< bool > &  indices 
) const
inline

◆ size()

template<class T , template< class > class Base = Dune::Fem::DofMapper>
SizeType Dune::Fem::__DynamicNonBlockMapper::DofMapper< T, Base >::size ( ) const
inline

◆ update()

void Dune::Fem::DofMapper< T >::update ( )
inlineinherited

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: