![]() |
Eigen
3.2.91
|
Permutation matrix.
SizeAtCompileTime | the number of rows/cols, or Dynamic |
MaxSizeAtCompileTime | the maximum number of rows/cols, or Dynamic. This optional parameter defaults to SizeAtCompileTime. Most of the time, you should not have to specify it. |
StorageIndex | the integer type of the indices |
This class represents a permutation matrix, internally stored as a vector of integers.
Public Types | |
typedef Eigen::Index | Index |
The interface type of indices. More... | |
Public Member Functions | |
PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex > & | applyTranspositionOnTheLeft (Index i, Index j) |
PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex > & | applyTranspositionOnTheRight (Index i, Index j) |
Index | cols () const |
Derived & | derived () |
const Derived & | derived () const |
Index | determinant () const |
const IndicesType & | indices () const |
IndicesType & | indices () |
TransposeReturnType | inverse () const |
PlainPermutationType | operator* (const PermutationBase< Other > &other) const |
PlainPermutationType | operator* (const Transpose< PermutationBase< Other > > &other) const |
template<typename Other > | |
PermutationMatrix & | operator= (const PermutationBase< Other > &other) |
template<typename Other > | |
PermutationMatrix & | operator= (const TranspositionsBase< Other > &tr) |
PermutationMatrix (Index size) | |
template<typename OtherDerived > | |
PermutationMatrix (const PermutationBase< OtherDerived > &other) | |
template<typename Other > | |
PermutationMatrix (const MatrixBase< Other > &indices) | |
template<typename Other > | |
PermutationMatrix (const TranspositionsBase< Other > &tr) | |
void | resize (Index newSize) |
Index | rows () const |
void | setIdentity () |
void | setIdentity (Index newSize) |
Index | size () const |
DenseMatrixType | toDenseMatrix () const |
TransposeReturnType | transpose () const |
|
inherited |
The interface type of indices.
To change this, #define
the preprocessor symbol EIGEN_DEFAULT_DENSE_INDEX_TYPE
.
|
inlineexplicit |
Constructs an uninitialized permutation matrix of given size.
|
inline |
Copy constructor.
|
inlineexplicit |
Generic constructor from expression of the indices. The indices array has the meaning that the permutations sends each integer i to indices[i].
|
inlineexplicit |
Convert the Transpositions tr to a permutation matrix
|
inlineinherited |
Multiplies *this by the transposition on the left.
References Eigen::EigenBase< Derived >::derived(), Eigen::PermutationBase< Derived >::indices(), and Eigen::PermutationBase< Derived >::size().
|
inlineinherited |
Multiplies *this by the transposition on the right.
This is a fast operation, it only consists in swapping two indices.
References Eigen::EigenBase< Derived >::derived(), Eigen::PermutationBase< Derived >::indices(), and Eigen::PermutationBase< Derived >::size().
|
inlineinherited |
References Eigen::PermutationBase< Derived >::indices(), and Eigen::PermutationBase< Derived >::size().
|
inlineinherited |
Referenced by Eigen::IterativeSolverBase< ConjugateGradient< _MatrixType, _UpLo, _Preconditioner > >::analyzePattern(), Eigen::MatrixBase< Derived >::applyOnTheLeft(), Eigen::MatrixBase< Derived >::applyOnTheRight(), Eigen::PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex > >::applyTranspositionOnTheLeft(), Eigen::PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex > >::applyTranspositionOnTheRight(), Eigen::SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::bottomRightCorner(), Eigen::EigenBase< BandMatrixWrapper< _CoefficientsType, _Rows, _Cols, _Supers, _Subs, _Options > >::cols(), Eigen::SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::cols(), Eigen::IterativeSolverBase< ConjugateGradient< _MatrixType, _UpLo, _Preconditioner > >::compute(), Eigen::TriangularBase< SelfAdjointView< _MatrixType, UpLo > >::copyCoeff(), Eigen::SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::eval(), Eigen::IterativeSolverBase< ConjugateGradient< _MatrixType, _UpLo, _Preconditioner > >::factorize(), Eigen::PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex > >::indices(), Eigen::PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex > >::inverse(), Eigen::RotationBase< Derived, 3 >::operator*(), Eigen::SparseSelfAdjointView< MatrixType, _Mode >::operator*(), Eigen::Translation< _Scalar, _Dim >::operator*(), Eigen::PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex > >::operator*(), Eigen::SparseMatrixBase< Derived >::operator*(), Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::operator*(), Eigen::MatrixBase< Derived >::operator*=(), Eigen::PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex > >::operator=(), Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::operator=(), Eigen::DenseBase< Derived >::operator=(), Eigen::PlainObjectBase< Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::operator=(), Eigen::PlainObjectBase< Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::PlainObjectBase(), Eigen::PlainObjectBase< Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols > >::resizeLike(), Eigen::EigenBase< BandMatrixWrapper< _CoefficientsType, _Rows, _Cols, _Supers, _Subs, _Options > >::rows(), Eigen::SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::rows(), Eigen::SparseSolverBase< SimplicialLDLT< _MatrixType, _UpLo, _Ordering > >::solve(), Eigen::SparseMatrix< Scalar, RowMajor, StorageIndex >::SparseMatrix(), Eigen::PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex > >::toDenseMatrix(), Eigen::SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::topLeftCorner(), Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::Transform(), Eigen::PermutationBase< PermutationMatrix< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex > >::transpose(), and Eigen::SparseMatrixBase< CwiseBinaryOp< BinaryOp, Lhs, Rhs > >::twistedBy().
|
inlineinherited |
|
inlineinherited |
This function is O(n
) procedure allocating a buffer of n
booleans.
References Eigen::DenseBase< Derived >::fill(), Eigen::PermutationBase< Derived >::indices(), and Eigen::PermutationBase< Derived >::size().
|
inline |
const version of indices().
Referenced by Eigen::SparseLU< _MatrixType, _OrderingType >::analyzePattern(), and Eigen::COLAMDOrdering< StorageIndex >::operator()().
|
inline |
|
inlineinherited |
References Eigen::EigenBase< Derived >::derived().
|
inlineinherited |
References Eigen::EigenBase< Derived >::derived().
|
inlineinherited |
|
inline |
Copies the other permutation into *this
|
inline |
Assignment from the Transpositions tr
|
inlineinherited |
Resizes to given size.
References Eigen::PermutationBase< Derived >::indices().
|
inlineinherited |
References Eigen::PermutationBase< Derived >::indices(), and Eigen::PermutationBase< Derived >::size().
|
inlineinherited |
Sets *this to be the identity permutation matrix
References Eigen::PermutationBase< Derived >::indices(), and Eigen::PermutationBase< Derived >::size().
|
inlineinherited |
Sets *this to be the identity permutation matrix of given size.
References Eigen::PermutationBase< Derived >::resize(), and Eigen::PermutationBase< Derived >::setIdentity().
|
inlineinherited |
References Eigen::PermutationBase< Derived >::indices(), and Eigen::PermutationBase< Derived >::size().
|
inlineinherited |
References Eigen::EigenBase< Derived >::derived().
|
inlineinherited |
References Eigen::EigenBase< Derived >::derived().