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

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

Inheritance diagram for Dune::PDELab::LeafLocalOrdering< OrderingTag, FEM, ES, DI, CI >:
Inheritance graph

Public Types

typedef BaseT::Traits Traits
 

Public Member Functions

 LeafLocalOrdering (const std::shared_ptr< const FEM > &fem, const ES &es, bool backend_blocked, typename BaseT::GFSData *gfs_data)
 
const Traits::EntitySetentitySet () const
 
const Traits::GridViewgridView () const
 
const FEM & finiteElementMap () const
 
template<typename CodimMask >
void collect_used_codims (CodimMask &codims) const
 
void update_a_priori_fixed_size ()
 
void setup_fixed_size_possible ()
 
Traits::SizeType size (const typename Traits::ContainerIndex &suffix, const typename Traits::DOFIndex::EntityIndex &index) const
 Returns the size for a given suffix.
 
Traits::SizeType size (const typename Traits::DOFIndex::EntityIndex &index) const
 
Traits::SizeType size (const typename Traits::SizeType geometry_type_index, const typename Traits::SizeType entity_index) const
 
Traits::SizeType size (const typename Traits::SizeType geometry_type_index, const typename Traits::SizeType entity_index, const typename Traits::SizeType child_index) const
 
void map_local_index (const typename Traits::SizeType geometry_type_index, const typename Traits::SizeType entity_index, typename Traits::TreeIndexView mi, typename Traits::ContainerIndex &ci) const
 
template<typename ItIn , typename ItOut >
void map_lfs_indices (const ItIn begin, const ItIn end, ItOut out) const
 Set last index of container indices.
 
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, DIOutIterator di_out=DIOutIterator()) const
 
Traits::SizeType offset (const typename Traits::SizeType geometry_type_index, const typename Traits::SizeType entity_index, const typename Traits::SizeType child_index) const
 
bool fixedSize () const
 
bool contains (const GeometryType &gt) const
 
bool contains (typename Traits::SizeType codim) const
 
bool contains_geometry_type (typename Traits::SizeType gt_index) const
 
Traits::SizeType maxLocalSize () const
 

Static Public Attributes

static const bool has_dynamic_ordering_children = true
 
static const bool consume_tree_index = true
 
static constexpr auto GT_UNUSED = ~std::size_t(0)
 

Protected Types

typedef impl::GridFunctionSpaceOrderingData< typename Traits::SizeTypeGFSData
 

Protected Member Functions

template<class Node >
Traits::SizeType node_size (const Node &node, typename Traits::ContainerIndex suffix, const typename Traits::DOFIndex::EntityIndex &index) const
 Gives the size for a given entity and suffix.
 
bool containerBlocked () const
 
std::size_t childOrderingCount () const
 
LocalOrderingBasechildOrdering (typename Traits::SizeType i)
 
const LocalOrderingBasechildOrdering (typename Traits::SizeType i) const
 
void disable_container_blocking ()
 

Protected Attributes

bool _fixed_size
 
bool _fixed_size_possible
 
bool _container_blocked
 
std::size_t _max_local_size
 
const std::size_t _child_count
 
std::vector< LocalOrderingBase * > _children
 
Traits::CodimFlag _codim_used
 
std::vector< bool > _gt_used
 
std::vector< typename Traits::SizeType_gt_entity_offsets
 
std::vector< typename Traits::SizeType_gt_dof_offsets
 
std::vector< typename Traits::SizeType_entity_dof_offsets
 
GFSData_gfs_data
 

Member Typedef Documentation

◆ GFSData

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

◆ Traits

template<typename OrderingTag , typename FEM , typename ES , typename DI , typename CI >
typedef BaseT::Traits Dune::PDELab::LeafLocalOrdering< OrderingTag, FEM, ES, DI, CI >::Traits

Constructor & Destructor Documentation

◆ LeafLocalOrdering()

template<typename OrderingTag , typename FEM , typename ES , typename DI , typename CI >
Dune::PDELab::LeafLocalOrdering< OrderingTag, FEM, ES, DI, CI >::LeafLocalOrdering ( const std::shared_ptr< const FEM > &  fem,
const ES &  es,
bool  backend_blocked,
typename BaseT::GFSData gfs_data 
)
inline

Member Function Documentation

◆ childOrdering() [1/2]

template<typename ES , typename DI , typename CI >
LocalOrderingBase & Dune::PDELab::LocalOrderingBase< ES, DI, CI >::childOrdering ( typename Traits::SizeType  i)
inlineprotectedinherited

◆ childOrdering() [2/2]

template<typename ES , typename DI , typename CI >
const LocalOrderingBase & Dune::PDELab::LocalOrderingBase< ES, DI, CI >::childOrdering ( typename Traits::SizeType  i) const
inlineprotectedinherited

◆ childOrderingCount()

