3 #ifndef DUNE_PDELAB_BACKEND_ISTL_DESCRIPTORS_HH
4 #define DUNE_PDELAB_BACKEND_ISTL_DESCRIPTORS_HH
6 #include <dune/common/static_assert.hh>
15 namespace ISTLParameters {
27 template<ISTLParameters::Blocking blocking = ISTLParameters::no_blocking, std::
size_t block_size_ = 1>
49 template<
typename GFS>
77 #if HAVE_TEMPLATE_ALIASES || DOXYGEN
80 template<
typename Matrix,
typename GFSV,
typename GFSU>
81 using Pattern =
typename istl::build_pattern_type<
82 typename Matrix::Container,
85 typename GFSV::Ordering::ContainerAllocationTag
88 #else // HAVE_TEMPLATE_ALIASES
90 template<
typename Matrix,
typename GFSV,
typename GFSU>
92 :
public istl::build_pattern_type<typename Matrix::Container,
95 typename GFSV::Ordering::ContainerAllocationTag
100 typename GFSV::Ordering::Traits::DOFIndex,
101 typename GFSV::Ordering::Traits::ContainerIndex
105 typename GFSU::Ordering::Traits::DOFIndex,
106 typename GFSU::Ordering::Traits::ContainerIndex
109 typedef typename istl::build_pattern_type<
110 typename Matrix::Container,
113 typename GFSV::Ordering::ContainerAllocationTag
116 Pattern(
const RowOrdering& row_ordering,
const ColOrdering& col_ordering)
117 : BaseT(row_ordering,col_ordering)
122 #endif // HAVE_TEMPLATE_ALIASES
124 template<
typename VV,
typename VU,
typename E>
128 typename VV::GridFunctionSpace,
129 typename VU::GridFunctionSpace,
130 typename istl::build_matrix_type<
132 typename VV::Container,
133 typename VU::Container
139 template<
typename Gr
idOperator,
typename Matrix>
153 return std::vector<Statistics>();
163 #endif // DUNE_PDELAB_BACKEND_ISTL_DESCRIPTORS_HH
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:86
Definition: istl/descriptors.hh:28
std::size_t size_type
Definition: istl/descriptors.hh:35
GFSU TrialGridFunctionSpace
The trial grid function space.
Definition: gridoperatorutilities.hh:37
void fill_pattern(Pattern &p) const
Fill pattern of jacobian matrix.
Definition: gridoperator.hh:158
Blocking
Definition: istl/descriptors.hh:17
const GFSU & trialGridFunctionSpace() const
Get the trial grid function space.
Definition: gridoperator.hh:87
istl_vector_backend_tag tag
Definition: istl/descriptors.hh:31
Backend using ISTL matrices.
Definition: istl/descriptors.hh:69
static const size_type block_size
Definition: istl/descriptors.hh:42
Definition: orderingbase.hh:22
Definition: istl/descriptors.hh:21
std::vector< Statistics > buildPattern(const GridOperator &grid_operator, Matrix &matrix) const
Definition: istl/descriptors.hh:140
Standard grid operator implementation.
Definition: gridoperator.hh:34
Definition: istl/descriptors.hh:19
V & raw(V &v)
Returns the raw ISTL object associated with v, or v itself it is already an ISTL object.
Definition: backend/istl/utility.hh:26
Definition: istl/descriptors.hh:25
static const size_type max_blocking_depth
Definition: istl/descriptors.hh:46
Definition: istl/descriptors.hh:20
Definition: istl/descriptors.hh:39
Definition: istl/descriptors.hh:125
static const ISTLParameters::Blocking block_type
Definition: istl/descriptors.hh:41
static const bool blocked
Definition: istl/descriptors.hh:44
bool blocked(const GFS &gfs) const
Definition: istl/descriptors.hh:50
const GFSV & testGridFunctionSpace() const
Get the test grid function space.
Definition: gridoperator.hh:93
GFSV TestGridFunctionSpace
The test grid function space.
Definition: gridoperatorutilities.hh:40
static const size_type blockSize
Definition: istl/descriptors.hh:37
dune_static_assert((block_size_ > 0),"block size for FieldVector has to be positive")
std::size_t size_type
Definition: istl/descriptors.hh:72
ISTLMatrixContainer< 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:136
Definition: istlmatrixbackend.hh:15
int Statistics
Definition: istl/descriptors.hh:75