Go to the documentation of this file.
3 #ifndef DUNE_DYNMATRIX_HH
4 #define DUNE_DYNMATRIX_HH
9 #include <initializer_list>
43 typedef typename container_type::size_type
size_type;
60 std::vector< DynamicVector<K> > _data;
84 typename = std::enable_if_t<!Dune::IsNumber<T>::value && HasDenseMatrixAssigner<DynamicMatrix, T>::value>>
112 template <
typename T,
113 typename = std::enable_if_t<!Dune::IsNumber<T>::value>>
115 _data.resize(rhs.N());
116 std::fill(_data.begin(), _data.end(),
row_type(rhs.M(), K(0)));
122 template <
typename T,
123 typename = std::enable_if_t<Dune::IsNumber<T>::value>>
125 std::fill(_data.begin(), _data.end(), scalar);
132 assert(this->rows());
133 return _data.front().size();
container_type::size_type size_type
Definition: dynmatrix.hh:43
This file implements a dense vector with a dynamic size.
Construct a matrix with a dynamic size.
Definition: dynmatrix.hh:29
Traits::value_type value_type
export the type representing the field
Definition: densematrix.hh:174
row_type & row_reference
Definition: dynmatrix.hh:38
FieldTraits< K >::field_type field_type
Definition: dynmatrix.hh:49
size_type mat_rows() const
Definition: dynmatrix.hh:130
Base::size_type size_type
Definition: dynmatrix.hh:63
A few common exception classes.
Dune namespace.
Definition: alignedallocator.hh:9
const typedef row_type & const_row_reference
Definition: dynmatrix.hh:39
Traits::row_type row_type
The type used to represent a row (must fulfill the Dune::DenseVector interface)
Definition: densematrix.hh:186
DynamicVector< K > row_type
Definition: dynmatrix.hh:36
DynamicMatrix(T const &rhs)
Definition: dynmatrix.hh:85
Implements a matrix constructed from a given type representing a field and a compile-time given numbe...
DynamicMatrix()
Default constructor.
Definition: dynmatrix.hh:69
derived_type & operator=(const RHS &rhs)
Definition: densematrix.hh:302
Base::value_type value_type
Definition: dynmatrix.hh:64
const row_type & mat_access(size_type i) const
Definition: dynmatrix.hh:139
Base::row_type row_type
Definition: dynmatrix.hh:65
DynamicMatrix & operator=(T const &rhs)
Definition: dynmatrix.hh:114
T real_type
export the type representing the real type of the field
Definition: ftraits.hh:28
DynamicMatrix< K > derived_type
Definition: dynmatrix.hh:34
row_type & mat_access(size_type i)
Definition: dynmatrix.hh:135
DynamicMatrix(size_type r, size_type c, value_type v=value_type())
Constructor initializing the whole matrix with a scalar.
Definition: dynmatrix.hh:72
FieldTraits< K >::real_type real_type
Definition: dynmatrix.hh:50
Macro for wrapping boundary checks.
void resize(size_type r, size_type c, value_type v=value_type())
resize matrix to r × c
Definition: dynmatrix.hh:104
Definition: ftraits.hh:23
DynamicMatrix & operator=(T scalar)
Definition: dynmatrix.hh:124
DynamicMatrix(std::initializer_list< DynamicVector< K >> const &ll)
Constructor initializing the matrix from a list of vector.
Definition: dynmatrix.hh:78
T field_type
export the type representing the field
Definition: ftraits.hh:26
#define DUNE_ASSERT_BOUNDS(cond)
If DUNE_CHECK_BOUNDS is defined: check if condition cond holds; otherwise, do nothing.
Definition: boundschecking.hh:28
K value_type
Definition: dynmatrix.hh:42
Traits::size_type size_type
The type used for the index access and size operation.
Definition: densematrix.hh:183
A dense n x m matrix.
Definition: densematrix.hh:26
std::vector< K > container_type
Definition: dynmatrix.hh:41
Traits for type conversions and type information.
size_type mat_cols() const
Definition: dynmatrix.hh:131
Definition: matvectraits.hh:29