Go to the documentation of this file.
10 #ifndef EIGEN_SPARSEPRODUCT_H
11 #define EIGEN_SPARSEPRODUCT_H
26 template<
typename Derived>
27 template<
typename OtherDerived>
37 template<
typename Lhs,
typename Rhs,
int ProductType>
40 template<
typename Dest>
47 template<
typename Dest,
typename ActualLhs>
52 LhsNested lhsNested(lhs);
53 RhsNested rhsNested(rhs);
59 template<
typename Dest>
62 addTo(dst, -lhs, rhs);
68 template<
typename Dest>
73 LhsNested lhsNested(lhs);
74 RhsNested rhsNested(rhs);
80 template<
typename Dest>
89 template<
typename Lhs,
typename Rhs,
int ProductType>
95 template<
typename Lhs,
typename Rhs,
int ProductType>
101 template<
typename DstXprType,
typename Lhs,
typename Rhs>
109 if((dst.rows()!=dstRows) || (dst.cols()!=dstCols))
110 dst.resize(dstRows, dstCols);
117 template<
typename DstXprType,
typename Lhs,
typename Rhs>
128 template<
typename DstXprType,
typename Lhs,
typename Rhs>
138 template<
typename Lhs,
typename Rhs,
int Options>
140 :
public evaluator<typename Product<Lhs, Rhs, DefaultProduct>::PlainObject>
150 ::new (
static_cast<Base*
>(
this))
Base(m_result);
168 template<
typename Scalar,
int _Options,
typename _StorageIndex>
169 template<
typename Lhs,
typename Rhs>
181 #endif // EIGEN_SPARSEPRODUCT_H
static void run(DstXprType &dst, const SrcXprType &src, const internal::add_assign_op< typename DstXprType::Scalar, typename SrcXprType::Scalar > &)
XprType::PlainObject PlainObject
Namespace containing all symbols from the Eigen library.
A versatible sparse matrix representation.
Product< Lhs, Rhs, AliasFreeProduct > SrcXprType
static void subTo(Dest &dst, const Lhs &lhs, const Rhs &rhs, typename enable_if< is_same< typename evaluator_traits< Dest >::Shape, DenseShape >::value, int * >::type *=0)
Product< Lhs, Rhs, AliasFreeProduct > SrcXprType
const internal::remove_all< MatrixTypeNested >::type & nestedExpression() const
static void evalTo(Dest &dst, const Lhs &lhs, const Rhs &rhs, DenseShape)
unary_evaluator(const XprType &xpr)
Product< Lhs, Rhs, AliasFreeProduct > SrcXprType
static void evalTo(Dest &dst, const Lhs &lhs, const Rhs &rhs, SparseShape)
SparseView< Product< Lhs, Rhs, Options > > XprType
static void run(DstXprType &dst, const SrcXprType &src, const internal::assign_op< typename DstXprType::Scalar, typename SrcXprType::Scalar > &)
Derived & operator=(const Derived &other)
evaluator< PlainObject > Base
storage_kind_to_shape< typename traits< T >::StorageKind >::Shape Shape
Expression of the product of two arbitrary matrices or vectors.
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE EIGEN_CONSTEXPR Index cols() const EIGEN_NOEXCEPT
EIGEN_DEVICE_FUNC const EIGEN_STRONG_INLINE LhsNestedCleaned & lhs() const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE EIGEN_CONSTEXPR Index rows() const EIGEN_NOEXCEPT
const Product< Derived, OtherDerived > operator*(const DiagonalBase< OtherDerived > &other) const
EIGEN_DEVICE_FUNC const EIGEN_STRONG_INLINE RhsNestedCleaned & rhs() const
ProductLieGroup< Point2, Pose2 > Product
Expression of a dense or sparse matrix with zero or too small values removed.
Base class of any sparse matrices or sparse expressions.
static void evalTo(Dest &dst, const Lhs &lhs, const Rhs &rhs)
int EIGEN_BLAS_FUNC() swap(int *n, RealScalar *px, int *incx, RealScalar *py, int *incy)
static void addTo(Dest &dst, const ActualLhs &lhs, const Rhs &rhs, typename enable_if< is_same< typename evaluator_traits< Dest >::Shape, DenseShape >::value, int * >::type *=0)
static void run(DstXprType &dst, const SrcXprType &src, const internal::sub_assign_op< typename DstXprType::Scalar, typename SrcXprType::Scalar > &)
RealScalar epsilon() const
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
gtsam
Author(s):
autogenerated on Sun Dec 22 2024 04:13:47