template<typename ES , typename DI , typename CI >
std::size_t Dune::PDELab::LocalOrderingBase< ES, DI, CI >::childOrderingCount ( ) const
inlineprotectedinherited

◆ collect_used_codims()

template<typename OrderingTag , typename FEM , typename ES , typename DI , typename CI >
template<typename CodimMask >
void Dune::PDELab::LeafLocalOrdering< OrderingTag, FEM, ES, DI, CI >::collect_used_codims ( CodimMask &  codims) const
inline

◆ containerBlocked()

template<typename ES , typename DI , typename CI >
bool Dune::PDELab::LocalOrderingBase< ES, DI, CI >::containerBlocked ( ) const
inlineprotectedinherited

◆ contains() [1/2]

template<typename ES , typename DI , typename CI >
bool Dune::PDELab::LocalOrderingBase< ES, DI, CI >::contains ( const GeometryType &  gt) const
inlineinherited

◆ contains() [2/2]

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

◆ contains_geometry_type()

template<typename ES , typename DI , typename CI >
bool Dune::PDELab::LocalOrderingBase< ES, DI, CI >::contains_geometry_type ( typename Traits::SizeType  gt_index) const
inlineinherited

◆ disable_container_blocking()

template<typename ES , typename DI , typename CI >
void Dune::PDELab::LocalOrderingBase< ES, DI, CI >::disable_container_blocking ( )
inlineprotectedinherited

◆ entitySet()

template<typename OrderingTag , typename FEM , typename ES , typename DI , typename CI >
const Traits::EntitySet & Dune::PDELab::LeafLocalOrdering< OrderingTag, FEM, ES, DI, CI >::entitySet ( ) const
inline

◆ extract_entity_indices()

template<typename ES , typename DI , typename CI >
template<typename CIOutIterator , typename DIOutIterator = DummyDOFIndexIterator>
Traits::SizeType Dune::PDELab::LocalOrderingBase< ES, DI, CI >::extract_entity_indices ( const typename Traits::DOFIndex::EntityIndex &  ei,
typename Traits::SizeType  child_index,
CIOutIterator  ci_out,
const CIOutIterator  ci_end,
DIOutIterator  di_out = DIOutIterator() 
) const
inlineinherited

◆ finiteElementMap()

template<typename OrderingTag , typename FEM , typename ES , typename DI , typename CI >
const FEM & Dune::PDELab::LeafLocalOrdering< OrderingTag, FEM, ES, DI, CI >::finiteElementMap ( ) const
inline

◆ fixedSize()

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

◆ gridView()

template<typename OrderingTag , typename FEM , typename ES , typename DI , typename CI >
const Traits::GridView & Dune::PDELab::LeafLocalOrdering< OrderingTag, FEM, ES, DI, CI >::gridView ( ) const
inline

◆ map_lfs_indices()

template<typename ES , typename DI , typename CI >
template<typename ItIn , typename ItOut >
void Dune::PDELab::LocalOrderingBase< ES, DI, CI >::map_lfs_indices ( const ItIn  begin,
const ItIn  end,
ItOut  out 
) const
inlineinherited

Set last index of container indices.

For a (view) list of dof indices, this method will fill or append the last index of the same ammount of container indices.

Template Parameters
ItInDOFIndexViewIterator<DOFIterator>
ItOutstd::vector<CI>::iterator
Parameters
beginbegin iterator for (view) list of dof indices
endbegin iterator for (view) list of dof indices
outbegin iterator of container indices to be filled out

◆ map_local_index()

template<typename ES , typename DI , typename CI >
void Dune::PDELab::LocalOrderingBase< ES, DI, CI >::map_local_index ( const typename Traits::SizeType  geometry_type_index,
const typename Traits::SizeType  entity_index,
typename Traits::TreeIndexView  mi,
typename Traits::ContainerIndex ci 
) const
inlineinherited

◆ maxLocalSize()

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

◆ node_size()

template<typename ES , typename DI , typename CI >
template<class Node >
Traits::SizeType Dune::PDELab::LocalOrderingBase< ES, DI, CI >::node_size ( const Node &  node,
typename Traits::ContainerIndex  suffix,
const typename Traits::DOFIndex::EntityIndex &  index 
) const
inlineprotectedinherited

Gives the size for a given entity and suffix.

This method is used by typetree class derived from this class

Parameters
nodeTypeTree version of this class
suffixMultiIndex with a partial path to a container
indexEntity index to compute the size
Returns
Traits::SizeType The size required for such a path.

◆ offset()

template<typename ES , typename DI , typename CI >
Traits::SizeType Dune::PDELab::LocalOrderingBase< ES, DI, CI >::offset ( const typename Traits::SizeType  geometry_type_index,
const typename Traits::SizeType  entity_index,
const typename Traits::SizeType  child_index 
) const
inlineinherited

◆ setup_fixed_size_possible()

template<typename OrderingTag , typename FEM , typename ES , typename DI , typename CI >
void Dune::PDELab::LeafLocalOrdering< OrderingTag, FEM, ES, DI, CI >::setup_fixed_size_possible ( )
inline

