3 #ifndef DUNE_PDELAB_BACKEND_ISTL_DESCRIPTORS_HH
4 #define DUNE_PDELAB_BACKEND_ISTL_DESCRIPTORS_HH
45 template<Blocking blocking = Blocking::none, std::
size_t block_size_ = 1>
51 static_assert((block_size_ > 0),
"block size for FieldVector has to be positive");
67 template<
typename GFS>
85 namespace ISTLParameters {
88 DUNE_DEPRECATED_MSG(
"ISTLParameters::blocking is deprecated and will be removed after PDELab 2.4. Use the new istl::VectorBackend and istl::Blocking instead. Note that the enum values of istl::Blocking are named differently!")
97 #pragma GCC diagnostic push
98 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
100 template<ISTLParameters::Blocking blocking = ISTLParameters::no_blocking, std::
size_t block_size = 1>
103 #pragma GCC diagnostic pop
112 DUNE_DEPRECATED_MSG(
"ISTLMatrixBackend has been deprecated and will be removed after the release of PDELab 2.4. Use istl::BCRSMatrixBackend with the newer pattern construction method instead")
122 template<
typename Matrix,
typename GFSV,
typename GFSU>
123 using Pattern =
typename istl::build_pattern_type<
124 typename Matrix::Container,
127 typename GFSV::Ordering::ContainerAllocationTag
130 template<
typename VV,
typename VU,
typename E>
134 typename VV::GridFunctionSpace,
135 typename VU::GridFunctionSpace,
136 typename istl::build_matrix_type<
138 typename VV::Container,
139 typename VU::Container
145 template<
typename Gr
idOperator,
typename Matrix>
159 return std::vector<Statistics>();
169 #endif // DUNE_PDELAB_BACKEND_ISTL_DESCRIPTORS_HH
Creates one macro block for each child space, each block is a BlockVector / BCRS matrix.
Tag describing an ISTL BlockVector backend.
Definition: istl/descriptors.hh:43
const GFSU & trialGridFunctionSpace() const
Get the trial grid function space.
Definition: gridoperator.hh:87
Definition: bcrsmatrix.hh:17
void fill_pattern(Pattern &p) const
Fill pattern of jacobian matrix.
Definition: gridoperator.hh:158
Blocking
Definition: istl/descriptors.hh:87
DUNE_CONSTEXPR bool deactivate_standard_blocking_for_ordering(const Chunked< Decorated > &)
Definition: chunkedblockordering.hh:100
Create fixed size blocks that each group together a fixed number of DOFs from each child space...
static const size_type blockSize
Definition: istl/descriptors.hh:55
typename istl::build_pattern_type< typename Matrix::Container, GFSV, GFSU, typename GFSV::Ordering::ContainerAllocationTag >::type Pattern
The type of the pattern object passed to the GridOperator for pattern construction.
Definition: istl/descriptors.hh:128
static const bool blocked
Definition: istl/descriptors.hh:62
Definition: istl/descriptors.hh:93
Standard grid operator implementation.
Definition: gridoperator.hh:34
istl::BCRSMatrix< typename VV::GridFunctionSpace, typename VU::GridFunctionSpace, typename istl::build_matrix_type< E, typename VV::Container, typename VU::Container >::type, Statistics > type
Definition: istl/descriptors.hh:142
Definition: istl/descriptors.hh:91
Blocking
The type of blocking employed at this node in the function space tree.
Definition: istl/descriptors.hh:25
Definition: istl/descriptors.hh:92
Definition: istl/descriptors.hh:46
std::enable_if< std::is_base_of< impl::WrapperBase, T >::value, Native< T > & >::type native(T &t)
Definition: backend/interface.hh:198
const GFSV & testGridFunctionSpace() const
Get the test grid function space.
Definition: gridoperator.hh:93
static const size_type max_blocking_depth
Definition: istl/descriptors.hh:64
Definition: istl/descriptors.hh:131
Definition: istl/descriptors.hh:57
GFSU TrialGridFunctionSpace
The trial grid function space.
Definition: gridoperatorutilities.hh:37
Definition: adaptivity.hh:27
std::size_t size_type
Definition: istl/descriptors.hh:116
std::vector< Statistics > buildPattern(const GridOperator &grid_operator, Matrix &matrix) const
Definition: istl/descriptors.hh:146
typename impl::BackendMatrixSelector< Backend, VU, VV, E >::Type Matrix
alias of the return type of BackendMatrixSelector
Definition: backend/interface.hh:133
GFSV TestGridFunctionSpace
The test grid function space.
Definition: gridoperatorutilities.hh:40
static const Blocking block_type
Definition: istl/descriptors.hh:59
No blocking at this level.
bool blocked(const GFS &gfs) const
Definition: istl/descriptors.hh:68
int Statistics
Definition: istl/descriptors.hh:119
std::size_t size_type
Definition: istl/descriptors.hh:53
Backend using ISTL matrices.
Definition: istl/descriptors.hh:111
static const size_type block_size
Definition: istl/descriptors.hh:60