base class for tuples of grid function spaces product of identical grid function spaces base class that holds implementation of the methods
More...
|
| 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. More...
|
|
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.
|
|
const Traits::EntitySet & | entitySet () const |
| get grid view partition
|
|
Traits::EntitySet & | entitySet () |
| get grid view partition
|
|
Traits::SizeType | maxLocalSize () const |
| get max dimension of shape function space
|
|
void | update (bool force=false) |
| Update the indexing information of the GridFunctionSpace. More...
|
|
const Traits::GridView & | gridView () const |
| get grid view
|
|
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. More...
|
|
template<typename Entity > |
size_type | dataHandleSize (const Entity &e) 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
|
|
|
template<std::size_t i> |
T & | child (index_constant< i >={}) |
| Returns the i-th child. More...
|
|
template<std::size_t i> |
const T & | child (index_constant< i >={}) const |
| Returns the i-th child (const version). More...
|
|
template<std::size_t i> |
std::shared_ptr< T > | childStorage (index_constant< i >={}) |
| Returns the storage of the i-th child. More...
|
|
template<std::size_t i> |
std::shared_ptr< const T > | childStorage (index_constant< i >={}) const |
| Returns the storage of the i-th child (const version). More...
|
|
template<std::size_t i> |
void | setChild (T &t, index_constant< i >={}) |
| Sets the i-th child to the passed-in value.
|
|
template<std::size_t i> |
void | setChild (T &&t, index_constant< i >={}) |
| Store the passed value in i-th child.
|
|
template<std::size_t i> |
void | setChild (std::shared_ptr< T > st, index_constant< i >={}) |
| Sets the stored value representing the i-th child to the passed-in value.
|
|
|
T & | child (std::size_t i) |
| Returns the i-th child. More...
|
|
const T & | child (std::size_t i) const |
| Returns the i-th child (const version). More...
|
|
std::shared_ptr< T > | childStorage (std::size_t i) |
| Returns the storage of the i-th child. More...
|
|
std::shared_ptr< const T > | childStorage (std::size_t i) const |
| Returns the storage of the i-th child (const version). More...
|
|
void | setChild (std::size_t i, T &t) |
| Sets the i-th child to the passed-in value.
|
|
void | setChild (std::size_t i, T &&t) |
| Store the passed value in i-th child.
|
|
void | setChild (std::size_t i, std::shared_ptr< T > st) |
| Sets the stored value representing the i-th child to the passed-in value.
|
|
const NodeStorage & | nodeStorage () const |
|
|
template<typename... Indices> |
ImplementationDefined & | child (Indices... indices) |
| Returns the child given by the list of indices. More...
|
|
template<typename... Indices> |
const ImplementationDefined & | child (Indices... indices) |
| Returns the child given by the list of indices. More...
|
|
template<typename T, std::size_t k, typename Backend, typename
OrderingTag = LexicographicOrderingTag>
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
-
- Examples
- recipe-blocking.cc, and recipe-operator-splitting.cc.
template<typename GFS >
constexpr bool Dune::PDELab::DataHandleProvider< GFS >::sendLeafSizes |
( |
| ) |
const |
|
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.