Base class for permutations. More...
Public Member Functions | |
Derived & | applyTranspositionOnTheLeft (Index i, Index j) |
Derived & | applyTranspositionOnTheRight (Index i, Index j) |
Index | cols () const |
Index | determinant () const |
IndicesType & | indices () |
const IndicesType & | indices () const |
InverseReturnType | inverse () const |
template<typename Other > | |
PlainPermutationType | operator* (const InverseImpl< Other, PermutationStorage > &other) const |
template<typename Other > | |
PlainPermutationType | operator* (const PermutationBase< Other > &other) const |
template<typename OtherDerived > | |
Derived & | operator= (const PermutationBase< OtherDerived > &other) |
template<typename OtherDerived > | |
Derived & | operator= (const TranspositionsBase< OtherDerived > &tr) |
void | resize (Index newSize) |
Index | rows () const |
void | setIdentity () |
void | setIdentity (Index newSize) |
Index | size () const |
DenseMatrixType | toDenseMatrix () const |
InverseReturnType | transpose () const |
![]() | |
template<typename Dest > | |
void | addTo (Dest &dst) const |
template<typename Dest > | |
void | applyThisOnTheLeft (Dest &dst) const |
template<typename Dest > | |
void | applyThisOnTheRight (Dest &dst) const |
EIGEN_CONSTEXPR Index | cols () const EIGEN_NOEXCEPT |
Derived & | const_cast_derived () const |
const Derived & | const_derived () const |
Derived & | derived () |
const Derived & | derived () const |
template<typename Dest > | |
void | evalTo (Dest &dst) const |
EIGEN_CONSTEXPR Index | rows () const EIGEN_NOEXCEPT |
EIGEN_CONSTEXPR Index | size () const EIGEN_NOEXCEPT |
template<typename Dest > | |
void | subTo (Dest &dst) const |
Private Types | |
typedef EigenBase< Derived > | Base |
typedef internal::traits< Derived > | Traits |
Additional Inherited Members | |
![]() | |
typedef Eigen::Index | Index |
The interface type of indices. More... | |
typedef internal::traits< Derived >::StorageKind | StorageKind |
Base class for permutations.
Derived | the derived class |
This class is the base class for all expressions representing a permutation matrix, internally stored as a vector of integers. The convention followed here is that if
This convention ensures that for any two permutations
Permutation matrices are square and invertible.
Notice that in addition to the member functions and operators listed here, there also are non-member operator* to multiply any kind of permutation object with any kind of matrix expression (MatrixBase) on either side.
Definition at line 48 of file PermutationMatrix.h.
|
private |
Definition at line 51 of file PermutationMatrix.h.
|
private |
Definition at line 50 of file PermutationMatrix.h.
|
inline |
Multiplies *this by the transposition
Definition at line 157 of file PermutationMatrix.h.
|
inline |
Multiplies *this by the transposition
This is a fast operation, it only consists in swapping two indices.
Definition at line 176 of file PermutationMatrix.h.
|
inline |
Definition at line 96 of file PermutationMatrix.h.
|
inline |
This function is O(n
) procedure allocating a buffer of n
booleans.
Definition at line 244 of file PermutationMatrix.h.
|
inline |
Definition at line 123 of file PermutationMatrix.h.
|
inline |
|
inline |
Definition at line 187 of file PermutationMatrix.h.
|
inline |
Definition at line 229 of file PermutationMatrix.h.
|
inline |
Definition at line 221 of file PermutationMatrix.h.
|
inline |
Copies the other permutation into *this
Definition at line 76 of file PermutationMatrix.h.
|
inline |
Assignment from the Transpositions tr
Definition at line 84 of file PermutationMatrix.h.
|
inline |
|
inline |
Definition at line 93 of file PermutationMatrix.h.
|
inline |
|
inline |
Sets *this to be the identity permutation matrix of given size.
Definition at line 142 of file PermutationMatrix.h.
|
inline |
Definition at line 99 of file PermutationMatrix.h.
|
inline |
|
inline |
Definition at line 193 of file PermutationMatrix.h.