dune-functions  2.6-dev
Public Types | Public Member Functions | Static Public Member Functions | List of all members
Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C > Class Template Reference

#include <dune/functions/functionspacebases/powerbasis.hh>

Public Types

using SubPreBasis = SPB
 
using GridView = typename SPB::GridView
 The grid view that the FE space is defined on. More...
 
using size_type = std::size_t
 
using IndexMergingStrategy = IMS
 
using MultiIndex = MI
 Type used for global numbering of the basis vectors. More...
 
using PreBasis = PowerPreBasis< MI, IMS, SPB, C >
 
using Node = typename PreBasis::template Node< TP >
 
using SubTreePath = typename TypeTree::Child< Node, 0 >::TreePath
 
using SubNodeIndexSet = typename PreBasis::SubPreBasis::template IndexSet< SubTreePath >
 

Public Member Functions

 PowerNodeIndexSet (const PreBasis &preBasis)
 
void bind (const Node &node)
 
void unbind ()
 
size_type size () const
 
template<typename It >
It indices (It it) const
 Maps from subtree index set [0..size-1] to a globally unique multi index in global basis. More...
 
template<typename It >
It indices (It multiIndices, BasisBuilder::FlatInterleaved) const
 
template<typename It >
It indices (It multiIndices, BasisBuilder::FlatLexicographic) const
 
template<typename It >
It indices (It multiIndices, BasisBuilder::BlockedLexicographic) const
 
template<typename It >
It indices (It multiIndices, BasisBuilder::LeafBlockedInterleaved) const
 

Static Public Member Functions

static const void multiIndexPushFront (MultiIndex &M, size_type M0)
 

Member Typedef Documentation

◆ GridView

template<class MI , class TP , class IMS , class SPB , std::size_t C>
using Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::GridView = typename SPB::GridView

The grid view that the FE space is defined on.

◆ IndexMergingStrategy

template<class MI , class TP , class IMS , class SPB , std::size_t C>
using Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::IndexMergingStrategy = IMS

◆ MultiIndex

template<class MI , class TP , class IMS , class SPB , std::size_t C>
using Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::MultiIndex = MI

Type used for global numbering of the basis vectors.

◆ Node

template<class MI , class TP , class IMS , class SPB , std::size_t C>
using Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::Node = typename PreBasis::template Node<TP>

◆ PreBasis

template<class MI , class TP , class IMS , class SPB , std::size_t C>
using Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::PreBasis = PowerPreBasis<MI, IMS, SPB, C>

◆ size_type

template<class MI , class TP , class IMS , class SPB , std::size_t C>
using Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::size_type = std::size_t

◆ SubNodeIndexSet

template<class MI , class TP , class IMS , class SPB , std::size_t C>
using Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::SubNodeIndexSet = typename PreBasis::SubPreBasis::template IndexSet<SubTreePath>

◆ SubPreBasis

template<class MI , class TP , class IMS , class SPB , std::size_t C>
using Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::SubPreBasis = SPB

◆ SubTreePath

template<class MI , class TP , class IMS , class SPB , std::size_t C>
using Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::SubTreePath = typename TypeTree::Child<Node,0>::TreePath

Constructor & Destructor Documentation

◆ PowerNodeIndexSet()

template<class MI , class TP , class IMS , class SPB , std::size_t C>
Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::PowerNodeIndexSet ( const PreBasis preBasis)
inline

Member Function Documentation

◆ bind()

template<class MI , class TP , class IMS , class SPB , std::size_t C>
void Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::bind ( const Node node)
inline

◆ indices() [1/5]

template<class MI , class TP , class IMS , class SPB , std::size_t C>
template<typename It >
It Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::indices ( It  it) const
inline

Maps from subtree index set [0..size-1] to a globally unique multi index in global basis.

◆ indices() [2/5]

template<class MI , class TP , class IMS , class SPB , std::size_t C>
template<typename It >
It Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::indices ( It  multiIndices,
BasisBuilder::BlockedLexicographic   
) const
inline

◆ indices() [3/5]

template<class MI , class TP , class IMS , class SPB , std::size_t C>
template<typename It >
It Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::indices ( It  multiIndices,
BasisBuilder::FlatInterleaved   
) const
inline

◆ indices() [4/5]

template<class MI , class TP , class IMS , class SPB , std::size_t C>
template<typename It >
It Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::indices ( It  multiIndices,
BasisBuilder::FlatLexicographic   
) const
inline

◆ indices() [5/5]

template<class MI , class TP , class IMS , class SPB , std::size_t C>
template<typename It >
It Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::indices ( It  multiIndices,
BasisBuilder::LeafBlockedInterleaved   
) const
inline

◆ multiIndexPushFront()

template<class MI , class TP , class IMS , class SPB , std::size_t C>
static const void Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::multiIndexPushFront ( MultiIndex M,
size_type  M0 
)
inlinestatic

◆ size()

template<class MI , class TP , class IMS , class SPB , std::size_t C>
size_type Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::size ( ) const
inline

◆ unbind()

template<class MI , class TP , class IMS , class SPB , std::size_t C>
void Dune::Functions::PowerNodeIndexSet< MI, TP, IMS, SPB, C >::unbind ( )
inline

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