template<typename ExpressionType, int Side, bool Transposed, typename ExpressionShape>
class Eigen::internal::transposition_matrix_product< ExpressionType, Side, Transposed, ExpressionShape >
Internal helper class implementing the product between a permutation matrix and a matrix.
template<typename ExpressionType , int Side, bool Transposed, typename ExpressionShape >
template<typename Dest , typename TranspositionType >
1073 typedef typename TranspositionType::StorageIndex StorageIndex;
1079 for (
Index k = (Transposed ?
size - 1 : 0); Transposed ?
k >= 0 :
k <
size; Transposed ? --
k : ++
k)
1082 dst.row(
k).
swap(dst.row(
j));
1084 dst.col(
k).swap(dst.col(
j));
Eigen::SparseMatrix< double > mat
Definition: EigenUnitTest.cpp:10
Scalar Scalar int size
Definition: benchVecAdd.cpp:17
MatrixXf MatrixType
Definition: benchmark-blocking-sizes.cpp:52
void swap(SparseMatrix &other)
Definition: SparseMatrix.h:829
@ OnTheLeft
Definition: Constants.h:331
@ OnTheRight
Definition: Constants.h:333
char char char int int * k
Definition: level2_impl.h:374
EIGEN_DEVICE_FUNC bool is_same_dense(const T1 &mat1, const T2 &mat2, std::enable_if_t< possibly_same_dense< T1, T2 >::value > *=0)
Definition: XprHelper.h:869
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
Definition: Meta.h:83
std::ptrdiff_t j
Definition: tut_arithmetic_redux_minmax.cpp:2
References Eigen::internal::is_same_dense(), j, k, Eigen::OnTheLeft, Eigen::OnTheRight, size, and Eigen::SparseMatrix< Scalar_, Options_, StorageIndex_ >::swap().
Referenced by Eigen::internal::generic_product_impl< Lhs, Rhs, TranspositionsShape, MatrixShape, ProductTag >::evalTo(), Eigen::internal::generic_product_impl< Lhs, Rhs, MatrixShape, TranspositionsShape, ProductTag >::evalTo(), Eigen::internal::generic_product_impl< Lhs, Transpose< Rhs >, MatrixShape, TranspositionsShape, ProductTag >::evalTo(), and Eigen::internal::generic_product_impl< Transpose< Lhs >, Rhs, TranspositionsShape, MatrixShape, ProductTag >::evalTo().