dune-functions 2.10
|
A pre-basis for power bases. More...
#include <dune/functions/functionspacebases/powerbasis.hh>
Public Types | |
using | SubPreBasis = SPB |
The child pre-basis. | |
using | Node = PowerBasisNode< typename SubPreBasis::Node, C > |
Template mapping root tree path to type of created tree node. | |
using | size_type = typename Base::size_type |
Type used for indices and size information. | |
using | IndexMergingStrategy = IMS |
Strategy used to merge the global indices of the child factories. | |
using | GridView = typename SPB::GridView |
The grid view that the FE basis is defined on. | |
Public Member Functions | |
template<class... SFArgs, disableCopyMove< PowerPreBasis, SFArgs... > = 0, enableIfConstructible< SubPreBasis, SFArgs... > = 0> | |
PowerPreBasis (SFArgs &&... sfArgs) | |
Constructor for given child pre-basis objects for static size of the power-basis. | |
Node | makeNode () const |
Create tree node. | |
size_type | size () const |
Same as size(prefix) with empty prefix. | |
template<class SizePrefix > | |
size_type | size (const SizePrefix &prefix) const |
Return number of possible values for next position in multi index. | |
template<class NodeType , typename It , std::enable_if_t< NodeType::isPower, int > = 0> | |
It | indices (const NodeType &node, It it) const |
Maps from subtree index set [0..size-1] to a globally unique multi index in global basis. | |
auto | containerDescriptor () const |
Return the associated container descriptor. | |
void | initializeIndices () |
Initialize the global indices. | |
const GridView & | gridView () const |
Obtain the grid view that the basis is defined on. | |
void | update (const GridView &gv) |
Update the stored grid view, to be called if the grid has changed. | |
std::size_t | children () const |
size_type | dimension () const |
Get the total dimension of the space spanned by this basis. | |
size_type | maxNodeSize () const |
Get the maximal number of DOFs associated to node for any element. | |
const SubPreBasis & | subPreBasis () const |
Const access to the stored prebasis of the factor in the power space. | |
SubPreBasis & | subPreBasis () |
Mutable access to the stored prebasis of the factor in the power space. | |
Static Public Attributes | |
static constexpr std::integral_constant< std::size_t, C > | children = {} |
Number of children provided as an integral constant. | |
static constexpr size_type | maxMultiIndexSize = SubPreBasis::maxMultiIndexSize + isBlocked |
static constexpr size_type | minMultiIndexSize = SubPreBasis::minMultiIndexSize + isBlocked |
static constexpr size_type | multiIndexBufferSize = SubPreBasis::multiIndexBufferSize + isBlocked |
Protected Member Functions | |
template<class SizePrefix , class Children > | |
size_type | sizeImpl (SizePrefix prefix, Children children, BasisFactory::FlatInterleaved) const |
template<class SizePrefix , class Children > | |
size_type | sizeImpl (SizePrefix prefix, Children children, BasisFactory::FlatLexicographic) const |
template<class SizePrefix , class Children > | |
size_type | sizeImpl (SizePrefix prefix, Children children, BasisFactory::BlockedLexicographic) const |
template<class SizePrefix , class Children > | |
size_type | sizeImpl (SizePrefix prefix, Children children, BasisFactory::BlockedInterleaved) const |
template<class NodeType , typename It , class Children > | |
It | indicesImpl (const NodeType &node, It multiIndices, Children children, BasisFactory::FlatInterleaved) const |
template<class NodeType , typename It , class Children > | |
It | indicesImpl (const NodeType &node, It multiIndices, Children children, BasisFactory::FlatLexicographic) const |
template<class NodeType , typename It , class Children > | |
It | indicesImpl (const NodeType &node, It multiIndices, Children children, BasisFactory::BlockedLexicographic) const |
template<class NodeType , typename It , class Children > | |
It | indicesImpl (const NodeType &node, It multiIndices, Children children, BasisFactory::BlockedInterleaved) const |
template<class Children > | |
auto | containerDescriptorImpl (Children children) const |
Static Protected Member Functions | |
template<class MultiIndex > | |
static void | multiIndexPopFront (MultiIndex &M) |
template<class MultiIndex > | |
static void | multiIndexPushFront (MultiIndex &M, size_type M0) |
Protected Attributes | |
std::size_t | children_ |
SubPreBasis | subPreBasis_ |
A pre-basis for power bases.
This pre-basis represents a power of a given pre-basis. Its node type is a PowerBasisNodes for the given subnode.
IMS | An IndexMergingStrategy used to merge the global indices of the child factories |
SPB | The child pre-basis |
C | The exponent of the power node |
|
inherited |
The grid view that the FE basis is defined on.
using Dune::Functions::PowerPreBasis< IMS, SPB, C >::IndexMergingStrategy = IMS |
Strategy used to merge the global indices of the child factories.
using Dune::Functions::PowerPreBasis< IMS, SPB, C >::Node = PowerBasisNode<typename SubPreBasis::Node, C> |
Template mapping root tree path to type of created tree node.
using Dune::Functions::PowerPreBasis< IMS, SPB, C >::size_type = typename Base::size_type |
Type used for indices and size information.
using Dune::Functions::PowerPreBasis< IMS, SPB, C >::SubPreBasis = SPB |
The child pre-basis.
|
inlineexplicit |
Constructor for given child pre-basis objects for static size of the power-basis.
The child factories will be stored as copies
|
inlineinherited |
|
inline |
Return the associated container descriptor.
|
inlineprotectedinherited |
|
inlineinherited |
Get the total dimension of the space spanned by this basis.
|
inlineinherited |
Obtain the grid view that the basis is defined on.
|
inline |
Maps from subtree index set [0..size-1] to a globally unique multi index in global basis.
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineinherited |
Initialize the global indices.
|
inline |
Create tree node.
|
inlineinherited |
Get the maximal number of DOFs associated to node for any element.
|
inlinestaticprotectedinherited |
|
inlinestaticprotectedinherited |
|
inline |
Same as size(prefix) with empty prefix.
|
inline |
Return number of possible values for next position in multi index.
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineinherited |
Mutable access to the stored prebasis of the factor in the power space.
|
inlineinherited |
Const access to the stored prebasis of the factor in the power space.
|
inlineinherited |
Update the stored grid view, to be called if the grid has changed.
|
inlinestaticconstexpr |
Number of children provided as an integral constant.
|
protectedinherited |
|
staticconstexprinherited |
|
staticconstexprinherited |
|
staticconstexprinherited |
|
protectedinherited |