dune-pdelab 2.7-git
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | Protected Types | Protected Member Functions | List of all members
Dune::PDELab::lexicographic_ordering::Base< DI, CI, Node > Class Template Reference

#include <dune/pdelab/ordering/lexicographicordering.hh>

Inheritance diagram for Dune::PDELab::lexicographic_ordering::Base< DI, CI, Node >:
Inheritance graph

Public Types

typedef OrderingBase< DI, CI >::Traits Traits
 
typedef LexicographicOrderingTag OrderingTag
 
typedef HierarchicContainerAllocationTag ContainerAllocationTag
 
typedef DefaultLFSCacheTag CacheTag
 

Public Member Functions

 Base (Node &node, bool container_blocked, typename BaseT::GFSData *gfs_data)
 Construct ordering object.
 
template<typename ItIn , typename ItOut >
void map_lfs_indices (const ItIn begin, const ItIn end, ItOut out) const
 
template<typename CIOutIterator , typename DIOutIterator = DummyDOFIndexIterator>
Traits::SizeType extract_entity_indices (const typename Traits::DOFIndex::EntityIndex &ei, typename Traits::SizeType child_index, CIOutIterator ci_out, const CIOutIterator ci_end) const
 
Traits::ContainerIndex mapIndex (const typename Traits::DOFIndex &di) const
 
void mapIndex (typename Traits::DOFIndexView di, typename Traits::ContainerIndex &ci) const
 
Traits::SizeType size () const
 
Traits::SizeType size (const typename Traits::SizeType child_index) const
 
Traits::SizeType blockCount () const
 
Traits::SizeType sizeOffset (const typename Traits::SizeType child_index) const
 
Traits::SizeType blockOffset (const typename Traits::SizeType child_index) const
 
Traits::SizeType maxLocalSize () const
 
MergeMode::type mergeMode () const
 
void update ()
 
bool containerBlocked () const
 
std::size_t childOrderingCount () const
 
OrderingBasechildOrdering (typename Traits::SizeType i)
 
const OrderingBasechildOrdering (typename Traits::SizeType i) const
 
bool contains (typename Traits::SizeType codim) const
 
bool fixedSize () const
 
bool fixedSize (typename Traits::SizeType codim) const
 

Public Attributes

bool _fixed_size
 
const bool _container_blocked
 
const MergeMode::type _merge_mode
 
const std::size_t _child_count
 
std::vector< OrderingBase * > _children
 
std::vector< typename Traits::SizeType > _child_size_offsets
 
std::vector< typename Traits::SizeType > _child_block_offsets
 
std::vector< typename Traits::SizeType > _child_block_merge_offsets
 
Traits::CodimFlag _codim_used
 
Traits::CodimFlag _codim_fixed_size
 
std::size_t _max_local_size
 
std::size_t _size
 
std::size_t _block_count
 
const VirtualOrderingBase< DI, CI > * _delegate
 
GFSData_gfs_data
 

Static Public Attributes

static const bool consume_tree_index = true
 
static const bool has_dynamic_ordering_children = true
 

Protected Types

typedef Dune::PDELab::impl::GridFunctionSpaceOrderingData< typename Traits::SizeType > GFSData
 

Protected Member Functions

void setDelegate (const VirtualOrderingBase< DI, CI > *delegate)
 Set the delegate called in mapIndex().
 
void _mapIndex (typename Traits::DOFIndexView di, typename Traits::ContainerIndex &ci) const
 

Member Typedef Documentation

◆ CacheTag

template<typename DI , typename CI >
typedef DefaultLFSCacheTag Dune::PDELab::OrderingBase< DI, CI >::CacheTag
inherited

◆ ContainerAllocationTag

template<typename DI , typename CI >
typedef HierarchicContainerAllocationTag Dune::PDELab::OrderingBase< DI, CI >::ContainerAllocationTag
inherited

◆ GFSData

template<typename DI , typename CI >
typedef Dune::PDELab::impl::GridFunctionSpaceOrderingData<typename Traits::SizeType> Dune::PDELab::OrderingBase< DI, CI >::GFSData
protectedinherited

◆ OrderingTag

template<typename DI , typename CI , typename Node >
typedef LexicographicOrderingTag Dune::PDELab::lexicographic_ordering::Base< DI, CI, Node >::OrderingTag

