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

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

Inheritance diagram for Dune::Fem::PAdaptiveDGMapper< GridPart, polOrder >:
Inheritance graph

Public Types

typedef PAdaptiveDGMapperTraits< GridPart, polOrder > Traits
 
typedef Traits::GridPartType GridPartType
 type of the grid part
 
typedef Traits::CompiledLocalKeyVectorType CompiledLocalKeyVectorType
 type of compiled local keys vector
 
enum  
 
enum  
 
enum  
 
typedef std::size_t SizeType
 
typedef Traits::ElementType ElementType
 type of entities (codim 0)
 
typedef GridPartType::GridType GridType
 type of the underlying grid
 
typedef GridPartType::IndexSetType IndexSetType
 type of the index set
 
typedef Traits::GlobalKeyType GlobalKeyType
 type of global key
 
typedef GridType::ctype FieldType
 type of coordinates within the grid
 
typedef CompiledLocalKeyVectorType::value_type::value_type CompiledLocalKeyType
 compiled local key type
 
typedef DofManager< GridTypeDofManagerType
 type of the DoF manager
 
typedef EntityDofStorage EntityDofStorageType
 
typedef PolynomialOrderStorage PolynomialOrderStorageType
 
typedef PersistentContainer< GridType, EntityDofStorageTypeDofContainerType
 
typedef PersistentContainer< GridType, PolynomialOrderStorageTypePolyOrderContainerType
 
typedef Traits::DofMapperType DofMapperType
 type of the DofMapper implementation
 
typedef ElementType EntityType
 

Public Member Functions

 PAdaptiveDGMapper (const GridPartType &gridPart, const int order, CompiledLocalKeyVectorType &compiledLocalKeys)
 constructor
 
 PAdaptiveDGMapper (const ThisType &other, const int order, CompiledLocalKeyVectorType &compiledLocalKeys)
 sort of copy constructor
 
int polynomOrder (const ElementType &entity) const
 
int suggestedOrder (const ElementType &entity) const
 
void suggestPolynomOrder (const ElementType &entity, const int polOrd)
 
DofContainerTypedofContainer (const std::size_t codim) const
 
const CompiledLocalKeyTypecompiledLocalKey (const int polOrd, const GeometryType type) const
 
int size () const
 return overall number of degrees of freedom
 
void mapEach (const ElementType &element, Functor f) const
 
template<class Functor >
void mapEach (const ElementType &element, Functor f) const
 map each local DoF number to a global key
 
int mapToGlobal (const ElementType &entity, const int localDof) const
 
void mapEachEntityDof (const Entity &entity, Functor f) const
 map each local DoF number to a global key
 
void onSubEntity (const ElementType &element, int i, int c, std::vector< bool > &indices) const
 
void map (const ElementType &element, std::vector< SizeType > &indices) const
 
void mapEntityDofs (const Entity &entity, std::vector< SizeType > &indices) const
 
int maxNumDofs () const
 obtain maximal number of DoFs on one entity
 
int numDofs (const ElementType &entity) const
 
SizeType numDofs (const ElementType &element) const
 obtain number of DoFs on an entity
 
int numEntityDofs (const Entity &entity) const
 obtain number of DoFs actually belonging to an entity
 
bool contains (int codim) const
 Check, whether any DoFs are associated with a codimension.
 
bool fixedDataSize (int codim) const
 Check, whether the data in a codimension has fixed size.
 
int oldIndex (const int hole, const int block) const
 
int newIndex (const int hole, const int block) const
 
int numberOfHoles (const int block) const
 
int numBlocks () const
 
int oldOffSet (const int block) const
 
int offSet (const int block) const
 
bool consecutive () const
 
void resizeContainers ()
 
void insertEntity (const ElementType &entity)
 
unsigned int insertEntityDofs (const ElementType &entity)
 
void removeEntity (const ElementType &entity)
 
void resize ()
 
void adapt ()
 adjust mapper to newly set polynomial orders
 
unsigned int insertFather (const ElementType &entity)
 
bool considerHierarchy () const
 return true if elements can be refined more than once during adaptation
 
size_t insertAllUsed ()
 return number of DoFs currently used for space
 
