Class template Dune::XT::LA::MatrixInterface¶
Inherits from Dune::XT::LA::ContainerInterface.
-
template<class Traits, class ScalarImp>
class Dune::XT::LA::MatrixInterface : public ContainerInterface<TraitsImp, ScalarImp>¶ CRTP base interface for matrix containers, providing common matrix operations and norms.
-
inline size_t Dune::XT::LA::MatrixInterface::rows() const¶
\ {
Have to be implemented by a derived class in addition to the ones required by ContainerInterface!
-
inline size_t Dune::XT::LA::MatrixInterface::cols() const¶
No documentation provided.
-
inline void Dune::XT::LA::MatrixInterface::add_to_entry(const size_t ii, const size_t jj, const ScalarType &value)¶
No documentation provided.
-
inline void Dune::XT::LA::MatrixInterface::set_entry(const size_t ii, const size_t jj, const ScalarType &value)¶
No documentation provided.
-
inline ScalarType Dune::XT::LA::MatrixInterface::get_entry(const size_t ii, const size_t jj) const¶
No documentation provided.
-
inline void Dune::XT::LA::MatrixInterface::clear_row(const size_t ii)¶
No documentation provided.
-
inline void Dune::XT::LA::MatrixInterface::clear_col(const size_t jj)¶
No documentation provided.
-
inline void Dune::XT::LA::MatrixInterface::unit_row(const size_t ii)¶
No documentation provided.
-
inline void Dune::XT::LA::MatrixInterface::unit_col(const size_t jj)¶
No documentation provided.
-
inline bool Dune::XT::LA::MatrixInterface::valid() const¶
Checks entries for inf or nan.
:returns: false if any entry is inf or nan, else true
-
virtual derived_type Dune::XT::LA::MatrixInterface::operator*(const derived_type &other) const¶
No documentation provided.
-
virtual derived_type Dune::XT::LA::MatrixInterface::operator+(const derived_type &other) const¶
No documentation provided.
-
virtual derived_type Dune::XT::LA::MatrixInterface::operator-(const derived_type &other) const¶
No documentation provided.
-
virtual derived_type &Dune::XT::LA::MatrixInterface::operator+=(const derived_type &other)¶
No documentation provided.
-
virtual derived_type &Dune::XT::LA::MatrixInterface::operator-=(const derived_type &other)¶
No documentation provided.
-
virtual RealType Dune::XT::LA::MatrixInterface::sup_norm() const¶
No documentation provided.
-
derived_type Dune::XT::LA::MatrixInterface::transposed() const¶
No documentation provided.
-
virtual size_t Dune::XT::LA::MatrixInterface::non_zeros() const¶
Returns the number of entries in the sparsity pattern of the matrix.
This is mainly useful for sparse matrices and returns rows() times cols() for dense matrices.
Note
Some implementations do not report the correct number here, so use and interpret only if you know what you are doing!
-
virtual SparsityPatternDefault Dune::XT::LA::MatrixInterface::pattern(const bool prune = false, const int eps =
<recovery-expr>()) const¶ Computes the sparsity pattern of the matrix. This is mainly useful for sparse matrices and returns a full pattern for dense matrices
:param prune: If true, treats all entries smaller than eps as zero and does not include these indices in the returned pattern
-
virtual derived_type Dune::XT::LA::MatrixInterface::pruned(const int eps =
<recovery-expr>()) const¶ Returns a pruned variant of this matrix. This is mainly useful for sparse matrices and returns a matrix that should be very close to this matrix, except for very small values, which are set to zero and the entries of which are removed from the sparsity pattern.
See also:
pattern:param eps: Is forwarded to pattern(true, eps)
-
virtual bool Dune::XT::LA::MatrixInterface::almost_equal(const derived_type &other, const ScalarType epsilon =
<recovery-expr>()) const¶ No documentation provided.
-
template<>
~MatrixInterface<TraitsImp, ScalarImp>() override = default¶ No documentation provided.
-
const Backends Dune::XT::LA::MatrixInterface::vector_type¶
No documentation provided.
-
const bool Dune::XT::LA::MatrixInterface::sparse¶
No documentation provided.
-
type Dune::XT::LA::MatrixInterface::BaseType¶
No documentation provided.
-
type Dune::XT::LA::MatrixInterface::ScalarType¶
No documentation provided.
-
type Dune::XT::LA::MatrixInterface::RealType¶
No documentation provided.
-
type Dune::XT::LA::MatrixInterface::MutexesType¶
No documentation provided.
-
template<class XX, class YY>
inline void Dune::XT::LA::MatrixInterface::mv(const VectorInterface<XX, ScalarType> &xx, VectorInterface<YY, ScalarType> &yy) const¶ No documentation provided.
-
template<class YY, class XX>
inline void Dune::XT::LA::MatrixInterface::mtv(const VectorInterface<YY, ScalarType> &yy, VectorInterface<XX, ScalarType> &xx) const¶ No documentation provided.
-
template<class XX>
typename XX::derived_type Dune::XT::LA::MatrixInterface::mv(const VectorInterface<XX, ScalarType> &xx) const¶ \ }
Provided by the interface for convenience.
Note
Those marked with vitual should be overriden by any devired class that can do better. \ {
-
template<class YY>
typename YY::derived_type Dune::XT::LA::MatrixInterface::mtv(const VectorInterface<YY, ScalarType> &yy) const¶ No documentation provided.
-
template<class XX>
typename XX::derived_type Dune::XT::LA::MatrixInterface::operator*(const VectorInterface<XX, ScalarType> &xx) const¶ No documentation provided.
-
template<class MM>
derived_type Dune::XT::LA::MatrixInterface::operator*(const MatrixInterface<MM, ScalarType> &other) const¶ No documentation provided.
-
template<class MM>
derived_type Dune::XT::LA::MatrixInterface::operator+(const MatrixInterface<MM, ScalarType> &other) const¶ No documentation provided.
-
template<class MM>
derived_type Dune::XT::LA::MatrixInterface::operator-(const MatrixInterface<MM, ScalarType> &other) const¶ No documentation provided.
-
template<class MM>
derived_type &Dune::XT::LA::MatrixInterface::operator+=(const MatrixInterface<MM, ScalarType> &other)¶ No documentation provided.
-
template<class MM>
derived_type &Dune::XT::LA::MatrixInterface::operator-=(const MatrixInterface<MM, ScalarType> &other)¶ No documentation provided.
-
template<class DuneDenseMatrixImp>
void Dune::XT::LA::MatrixInterface::copy_to_densematrix(DuneDenseMatrixImp &ret) const¶ \ }