◆ Traits

template<typename DI , typename CI , typename Node >
typedef OrderingBase<DI,CI>::Traits Dune::PDELab::lexicographic_ordering::Base< DI, CI, Node >::Traits

Constructor & Destructor Documentation

◆ Base()

template<typename DI , typename CI , typename Node >
Dune::PDELab::lexicographic_ordering::Base< DI, CI, Node >::Base ( Node &  node,
bool  container_blocked,
typename BaseT::GFSData *  gfs_data 
)
inline

Construct ordering object.

In general, an ordering object is not properly setup after construction. This must be done by a seperate call to update() after all the children have been properly set up.

Member Function Documentation

◆ _mapIndex()

template<typename DI , typename CI >
void Dune::PDELab::OrderingBase< DI, CI >::_mapIndex ( typename Traits::DOFIndexView  di,
typename Traits::ContainerIndex &  ci 
) const
inlineprotectedinherited

◆ blockCount()

template<typename DI , typename CI >
Traits::SizeType Dune::PDELab::OrderingBase< DI, CI >::blockCount ( ) const
inlineinherited

◆ blockOffset()

template<typename DI , typename CI >
Traits::SizeType Dune::PDELab::OrderingBase< DI, CI >::blockOffset ( const typename Traits::SizeType  child_index) const
inlineinherited

◆ childOrdering() [1/2]

template<typename DI , typename CI >
OrderingBase & Dune::PDELab::OrderingBase< DI, CI >::childOrdering ( typename Traits::SizeType  i)
inlineinherited

◆ childOrdering() [2/2]

template<typename DI , typename CI >
const OrderingBase & Dune::PDELab::OrderingBase< DI, CI >::childOrdering ( typename Traits::SizeType  i) const
inlineinherited

◆ childOrderingCount()

template<typename DI , typename CI >
std::size_t Dune::PDELab::OrderingBase< DI, CI >::childOrderingCount ( ) const
inlineinherited

◆ containerBlocked()

template<typename DI , typename CI >
bool Dune::PDELab::OrderingBase< DI, CI >::containerBlocked ( ) const
inlineinherited

◆ contains()

template<typename DI , typename CI >
bool Dune::PDELab::OrderingBase< DI, CI >::contains ( typename Traits::SizeType  codim) const
inlineinherited

◆ extract_entity_indices()

template<typename DI , typename CI , typename Node >
template<typename CIOutIterator , typename DIOutIterator = DummyDOFIndexIterator>
Traits::SizeType Dune::PDELab::lexicographic_ordering::Base< DI, CI, Node >::extract_entity_indices ( const typename Traits::DOFIndex::EntityIndex &  ei,
typename Traits::SizeType  child_index,
CIOutIterator  ci_out,
const CIOutIterator  ci_end 
) const
inline

◆ fixedSize() [1/2]

template<typename DI , typename CI >
bool Dune::PDELab::OrderingBase< DI, CI >::fixedSize ( ) const
inlineinherited

◆ fixedSize() [2/2]

template<typename DI , typename CI >
bool Dune::PDELab::OrderingBase< DI, CI >::fixedSize ( typename Traits::SizeType  codim) const
inlineinherited

◆ map_lfs_indices()

template<typename DI , typename CI , typename Node >
template<typename ItIn , typename ItOut >
void Dune::PDELab::lexicographic_ordering::Base< DI, CI, Node >::map_lfs_indices ( const ItIn  begin,
const ItIn  end,
ItOut  out 
) const
inline

◆ mapIndex() [1/2]

template<typename DI , typename CI >
Traits::ContainerIndex Dune::PDELab::OrderingBase< DI, CI >::mapIndex ( const typename Traits::DOFIndex &  di) const
inlineinherited

◆ mapIndex() [2/2]

template<typename DI , typename CI >
void Dune::PDELab::OrderingBase< DI, CI >::mapIndex ( typename Traits::DOFIndexView  di,
typename Traits::ContainerIndex &  ci 
) const
inlineinherited

◆ maxLocalSize()

template<typename DI , typename CI >
Traits::SizeType Dune::PDELab::OrderingBase< DI, CI >::maxLocalSize ( ) const
inlineinherited