◆ size() [1/4]

template<typename OrderingTag , typename FEM , typename ES , typename DI , typename CI >
Traits::SizeType Dune::PDELab::LeafLocalOrdering< OrderingTag, FEM, ES, DI, CI >::size ( const typename Traits::ContainerIndex suffix,
const typename Traits::DOFIndex::EntityIndex &  index 
) const
inline

Returns the size for a given suffix.

This computes the size required for a given suffix of a container index.

Parameters
suffixMultiIndex with a partial path to a container
indexEntity index to compute the size
Returns
Traits::SizeType The size required for such a path.

◆ size() [2/4]

template<typename OrderingTag , typename FEM , typename ES , typename DI , typename CI >
Traits::SizeType Dune::PDELab::LocalOrderingBase< ES, DI, CI >::size ( const typename Traits::DOFIndex::EntityIndex &  index) const
inline

◆ size() [3/4]

template<typename OrderingTag , typename FEM , typename ES , typename DI , typename CI >
Traits::SizeType Dune::PDELab::LocalOrderingBase< ES, DI, CI >::size ( const typename Traits::SizeType  geometry_type_index,
const typename Traits::SizeType  entity_index 
) const
inline

◆ size() [4/4]

template<typename OrderingTag , typename FEM , typename ES , typename DI , typename CI >
Traits::SizeType Dune::PDELab::LocalOrderingBase< ES, DI, CI >::size ( const typename Traits::SizeType  geometry_type_index,
const typename Traits::SizeType  entity_index,
const typename Traits::SizeType  child_index 
) const
inline

◆ update_a_priori_fixed_size()

template<typename OrderingTag , typename FEM , typename ES , typename DI , typename CI >
void Dune::PDELab::LeafLocalOrdering< OrderingTag, FEM, ES, DI, CI >::update_a_priori_fixed_size ( )
inline

Member Data Documentation

◆ _child_count

template<typename ES , typename DI , typename CI >
const std::size_t Dune::PDELab::LocalOrderingBase< ES, DI, CI >::_child_count
protectedinherited

◆ _children

template<typename ES , typename DI , typename CI >
std::vector<LocalOrderingBase*> Dune::PDELab::LocalOrderingBase< ES, DI, CI >::_children
protectedinherited

◆ _codim_used

template<typename ES , typename DI , typename CI >
Traits::CodimFlag Dune::PDELab::LocalOrderingBase< ES, DI, CI >::_codim_used
protectedinherited

◆ _container_blocked

template<typename ES , typename DI , typename CI >
bool Dune::PDELab::LocalOrderingBase< ES, DI, CI >::_container_blocked
protectedinherited

◆ _entity_dof_offsets

template<typename ES , typename DI , typename CI >
std::vector<typename Traits::SizeType> Dune::PDELab::LocalOrderingBase< ES, DI, CI >::_entity_dof_offsets
protectedinherited

◆ _fixed_size

template<typename ES , typename DI , typename CI >
bool Dune::PDELab::LocalOrderingBase< ES, DI, CI >::_fixed_size
protectedinherited

◆ _fixed_size_possible

template<typename ES , typename DI , typename CI >
bool Dune::PDELab::LocalOrderingBase< ES, DI, CI >::_fixed_size_possible
protectedinherited

◆ _gfs_data

template<typename ES , typename DI , typename CI >
GFSData* Dune::PDELab::LocalOrderingBase< ES, DI, CI >::_gfs_data
protectedinherited

◆ _gt_dof_offsets

template<typename ES , typename DI , typename CI >
std::vector<typename Traits::SizeType> Dune::PDELab::LocalOrderingBase< ES, DI, CI >::_gt_dof_offsets
protectedinherited

◆ _gt_entity_offsets

template<typename ES , typename DI , typename CI >
std::vector<typename Traits::SizeType> Dune::PDELab::LocalOrderingBase< ES, DI, CI >::_gt_entity_offsets
protectedinherited

◆ _gt_used

template<typename ES , typename DI , typename CI >
std::vector<bool> Dune::PDELab::LocalOrderingBase< ES, DI, CI >::_gt_used
protectedinherited

◆ _max_local_size

template<typename ES , typename DI , typename CI >
std::size_t Dune::PDELab::LocalOrderingBase< ES, DI, CI >::_max_local_size
protectedinherited

◆ consume_tree_index

template<typename ES , typename DI , typename CI >
const bool Dune::PDELab::LocalOrderingBase< ES, DI, CI >::consume_tree_index = true
staticinherited

◆ GT_UNUSED

template<typename ES , typename DI , typename CI >
constexpr auto Dune::PDELab::LocalOrderingBase< ES, DI, CI >::GT_UNUSED = ~std::size_t(0)
staticconstexprinherited

◆ has_dynamic_ordering_children

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

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