dune-fem
2.4.1-rc
|
#include </local/tomalk/somewhere/tmp/dune-fem/dune/fem/space/mapper/genericadaptivedofmapper.hh>
Classes | |
struct | EntityDofStorage |
struct | InsertSubEntities |
struct | NumDofs |
struct | NumDofs< codim, true > |
struct | PolynomOrderStorage |
struct | RemoveSubEntities |
Public Types | |
enum | { minOrder = 1 } |
enum | { maxOrder = polynomialOrder } |
enum | { numOrders = maxOrder - minOrder + 1 } |
typedef TraitsImp | Traits |
typedef Traits::GridPartType | GridPartType |
type of the grid part More... | |
typedef Traits::ElementType | ElementType |
type of entities (codim 0) More... | |
typedef GridPartType::GridType | GridType |
type of the underlying grid More... | |
typedef GridPartType::IndexSetType | IndexSetType |
type of the index set More... | |
typedef Traits::GlobalKeyType | GlobalKeyType |
type of global key More... | |
typedef GridType::ctype | FieldType |
type of coordinates within the grid More... | |
typedef Traits::CompiledLocalKeyVectorType | CompiledLocalKeyVectorType |
type of vector containing compiled local keys More... | |
typedef CompiledLocalKeyVectorType::value_type::value_type | CompiledLocalKeyType |
compiled local key type More... | |
typedef DofManager< GridType > | DofManagerType |
type of the DoF manager More... | |
typedef EntityDofStorage | EntityDofStorageType |
typedef PolynomOrderStorage | PolynomOrderStorageType |
typedef PersistentContainer< GridType, EntityDofStorageType > | DofContainerType |
typedef PersistentContainer< GridType, PolynomOrderStorageType > | PolyOrderContainerType |
typedef BaseType::SizeType | SizeType |
type of size integer More... | |
typedef Traits::DofMapperType | DofMapperType |
type of the DofMapper implementation More... | |
typedef ElementType | EntityType |
Public Member Functions | |
GenericAdaptiveDofMapper (const GridPartType &gridPart, CompiledLocalKeyVectorType &compiledLocalKeyVector) | |
constructor More... | |
GenericAdaptiveDofMapper (const GenericAdaptiveDofMapper &other, CompiledLocalKeyVectorType &compiledLocalKeyVector) | |
sort of copy constructor More... | |
int | polynomOrder (const ElementType &entity) const |
void | setPolynomOrder (const ElementType &entity, const int polOrd) |
DofContainerType & | dofContainer (const std::size_t codim) const |
const CompiledLocalKeyType & | compiledLocalKey (const int polOrd, const GeometryType type) const |
virtual | ~GenericAdaptiveDofMapper () |
destructor More... | |
int | size () const |
return overall number of degrees of freedom More... | |
template<class Functor > | |
void | mapEach (const ElementType &element, Functor f) const |
int | mapToGlobal (const ElementType &entity, const int localDof) const |
template<class Entity , class Functor > | |
void | mapEachEntityDof (const Entity &entity, Functor f) const |
map each local DoF number to a global key More... | |
int | maxNumDofs () const |
obtain maximal number of DoFs on one entity More... | |
int | numDofs (const ElementType &entity) const |
obtain number of DoFs on an entity More... | |
template<class Entity > | |
int | numEntityDofs (const Entity &entity) const |
obtain number of DoFs actually belonging to an entity More... | |
bool | contains (int codim) const |
Check, whether any DoFs are associated with a codimension. More... | |
bool | fixedDataSize (int codim) const |
Check, whether the data in a codimension has fixed size. More... | |
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 More... | |
unsigned int | insertFather (const ElementType &entity) |
bool | considerHierarchy () const |
return true if elements can be refined more than once during adaptation More... | |
size_t | insertAllUsed () |
return number of DoFs currently used for space More... | |
void | printDofs () const |
void | printEntityDofs (const ElementType &entity) const |
void | setUnused () |
reset all used flags of all DoF entries More... | |
bool | compress () |
void | backup () const |
void | restore () |
template<class InStream > | |
void | read (InStream &in) |
template<class OutStream > | |
void | write (OutStream &out) |
Static Public Attributes | |
static const bool | discontinuousMapper = Traits :: discontinuousMapper |
static const int | dimension = GridType::dimension |
dimension of the grid More... | |
static const int | highestDimension = ( discontinuousMapper ) ? 0 : dimension |
highest codimension used to attach dofs More... | |
static const int | polynomialOrder = Traits::polynomialOrder |
order of the Lagrange polynoms More... | |
Protected Member Functions | |
const TraitsImp::DofMapperType & | asImp () const |
TraitsImp::DofMapperType & | asImp () |
Static Protected Member Functions | |
static const TraitsImp::DofMapperType & | asImp (const ThisType &other) |
static TraitsImp::DofMapperType & | asImp (ThisType &other) |
typedef CompiledLocalKeyVectorType :: value_type :: value_type Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::CompiledLocalKeyType |
compiled local key type
typedef Traits :: CompiledLocalKeyVectorType Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::CompiledLocalKeyVectorType |
type of vector containing compiled local keys
typedef PersistentContainer< GridType, EntityDofStorageType > Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::DofContainerType |
typedef DofManager< GridType > Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::DofManagerType |
type of the DoF manager
|
inherited |
type of the DofMapper implementation
typedef Traits::ElementType Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::ElementType |
type of entities (codim 0)
typedef EntityDofStorage Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::EntityDofStorageType |
|
inherited |
typedef GridType::ctype Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::FieldType |
type of coordinates within the grid
typedef Traits :: GlobalKeyType Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::GlobalKeyType |
type of global key
typedef Traits::GridPartType Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::GridPartType |
type of the grid part
typedef GridPartType::GridType Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::GridType |
type of the underlying grid
typedef GridPartType::IndexSetType Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::IndexSetType |
type of the index set
typedef PolynomOrderStorage Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::PolynomOrderStorageType |
typedef PersistentContainer< GridType, PolynomOrderStorageType > Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::PolyOrderContainerType |
|
inherited |
type of size integer
typedef TraitsImp Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::Traits |
|
inline |
constructor
Referenced by Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::write().
|
inline |
sort of copy constructor
|
inlinevirtual |
destructor
|
inline |
adjust mapper to newly set polynomial orders
|
inlinestaticprotectedinherited |
|
inlinestaticprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inline |
|
inline |
Referenced by Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::insertEntityDofs(), Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::mapToGlobal(), and Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::numDofs().
|
inline |
|
inline |
|
inline |
return true if elements can be refined more than once during adaptation
Referenced by Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::insertAllUsed().
|
inline |
Check, whether any DoFs are associated with a codimension.
|
inline |
Referenced by Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::InsertSubEntities< codim >::apply(), Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::RemoveSubEntities< codim >::apply(), Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::compress(), Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::mapEachEntityDof(), Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::mapToGlobal(), Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::numEntityDofs(), Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::resizeContainers(), and Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::setUnused().
|
inline |
Check, whether the data in a codimension has fixed size.
|
inline |
return number of DoFs currently used for space
Referenced by Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::compress(), and Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::resize().
|
inline |
|
inline |
Referenced by Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::insertAllUsed(), Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::insertEntity(), and Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::insertFather().
|
inline |
|
inline |
|
inline |
map each local DoF number to a global key
[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:
For each DoF to be mapped, this method will call the application operator once.
|
inline |
|
inline |
obtain maximal number of DoFs on one entity
|
inline |
|
inline |
|
inline |
|
inline |
obtain number of DoFs on an entity
[in] | element | entity of codimension 0 |
Referenced by Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::EntityDofStorage::insert(), Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::InsertSubEntities< codim >::insertDofs(), Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::mapEach(), and Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::printEntityDofs().
|
inline |
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.
[in] | entity | entity of codimension |
Referenced by Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::mapEachEntityDof().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Referenced by Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::compress(), Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::insertEntity(), and Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::resize().
|
inline |
|
inline |
|
inline |
reset all used flags of all DoF entries
Referenced by Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::insertAllUsed().
|
inline |
return overall number of degrees of freedom
Referenced by Dune::Fem::GenericAdaptiveDofMapper< TraitsImp >::EntityDofStorage::dof(), and Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::numDofs().
|
inline |
|
static |
dimension of the grid
|
static |
|
static |
highest codimension used to attach dofs
Referenced by Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::compress(), Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::GenericAdaptiveDofMapper(), Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::resizeContainers(), and Dune::Fem::GenericAdaptiveDofMapper< PAdaptiveLagrangeMapperTraits< GridPart, polOrder > >::setUnused().
|
static |
order of the Lagrange polynoms