void printDofs () const
 
void printEntityDofs (const ElementType &entity) const
 
void setUnused ()
 reset all used flags of all DoF entries
 
bool compress ()
 
void backup () const
 
void restore ()
 
void read (InStream &in)
 
void write (OutStream &out)
 
void update ()
 update DoF mapping after grid modification
 

Static Public Attributes

static const bool discontinuousMapper
 
static const int dimension
 dimension of the grid
 
static const int highestDimension
 highest codimension used to attach dofs
 
static const int polynomialOrder
 order of the Lagrange polynoms
 

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)
 

Member Typedef Documentation

◆ CompiledLocalKeyType

typedef CompiledLocalKeyVectorType::value_type::value_type Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::CompiledLocalKeyType
inherited

compiled local key type

◆ CompiledLocalKeyVectorType

template<class GridPart , int polOrder>
typedef Traits::CompiledLocalKeyVectorType Dune::Fem::PAdaptiveDGMapper< GridPart, polOrder >::CompiledLocalKeyVectorType

type of compiled local keys vector

◆ DofContainerType

typedef PersistentContainer< GridType, EntityDofStorageType > Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::DofContainerType
inherited

◆ DofManagerType

typedef DofManager< GridType > Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::DofManagerType
inherited

type of the DoF manager

◆ DofMapperType

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

type of the DofMapper implementation

◆ ElementType

typedef Traits::ElementType Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::ElementType
inherited

type of entities (codim 0)

◆ EntityDofStorageType

typedef EntityDofStorage Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::EntityDofStorageType
inherited

◆ EntityType

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

◆ FieldType

typedef GridType::ctype Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::FieldType
inherited

type of coordinates within the grid

◆ GlobalKeyType

typedef Traits::GlobalKeyType Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::GlobalKeyType
inherited

type of global key

◆ GridPartType

template<class GridPart , int polOrder>
typedef Traits::GridPartType Dune::Fem::PAdaptiveDGMapper< GridPart, polOrder >::GridPartType

type of the grid part

◆ GridType

typedef GridPartType::GridType Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::GridType
inherited

type of the underlying grid

◆ IndexSetType

typedef GridPartType::IndexSetType Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::IndexSetType
inherited

type of the index set

◆ PolynomialOrderStorageType

typedef PolynomialOrderStorage Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::PolynomialOrderStorageType
inherited

◆ PolyOrderContainerType

typedef PersistentContainer< GridType, PolynomialOrderStorageType > Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::PolyOrderContainerType
inherited

◆ SizeType

typedef std::size_t Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::SizeType
inherited

◆ Traits

template<class GridPart , int polOrder>
typedef PAdaptiveDGMapperTraits< GridPart, polOrder > Dune::Fem::PAdaptiveDGMapper< GridPart, polOrder >::Traits

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
inherited

◆ anonymous enum

anonymous enum
inherited

◆ anonymous enum

anonymous enum
inherited

Constructor & Destructor Documentation

◆ PAdaptiveDGMapper() [1/2]

template<class GridPart , int polOrder>
Dune::Fem::PAdaptiveDGMapper< GridPart, polOrder >::PAdaptiveDGMapper ( const GridPartType gridPart,
const int  order,
CompiledLocalKeyVectorType compiledLocalKeys 
)
inline

constructor

◆ PAdaptiveDGMapper() [2/2]

template<class GridPart , int polOrder>
Dune::Fem::PAdaptiveDGMapper< GridPart, polOrder >::PAdaptiveDGMapper ( const ThisType other,
const int  order,
CompiledLocalKeyVectorType compiledLocalKeys 
)
inline

sort of copy constructor

Member Function Documentation

◆ adapt()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::adapt ( )
inlineinherited

adjust mapper to newly set polynomial orders

◆ asImp() [1/6]

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

◆ asImp() [2/6]

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

◆ 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)
inlinestaticprotectedinherited

◆ 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)
inlinestaticprotectedinherited

◆ backup()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::backup ( ) const
inlineinherited

◆ compiledLocalKey()

const CompiledLocalKeyType & Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::compiledLocalKey ( const int  polOrd,
const GeometryType  type 
) const
inlineinherited

◆ compress()

bool Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::compress ( )
inlineinherited

