|
dune-pdelab 2.8
|
base class for tuples of grid function spaces product of identical grid function spaces base class that holds implementation of the methods More...
#include <dune/pdelab/gridfunctionspace/powergridfunctionspace.hh>

Classes | |
| struct | ConstraintsContainer |
| extract type for storing constraints More... | |
Public Types | |
| typedef PowerGridFunctionSpaceTag | ImplementationTag |
| typedef TypeTree::PowerNode< T, k > | BaseT |
| typedef ordering_transformation::Type | Ordering |
| typedef ImplementationBase::Traits | Traits |
| export traits class | |
| typedef PowerNodeTag | NodeTag |
| typedef T | ChildType |
| typedef std::array< std::shared_ptr< T >, k > | NodeStorage |
| typedef O | OrderingTag |
| typedef std::size_t | size_type |
Public Member Functions | |
| PowerGridFunctionSpace (const std::array< std::shared_ptr< T >, k > &container, const Backend &backend=Backend(), const OrderingTag ordering_tag=OrderingTag()) | |
| Construct a new Power Grid Function Space object. | |
| PowerGridFunctionSpace (T &c, const Backend &backend=Backend(), const OrderingTag ordering_tag=OrderingTag()) | |
| PowerGridFunctionSpace (T &c0, T &c1, const Backend &backend=Backend(), const OrderingTag ordering_tag=OrderingTag()) | |
| PowerGridFunctionSpace (T &c0, T &c1, T &c2, const Backend &backend=Backend(), const OrderingTag ordering_tag=OrderingTag()) | |
| PowerGridFunctionSpace (T &c0, T &c1, T &c2, T &c3, const Backend &backend=Backend(), const OrderingTag ordering_tag=OrderingTag()) | |
| PowerGridFunctionSpace (T &c0, T &c1, T &c2, T &c3, T &c4, const Backend &backend=Backend(), const OrderingTag ordering_tag=OrderingTag()) | |
| PowerGridFunctionSpace (T &c0, T &c1, T &c2, T &c3, T &c4, T &c5, const Backend &backend=Backend(), const OrderingTag ordering_tag=OrderingTag()) | |
| PowerGridFunctionSpace (T &c0, T &c1, T &c2, T &c3, T &c4, T &c5, T &c6, const Backend &backend=Backend(), const OrderingTag ordering_tag=OrderingTag()) | |
| PowerGridFunctionSpace (T &c0, T &c1, T &c2, T &c3, T &c4, T &c5, T &c6, T &c7, const Backend &backend=Backend(), const OrderingTag ordering_tag=OrderingTag()) | |
| PowerGridFunctionSpace (T &c0, T &c1, T &c2, T &c3, T &c4, T &c5, T &c6, T &c7, T &c8, const Backend &backend=Backend(), const OrderingTag ordering_tag=OrderingTag()) | |
| PowerGridFunctionSpace (T &c0, T &c1, T &c2, T &c3, T &c4, T &c5, T &c6, T &c7, T &c8, T &c9, const Backend &backend=Backend(), const OrderingTag ordering_tag=OrderingTag()) | |
| template<typename Child0 , typename... Children> | |
| PowerGridFunctionSpace (std::shared_ptr< Child0 > child0, std::shared_ptr< Children >... children) | |
| const Ordering & | ordering () const |
| Direct access to the DOF ordering. | |
| Ordering & | ordering () |
| Direct access to the DOF ordering. | |
| std::shared_ptr< const Ordering > | orderingStorage () const |
| Direct access to the storage of the DOF ordering. | |
| std::shared_ptr< Ordering > | orderingStorage () |
| Direct access to the storage of the DOF ordering. | |
| T & | child (index_constant< i >={}) |
| const T & | child (index_constant< i >={}) const |
| T & | child (std::size_t i) |
| const T & | child (std::size_t i) const |
| ImplementationDefined & | child (Indices... indices) |
| const ImplementationDefined & | child (Indices... indices) |
| T & | child (index_constant< i >={}) |
| const T & | child (index_constant< i >={}) const |
| T & | child (std::size_t i) |
| const T & | child (std::size_t i) const |
| ImplementationDefined & | child (Indices... indices) |
| const ImplementationDefined & | child (Indices... indices) |
| std::shared_ptr< T > | childStorage (index_constant< i >={}) |
| std::shared_ptr< const T > | childStorage (index_constant< i >={}) const |
| std::shared_ptr< T > | childStorage (std::size_t i) |
| std::shared_ptr< const T > | childStorage (std::size_t i) const |
| std::shared_ptr< T > | childStorage (index_constant< i >={}) |
| std::shared_ptr< const T > | childStorage (index_constant< i >={}) const |
| std::shared_ptr< T > | childStorage (std::size_t i) |
| std::shared_ptr< const T > | childStorage (std::size_t i) const |
| void | setChild (T &t, index_constant< i >={}) |
| void | setChild (T &&t, index_constant< i >={}) |
| void | setChild (std::shared_ptr< T > st, index_constant< i >={}) |
| void | setChild (std::size_t i, T &t) |
| void | setChild (std::size_t i, T &&t) |
| void | setChild (std::size_t i, std::shared_ptr< T > st) |
| void | setChild (T &t, index_constant< i >={}) |
| void | setChild (T &&t, index_constant< i >={}) |
| void | setChild (std::shared_ptr< T > st, index_constant< i >={}) |
| void | setChild (std::size_t i, T &t) |
| void | setChild (std::size_t i, T &&t) |
| void | setChild (std::size_t i, std::shared_ptr< T > st) |
| const NodeStorage & | nodeStorage () const |
| const NodeStorage & | nodeStorage () const |
| const Traits::EntitySet & | entitySet () const |
| get grid view partition | |
| Traits::EntitySet & | entitySet () |
| get grid view partition | |
| Traits::SizeType | size () const |
| Traits::SizeType | blockCount () const |
| Traits::SizeType | globalSize () const |
| Traits::SizeType | maxLocalSize () const |
| get max dimension of shape function space | |
| void | update (bool force=false) |
| Update the indexing information of the GridFunctionSpace. | |
| const std::string & | name () const |
| void | name (const std::string &name) |
| Traits::Backend & | backend () |
| const Traits::Backend & | backend () const |
| const Traits::GridView & | gridView () const |
| get grid view | |
| Traits::OrderingTag & | orderingTag () |
| const Traits::OrderingTag & | orderingTag () const |
| bool | isRootSpace () const |
| bool | dataHandleContains (int codim) const |
| returns true if data for this codim should be communicated | |
| bool | dataHandleFixedSize (int codim) const |
| returns true if size per entity of given dim and codim is a constant | |
| constexpr bool | sendLeafSizes () const |
| Returns true if the sizes of the leaf orderings in this tree should be sent as part of the communcation. | |
| template<typename Entity > | |
| size_type | dataHandleSize (const Entity &e) const |
| template<typename V , typename EntityIndex > | |
| void | setup_dof_indices (V &v, size_type n, const EntityIndex &ei, std::integral_constant< bool, true >) const |
| template<typename V , typename EntityIndex > | |
| void | setup_dof_indices (V &v, size_type n, const EntityIndex &ei, std::integral_constant< bool, false >) const |
| template<typename V > | |
| V::iterator | dof_indices_begin (V &v, std::integral_constant< bool, true >) const |
| template<typename V > | |
| DummyDOFIndexIterator | dof_indices_begin (V &v, std::integral_constant< bool, false >) const |
| template<typename Entity , typename ContainerIndex , typename DOFIndex , typename OffsetIterator , bool map_dof_indices> | |
| void | dataHandleIndices (const Entity &e, std::vector< ContainerIndex > &container_indices, std::vector< DOFIndex > &dof_indices, OffsetIterator oit, std::integral_constant< bool, map_dof_indices > map_dof_indices_value) const |
| return vector of global indices associated with the given entity | |
Static Public Member Functions | |
| static constexpr auto | degree () |
Static Public Attributes | |
| static const bool | isLeaf |
| static const bool | isPower |
| static const bool | isComposite |
| static const std::size_t | CHILDREN |
Protected Member Functions | |
| void | update (Ordering &ordering) const |
| void | setEntitySet (typename Traits::EntitySet entity_set) |
| Set the Entity Set object to this grid function space. | |
| const GFS & | gfs () const |
Protected Attributes | |
| std::optional< typename Traits::EntitySet > | _entity_set |
Detailed Description
class Dune::PDELab::PowerGridFunctionSpace< T, k, Backend, OrderingTag >
base class for tuples of grid function spaces product of identical grid function spaces base class that holds implementation of the methods
PGFS(T,k) = {T}^k
- Template Parameters
-
T the underlying are all grid function spaces k power factor Mapper is the ordering parameter. Use e.g. GridFunctionSpaceLexicographicMapper or GridFunctionSpaceComponentBlockwiseMapper or GridFunctionSpaceBlockwiseMapper or GridFunctionSpaceDynamicBlockwiseMapper
- Examples
- recipe-blocking.cc, and recipe-operator-splitting.cc.
Member Typedef Documentation
◆ BaseT
| typedef TypeTree::PowerNode<T,k> Dune::PDELab::PowerGridFunctionSpace< T, k, Backend, OrderingTag >::BaseT |
◆ ImplementationTag
| typedef PowerGridFunctionSpaceTag Dune::PDELab::PowerGridFunctionSpace< T, k, Backend, OrderingTag >::ImplementationTag |
◆ Ordering
| typedef ordering_transformation::Type Dune::PDELab::PowerGridFunctionSpace< T, k, Backend, OrderingTag >::Ordering |
◆ size_type
|
inherited |
◆ Traits
| typedef ImplementationBase::Traits Dune::PDELab::PowerGridFunctionSpace< T, k, Backend, OrderingTag >::Traits |
export traits class
Constructor & Destructor Documentation
◆ PowerGridFunctionSpace() [1/12]
|
inline |
◆ PowerGridFunctionSpace() [2/12]
|
inline |
◆ PowerGridFunctionSpace() [3/12]
|
inline |
◆ PowerGridFunctionSpace() [4/12]
|
inline |
◆ PowerGridFunctionSpace() [5/12]
|
inline |
◆ PowerGridFunctionSpace() [6/12]
|
inline |
◆ PowerGridFunctionSpace() [7/12]
|
inline |
◆ PowerGridFunctionSpace() [8/12]
|
inline |
◆ PowerGridFunctionSpace() [9/12]
|
inline |
◆ PowerGridFunctionSpace() [10/12]
|
inline |
◆ PowerGridFunctionSpace() [11/12]
|
inline |
◆ PowerGridFunctionSpace() [12/12]
|
inline |
Member Function Documentation
◆ backend() [1/2]
|
inlineinherited |
◆ backend() [2/2]
|
inlineinherited |
◆ blockCount()
|
inlineinherited |
◆ dataHandleContains()
|
inlineinherited |
returns true if data for this codim should be communicated
◆ dataHandleFixedSize()
|
inlineinherited |
returns true if size per entity of given dim and codim is a constant
◆ dataHandleIndices()
|
inlineinherited |
return vector of global indices associated with the given entity
◆ dataHandleSize()
|
inlineinherited |
how many objects of type DataType have to be sent for a given entity
Note: Only the sender side needs to know this size.
◆ dof_indices_begin() [1/2]
|
inlineinherited |
◆ dof_indices_begin() [2/2]
|
inlineinherited |
◆ gfs()
|
inlineprotectedinherited |
◆ globalSize()
|
inlineinherited |
◆ gridView()
|
inlineinherited |
get grid view
◆ isRootSpace()
|
inlineinherited |
◆ maxLocalSize()
|
inlineinherited |
get max dimension of shape function space
◆ name() [1/2]
|
inlineinherited |
◆ name() [2/2]
|
inlineinherited |
◆ ordering() [1/2]
|
inline |
Direct access to the DOF ordering.
◆ ordering() [2/2]
|
inline |
Direct access to the DOF ordering.
◆ orderingStorage() [1/2]
|
inline |
Direct access to the storage of the DOF ordering.
◆ orderingStorage() [2/2]
|
inline |
Direct access to the storage of the DOF ordering.
◆ orderingTag() [1/2]
|
inlineinherited |
◆ orderingTag() [2/2]
|
inlineinherited |
◆ sendLeafSizes()
|
inlineconstexprinherited |
Returns true if the sizes of the leaf orderings in this tree should be sent as part of the communcation.
The MultiDomain extensions require knowledge about the size of the individual orderings, which might belong to separate subdomains. Otherwise it is possible to have size mismatches for entities with codim > 0 if there are protruding edges in the parallel mesh partitioning.
By default, this method will always return false. It must be overridden for cases where the data actually needs to be sent.
This flag also modifies the behavior of the generic data handles, which will automatically send, receive and process the additional information. Note that if sendLeafSizes() returns true, the underlying DataHandleIF of the grid will always use the data type char to be able to send different types of data, which will automatically be marshalled to / from a byte stream.
◆ setEntitySet()
|
inlineprotectedinherited |
Set the Entity Set object to this grid function space.
The passed entity set will be stored and modified by the grid function space. In case of a tree, all entity sets below an entity blocking tag are expected to be the same, otherwise, the ordering will issue an exception. (e.g. compartments with different function spaces). Additionally, the root node in a grid function space tree may also contain a different partition which will be used in the assembly process (e.g. a union of all entity sets from leaf nodes). If no other entity set was given, the root node will usually take the first leaf node entity set.
- Parameters
-
entity_set An object of the type PartitionViewEntitySet
◆ setup_dof_indices() [1/2]
|
inlineinherited |
◆ setup_dof_indices() [2/2]
|
inlineinherited |
◆ size()
|
inlineinherited |
◆ update() [1/2]
|
inlineinherited |
Update the indexing information of the GridFunctionSpace.
\ param force Set to true if the underlying grid has changed (e.g. due to adaptivity) to force an update of the embedded EntitySet.
◆ update() [2/2]
|
inlineprotectedinherited |
Member Data Documentation
◆ _entity_set
|
mutableprotectedinherited |
The documentation for this class was generated from the following file:
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8