◆ mergeMode()

template<typename DI , typename CI >
MergeMode::type Dune::PDELab::OrderingBase< DI, CI >::mergeMode ( ) const
inlineinherited

◆ setDelegate()

template<typename DI , typename CI >
void Dune::PDELab::OrderingBase< DI, CI >::setDelegate ( const VirtualOrderingBase< DI, CI > *  delegate)
inlineprotectedinherited

Set the delegate called in mapIndex().

When copying an Ordering with a delegate, the derived Ordering must call this method with 'this' as its argument in the copy and the move constructors!

◆ size() [1/2]

template<typename DI , typename CI >
Traits::SizeType Dune::PDELab::OrderingBase< DI, CI >::size ( ) const
inlineinherited

◆ size() [2/2]

template<typename DI , typename CI >
Traits::SizeType Dune::PDELab::OrderingBase< DI, CI >::size ( const typename Traits::SizeType  child_index) const
inlineinherited

◆ sizeOffset()

template<typename DI , typename CI >
Traits::SizeType Dune::PDELab::OrderingBase< DI, CI >::sizeOffset ( const typename Traits::SizeType  child_index) const
inlineinherited

◆ update()

template<typename DI , typename CI >
void Dune::PDELab::OrderingBase< DI, CI >::update ( )
inlineinherited

Member Data Documentation

◆ _block_count

template<typename DI , typename CI >
std::size_t Dune::PDELab::OrderingBase< DI, CI >::_block_count
inherited

◆ _child_block_merge_offsets

template<typename DI , typename CI >
std::vector<typename Traits::SizeType> Dune::PDELab::OrderingBase< DI, CI >::_child_block_merge_offsets
inherited

◆ _child_block_offsets

template<typename DI , typename CI >
std::vector<typename Traits::SizeType> Dune::PDELab::OrderingBase< DI, CI >::_child_block_offsets
inherited

◆ _child_count

template<typename DI , typename CI >
const std::size_t Dune::PDELab::OrderingBase< DI, CI >::_child_count
inherited

◆ _child_size_offsets

template<typename DI , typename CI >
std::vector<typename Traits::SizeType> Dune::PDELab::OrderingBase< DI, CI >::_child_size_offsets
inherited

◆ _children

template<typename DI , typename CI >
std::vector<OrderingBase*> Dune::PDELab::OrderingBase< DI, CI >::_children
inherited

◆ _codim_fixed_size

template<typename DI , typename CI >
Traits::CodimFlag Dune::PDELab::OrderingBase< DI, CI >::_codim_fixed_size
inherited

◆ _codim_used

template<typename DI , typename CI >
Traits::CodimFlag Dune::PDELab::OrderingBase< DI, CI >::_codim_used
inherited

◆ _container_blocked

template<typename DI , typename CI >
const bool Dune::PDELab::OrderingBase< DI, CI >::_container_blocked
inherited

◆ _delegate

template<typename DI , typename CI >
const VirtualOrderingBase<DI,CI>* Dune::PDELab::OrderingBase< DI, CI >::_delegate
inherited

◆ _fixed_size

template<typename DI , typename CI >
bool Dune::PDELab::OrderingBase< DI, CI >::_fixed_size
inherited

◆ _gfs_data

template<typename DI , typename CI >
GFSData* Dune::PDELab::OrderingBase< DI, CI >::_gfs_data
inherited

◆ _max_local_size

template<typename DI , typename CI >
std::size_t Dune::PDELab::OrderingBase< DI, CI >::_max_local_size
inherited

◆ _merge_mode

template<typename DI , typename CI >
const MergeMode::type Dune::PDELab::OrderingBase< DI, CI >::_merge_mode
inherited

◆ _size

template<typename DI , typename CI >
std::size_t Dune::PDELab::OrderingBase< DI, CI >::_size
inherited

◆ consume_tree_index

template<typename DI , typename CI , typename Node >
const bool Dune::PDELab::lexicographic_ordering::Base< DI, CI, Node >::consume_tree_index = true
static

◆ has_dynamic_ordering_children

template<typename DI , typename CI >
const bool Dune::PDELab::OrderingBase< DI, CI >::has_dynamic_ordering_children = true
staticinherited

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