◆ consecutive()

bool Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::consecutive ( ) const
inlineinherited

◆ considerHierarchy()

bool Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::considerHierarchy ( ) const
inlineinherited

return true if elements can be refined more than once during adaptation

◆ contains()

bool Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::contains ( int  codim) const
inlineinherited

Check, whether any DoFs are associated with a codimension.

◆ dofContainer()

DofContainerType & Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::dofContainer ( const std::size_t  codim) const
inlineinherited

◆ fixedDataSize()

bool Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::fixedDataSize ( int  codim) const
inlineinherited

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

◆ insertAllUsed()

size_t Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::insertAllUsed ( )
inlineinherited

return number of DoFs currently used for space

◆ insertEntity()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::insertEntity ( const ElementType entity)
inlineinherited

◆ insertEntityDofs()

unsigned int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::insertEntityDofs ( const ElementType entity)
inlineinherited

◆ insertFather()

unsigned int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::insertFather ( const ElementType entity)
inlineinherited

◆ map()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::map ( const ElementType element,
std::vector< SizeType > &  indices 
) const
inlineinherited

◆ mapEach() [1/2]

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.

◆ mapEach() [2/2]

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::mapEach ( const ElementType element,
Functor  f 
) const
inlineinherited

◆ mapEachEntityDof()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::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.

◆ mapEntityDofs()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::mapEntityDofs ( const Entity &  entity,
std::vector< SizeType > &  indices 
) const
inlineinherited

◆ mapToGlobal()

int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::mapToGlobal ( const ElementType entity,
const int  localDof 
) const
inlineinherited

◆ maxNumDofs()

int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::maxNumDofs ( ) const
inlineinherited

obtain maximal number of DoFs on one entity

◆ newIndex()

int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::newIndex ( const int  hole,
const int  block 
) const
inlineinherited

◆ numberOfHoles()

int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::numberOfHoles ( const int  block) const
inlineinherited

◆ numBlocks()

int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::numBlocks ( ) const
inlineinherited

◆ numDofs() [1/2]

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

◆ numDofs() [2/2]

int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::numDofs ( const ElementType entity) const
inlineinherited

◆ numEntityDofs()

int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::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()

int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::offSet ( const int  block) const
inlineinherited

◆ oldIndex()

int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::oldIndex ( const int  hole,
const int  block 
) const
inlineinherited

◆ oldOffSet()

int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::oldOffSet ( const int  block) const
inlineinherited

◆ onSubEntity()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::onSubEntity ( const ElementType element,
int  i,
int  c,
std::vector< bool > &  indices 
) const
inlineinherited

◆ polynomOrder()

int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::polynomOrder ( const ElementType entity) const
inlineinherited

◆ printDofs()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::printDofs ( ) const
inlineinherited

◆ printEntityDofs()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::printEntityDofs ( const ElementType entity) const
inlineinherited

◆ read()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::read ( InStream &  in)
inlineinherited

◆ removeEntity()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::removeEntity ( const ElementType entity)
inlineinherited

◆ resize()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::resize ( )
inlineinherited

◆ resizeContainers()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::resizeContainers ( )
inlineinherited

◆ restore()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::restore ( )
inlineinherited

◆ setUnused()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::setUnused ( )
inlineinherited

reset all used flags of all DoF entries

◆ size()

int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::size ( ) const
inlineinherited

return overall number of degrees of freedom

◆ suggestedOrder()

int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::suggestedOrder ( const ElementType entity) const
inlineinherited

◆ suggestPolynomOrder()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::suggestPolynomOrder ( const ElementType entity,
const int  polOrd 
)
inlineinherited

◆ update()

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

update DoF mapping after grid modification

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

◆ write()

void Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::write ( OutStream &  out)
inlineinherited

Member Data Documentation

◆ dimension

const int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::dimension
staticinherited

dimension of the grid

◆ discontinuousMapper

const bool Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::discontinuousMapper
staticinherited

◆ highestDimension

const int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::highestDimension
staticinherited

highest codimension used to attach dofs

◆ polynomialOrder

const int Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveDGMapperTraits< GridPart, polOrder > >::polynomialOrder
staticinherited

order of the Lagrange polynoms


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