Class template Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>

Inherits from Dune::XT::Common::CRTPInterface.

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
class Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp> : public Common::CRTPInterface<ContainerInterface<TraitsImp, ScalarImp>, TraitsImp>

CRTP base interface for linear algebra containers, providing copy, scal, axpy and scalar arithmetic.

Method Dune::XT::LA::ContainerInterface::operator=

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
ThisType &Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::operator=(const ThisType &other)

No documentation provided.

Method Dune::XT::LA::ContainerInterface::operator=

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
ThisType &Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::operator=(ThisType &&other) noexcept

No documentation provided.

Method Dune::XT::LA::ContainerInterface::copy

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
inline derived_type Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::copy() const

Creates a (deep) copy of the underlying resource

:returns: A new container

Method Dune::XT::LA::ContainerInterface::scal

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
inline void Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::scal(const ScalarType &alpha)

BLAS SCAL operation (in-place sclar multiplication).

:param alpha: The scalar coefficient with which each element of the container is multiplied.

Method Dune::XT::LA::ContainerInterface::axpy

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
inline void Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::axpy(const ScalarType &alpha, const derived_type &xx)

BLAS AXPY operation.

:param alpha: The scalar coefficient with which each element of the container is multiplied :param xx: Container that is to be elementwise added.

Method Dune::XT::LA::ContainerInterface::has_equal_shape

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
inline bool Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::has_equal_shape(const derived_type &other) const

Test for equal sizes.

:param other: Container the sizes of which this is to be compared to.

Method Dune::XT::LA::ContainerInterface::type_this

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
static std::string Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::type_this()

\ }

Are provided by the interface for convenience!

Note

Those marked as virtual may be implemented more efficiently in a derived class! \ {

Method Dune::XT::LA::ContainerInterface::operator*=

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
virtual derived_type &Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::operator*=(const ScalarType &alpha)

No documentation provided.

Method Dune::XT::LA::ContainerInterface::operator/=

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
virtual derived_type &Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::operator/=(const ScalarType &alpha)

No documentation provided.

Method Dune::XT::LA::ContainerInterface::operator*

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
virtual derived_type Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::operator*(const ScalarType &alpha) const

Multiplies every component of this by a scalar.

:param alpha: The scalar. :returns: The scaled copy of this.

Method Dune::XT::LA::ContainerInterface::operator/

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
virtual derived_type Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::operator/(const ScalarType &alpha) const

No documentation provided.

Constructor Dune::XT::LA::ContainerInterface::ContainerInterface

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::ContainerInterface() = default

No documentation provided.

Constructor Dune::XT::LA::ContainerInterface::ContainerInterface

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::ContainerInterface(const ThisType &other) = default

No documentation provided.

Constructor Dune::XT::LA::ContainerInterface::ContainerInterface

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::ContainerInterface(ThisType &&other) noexcept = default

No documentation provided.

Destructor Dune::XT::LA::ContainerInterface::~ContainerInterface

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
virtual Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::~ContainerInterface() = default

No documentation provided.

Type alias Dune::XT::LA::ContainerInterface::CRTP

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
using Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::CRTP = Common::CRTPInterface<ContainerInterface<TraitsImp, ScalarImp>, TraitsImp>

No documentation provided.

Type alias Dune::XT::LA::ContainerInterface::ThisType

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
using Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::ThisType = ContainerInterface<TraitsImp, ScalarImp>

No documentation provided.

Type alias Dune::XT::LA::ContainerInterface::ScalarType

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
using Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::ScalarType = ScalarImp

No documentation provided.

Type alias Dune::XT::LA::ContainerInterface::field_type

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
using Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::field_type = ScalarType

No documentation provided.

Type alias Dune::XT::LA::ContainerInterface::RealType

template<class TraitsImp, class ScalarImp = typename TraitsImp::ScalarType>
using Dune::XT::LA::ContainerInterface<TraitsImp, ScalarImp>::RealType = typename Traits::RealType

No documentation provided.