![]() |
Dune-Functions 2.11
|
A pre-basis for composite bases. More...
#include <dune/functions/functionspacebases/compositebasis.hh>
Public Types | |
| using | SubPreBases = std::tuple< SPB... > |
| Tuple of child pre-bases. | |
| template<std::size_t i> | |
| using | SubPreBasis = std::tuple_element_t< i, SubPreBases > |
| Export individual child pre-bases by index. | |
| using | GridView = typename std::tuple_element_t< 0, SubPreBases >::GridView |
| The grid view that the FE basis is defined on. | |
| using | size_type = std::size_t |
| Type used for indices and size information. | |
| using | IndexMergingStrategy = IMS |
| Strategy used to merge the global indices of the child pre-bases. | |
| using | Node = CompositeBasisNode< typename SPB::Node... > |
| Template mapping root tree path to type of created tree node. | |
Public Member Functions | |
| template<class... SFArgs, disableCopyMove< CompositePreBasis, SFArgs... > = 0, enableIfConstructible< std::tuple< SPB... >, SFArgs... > = 0> | |
| CompositePreBasis (SFArgs &&... sfArgs) | |
| Constructor for given child pre-basis objects. | |
| template<class GV , std::enable_if_t< std::conjunction_v< std::bool_constant<(children > 1)>, std::is_same< GV, GridView >, std::is_constructible< SPB, GridView >... > , int > | |
| CompositePreBasis (const GV &gv) | |
| Constructor for given GridView. | |
| 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. | |
| 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. | |
| 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. | |
| template<std::size_t i> | |
| const SubPreBasis< i > & | subPreBasis (Dune::index_constant< i >={}) const |
| Const access to the stored prebasis of the factor in the power space. | |
| template<std::size_t i> | |
| SubPreBasis< i > & | subPreBasis (Dune::index_constant< i >={}) |
| Mutable access to the stored prebasis of the factor in the power space. | |
| const auto & | subPreBases () const |
| Const access to the stored prebases tuple. | |
| template<typename It > | |
| It | indices (const Node &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. | |
Static Public Attributes | |
| static constexpr size_type | maxMultiIndexSize = std::max({SPB::maxMultiIndexSize...}) + isBlocked |
| static constexpr size_type | minMultiIndexSize = std::min({SPB::minMultiIndexSize...}) + isBlocked |
| static constexpr size_type | multiIndexBufferSize = std::max({SPB::multiIndexBufferSize...}) + isBlocked |
Protected Types | |
| using | ChildIndices = std::make_index_sequence< children > |
Static Protected Attributes | |
| static const std::size_t | children = sizeof...(SPB) |
Detailed Description
class Dune::Functions::CompositePreBasis< IMS, SPB >
A pre-basis for composite bases.
This pre-basis represents a composition of several given pre-bases. Its node type is a CompositeBasisNodes for the given subnodes.
- Template Parameters
-
IMS An IndexMergingStrategy used to merge the global indices of the child pre-bases SPB The child pre-bases
Member Typedef Documentation
◆ ChildIndices
|
protected |
◆ GridView
| using Dune::Functions::CompositePreBasis< IMS, SPB >::GridView = typename std::tuple_element_t<0, SubPreBases>::GridView |
The grid view that the FE basis is defined on.
◆ IndexMergingStrategy
| using Dune::Functions::CompositePreBasis< IMS, SPB >::IndexMergingStrategy = IMS |
Strategy used to merge the global indices of the child pre-bases.
◆ Node
| using Dune::Functions::CompositePreBasis< IMS, SPB >::Node = CompositeBasisNode<typename SPB::Node...> |
Template mapping root tree path to type of created tree node.
◆ size_type
| using Dune::Functions::CompositePreBasis< IMS, SPB >::size_type = std::size_t |
Type used for indices and size information.
◆ SubPreBases
| using Dune::Functions::CompositePreBasis< IMS, SPB >::SubPreBases = std::tuple<SPB...> |
Tuple of child pre-bases.
◆ SubPreBasis
| using Dune::Functions::CompositePreBasis< IMS, SPB >::SubPreBasis = std::tuple_element_t<i, SubPreBases> |
Export individual child pre-bases by index.
Constructor & Destructor Documentation
◆ CompositePreBasis() [1/2]
|
inline |
Constructor for given child pre-basis objects.
The child pre-basis will be stored as copies
◆ CompositePreBasis() [2/2]
|
inline |
Constructor for given GridView.
This constructor is only available if all child pre-bases are constructible from the grid view.
Member Function Documentation
◆ containerDescriptor()
|
inline |
Return the associated container descriptor.
◆ dimension()
|
inline |
Get the total dimension of the space spanned by this basis.
◆ gridView()
|
inline |
Obtain the grid view that the basis is defined on.
◆ indices()
|
inline |
Maps from subtree index set [0..size-1] to a globally unique multi index in global basis.
◆ initializeIndices()
|
inline |
Initialize the global indices.
◆ makeNode()
|
inline |
Create tree node.
◆ maxNodeSize()
|
inline |
Get the maximal number of DOFs associated to node for any element.
◆ size() [1/2]
|
inline |
Same as size(prefix) with empty prefix.
◆ size() [2/2]
|
inline |
Return number of possible values for next position in multi index.
◆ subPreBases()
|
inline |
Const access to the stored prebases tuple.
◆ subPreBasis() [1/2]
|
inline |
Mutable access to the stored prebasis of the factor in the power space.
◆ subPreBasis() [2/2]
|
inline |
Const access to the stored prebasis of the factor in the power space.
◆ update()
|
inline |
Update the stored grid view, to be called if the grid has changed.
Member Data Documentation
◆ children
|
staticprotected |
◆ maxMultiIndexSize
|
staticconstexpr |
◆ minMultiIndexSize
|
staticconstexpr |
◆ multiIndexBufferSize
|
staticconstexpr |
The documentation for this class was generated from the following file:
