Class template Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>¶
Inherits from Dune::XT::LA::ContainerInterface.
Friends operator<<(std::ostream &, const MatrixInterface<T, S> &).
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
class Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp> : public ContainerInterface<TraitsImp, ScalarImp>¶ CRTP base interface for matrix containers, providing common matrix operations and norms.
Method Dune::XT::LA::MatrixInterface::rows¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
inline size_t Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::rows() const¶ \ {
Have to be implemented by a derived class in addition to the ones required by ContainerInterface!
Method Dune::XT::LA::MatrixInterface::cols¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
inline size_t Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::cols() const¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::add_to_entry¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
inline void Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::add_to_entry(const size_t ii, const size_t jj, const ScalarType &value)¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::set_entry¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
inline void Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::set_entry(const size_t ii, const size_t jj, const ScalarType &value)¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::get_entry¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
inline ScalarType Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::get_entry(const size_t ii, const size_t jj) const¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::clear_row¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
inline void Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::clear_row(const size_t ii)¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::clear_col¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
inline void Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::clear_col(const size_t jj)¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::unit_row¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
inline void Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::unit_row(const size_t ii)¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::unit_col¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
inline void Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::unit_col(const size_t jj)¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::valid¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
inline bool Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::valid() const¶ Checks entries for inf or nan.
:returns: false if any entry is inf or nan, else true
Method Dune::XT::LA::MatrixInterface::operator*¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
virtual derived_type Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::operator*(const derived_type &other) const¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::operator+¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
virtual derived_type Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::operator+(const derived_type &other) const¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::operator-¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
virtual derived_type Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::operator-(const derived_type &other) const¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::operator+=¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
virtual derived_type &Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::operator+=(const derived_type &other)¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::operator-=¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
virtual derived_type &Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::operator-=(const derived_type &other)¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::sup_norm¶
Method Dune::XT::LA::MatrixInterface::transposed¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
derived_type Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::transposed() const¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::non_zeros¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
virtual size_t Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::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!
Method Dune::XT::LA::MatrixInterface::pattern¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
virtual SparsityPatternDefault Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::pattern(const bool prune = false, const typename Common::FloatCmp::DefaultEpsilon<ScalarType>::Type eps = Common::FloatCmp::DefaultEpsilon<ScalarType>::value()) 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
Method Dune::XT::LA::MatrixInterface::pruned¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
virtual derived_type Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::pruned(const typename Common::FloatCmp::DefaultEpsilon<ScalarType>::Type eps = Common::FloatCmp::DefaultEpsilon<ScalarType>::value()) 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)
Method Dune::XT::LA::MatrixInterface::almost_equal¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
virtual bool Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::almost_equal(const derived_type &other, const ScalarType epsilon = Common::FloatCmp::DefaultEpsilon<ScalarType>::value()) const¶ No documentation provided.
Method Dune::XT::LA::MatrixInterface::operator Dune::DynamicMatrix<Dune::XT::LA::MatrixInterface::Traits::ScalarType>¶
explicit operator DynamicMatrix<ScalarType>() const
No documentation provided.
Destructor Dune::XT::LA::MatrixInterface::~MatrixInterface¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::~MatrixInterface() override = default¶ No documentation provided.
Variable Dune::XT::LA::MatrixInterface::vector_type¶
Variable Dune::XT::LA::MatrixInterface::sparse¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
const bool Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::sparse¶ No documentation provided.
Type alias Dune::XT::LA::MatrixInterface::BaseType¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
using Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::BaseType = ContainerInterface<TraitsImp, ScalarImp>¶ No documentation provided.
Type alias Dune::XT::LA::MatrixInterface::ScalarType¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
using Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::ScalarType = typename Traits::ScalarType¶ No documentation provided.
Type alias Dune::XT::LA::MatrixInterface::RealType¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
using Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::RealType = typename Traits::RealType¶ No documentation provided.
Type alias Dune::XT::LA::MatrixInterface::MutexesType¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
using Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::MutexesType = typename Traits::MutexesType¶ No documentation provided.
Function template Dune::XT::LA::MatrixInterface::mv¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class XX, class YY>
inline void Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::mv(const VectorInterface<XX, ScalarType> &xx, VectorInterface<YY, ScalarType> &yy) const¶ No documentation provided.
Function template Dune::XT::LA::MatrixInterface::mtv¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class YY, class XX>
inline void Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::mtv(const VectorInterface<YY, ScalarType> &yy, VectorInterface<XX, ScalarType> &xx) const¶ No documentation provided.
Function template Dune::XT::LA::MatrixInterface::mv¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class XX>
typename XX::derived_type Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::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. \ {
Function template Dune::XT::LA::MatrixInterface::mtv¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class YY>
typename YY::derived_type Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::mtv(const VectorInterface<YY, ScalarType> &yy) const¶ No documentation provided.
Function template Dune::XT::LA::MatrixInterface::operator*¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class XX>
typename XX::derived_type Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::operator*(const VectorInterface<XX, ScalarType> &xx) const¶ No documentation provided.
Function template Dune::XT::LA::MatrixInterface::operator*¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class MM>
derived_type Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::operator*(const MatrixInterface<MM, ScalarType> &other) const¶ No documentation provided.
Function template Dune::XT::LA::MatrixInterface::operator+¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class MM>
derived_type Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::operator+(const MatrixInterface<MM, ScalarType> &other) const¶ No documentation provided.
Function template Dune::XT::LA::MatrixInterface::operator-¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class MM>
derived_type Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::operator-(const MatrixInterface<MM, ScalarType> &other) const¶ No documentation provided.
Function template Dune::XT::LA::MatrixInterface::operator+=¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class MM>
derived_type &Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::operator+=(const MatrixInterface<MM, ScalarType> &other)¶ No documentation provided.
Function template Dune::XT::LA::MatrixInterface::operator-=¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class MM>
derived_type &Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::operator-=(const MatrixInterface<MM, ScalarType> &other)¶ No documentation provided.
Function template Dune::XT::LA::MatrixInterface::copy_to_densematrix¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class DuneDenseMatrixImp>
void Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::copy_to_densematrix(DuneDenseMatrixImp &ret) const¶ \ }
Function template Dune::XT::LA::MatrixInterface::operator Dune::FieldMatrix<Dune::XT::LA::MatrixInterface::Traits::ScalarType, value-parameter-1-0, value-parameter-1-1>¶
template <int ROWS, int COLS> explicit operator FieldMatrix<ScalarType, ROWS, COLS>() const
No documentation provided.
Function template Dune::XT::LA::MatrixInterface::operator std::unique_ptr<Dune::FieldMatrix<Dune::XT::LA::MatrixInterface::Traits::ScalarType, value-parameter-1-0, value-parameter-1-1>, std::default_delete<Dune::FieldMatrix<Dune::XT::LA::MatrixInterface::Traits::ScalarType, value-parameter-1-0, value-parameter-1-1>>>¶
template <int ROWS, int COLS> explicit operator unique_ptr<Dune::FieldMatrix<ScalarType, ROWS, COLS>>() const
No documentation provided.
Function template Dune::XT::LA::MatrixInterface::multiply¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class MM>
derived_type Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::multiply(const MatrixInterface<MM, ScalarType> &other) const¶ No documentation provided.
Function template Dune::XT::LA::MatrixInterface::add¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class MM>
derived_type Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::add(const MatrixInterface<MM, ScalarType> &other) const¶ No documentation provided.
Function template Dune::XT::LA::MatrixInterface::subtract¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class MM>
derived_type Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::subtract(const MatrixInterface<MM, ScalarType> &other) const¶ No documentation provided.
Function template Dune::XT::LA::MatrixInterface::add_assign¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class MM>
derived_type &Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::add_assign(const MatrixInterface<MM, ScalarType> &other)¶ No documentation provided.
Function template Dune::XT::LA::MatrixInterface::subtract_assign¶
-
template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
template<class MM>
derived_type &Dune::XT::LA::MatrixInterface<TraitsImp, ScalarImp>::subtract_assign(const MatrixInterface<MM, ScalarType> &other)¶ No documentation provided.