Represents a sequence of transpositions (row/column interchange) More...
#include <Transpositions.h>
Public Types | |
typedef TranspositionsBase< Transpositions > | Base |
typedef Traits::IndicesType | IndicesType |
typedef IndicesType::Scalar | StorageIndex |
Public Types inherited from Eigen::TranspositionsBase< Transpositions< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex > > | |
typedef Eigen::Index | Index |
typedef Traits::IndicesType | IndicesType |
typedef IndicesType::Scalar | StorageIndex |
Protected Attributes | |
IndicesType | m_indices |
Private Types | |
typedef internal::traits< Transpositions > | Traits |
Represents a sequence of transpositions (row/column interchange)
SizeAtCompileTime | the number of transpositions, or Dynamic |
MaxSizeAtCompileTime | the maximum number of transpositions, or Dynamic. This optional parameter defaults to SizeAtCompileTime. Most of the time, you should not have to specify it. |
This class represents a permutation transformation as a sequence of n transpositions . It is internally stored as a vector of integers indices
. Each transposition applied on the left of a matrix ( ) interchanges the rows i
and indices
[i] of the matrix M
. A transposition applied on the right (e.g., ) yields a column interchange.
Compared to the class PermutationMatrix, such a sequence of transpositions is what is computed during a decomposition with pivoting, and it is faster when applying the permutation in-place.
To apply a sequence of transpositions to a matrix, simply use the operator * as in the following example:
In this example, we detect that the matrix appears on both side, and so the transpositions are applied in-place without any temporary or extra copy.
Definition at line 155 of file Transpositions.h.
typedef TranspositionsBase<Transpositions> Eigen::Transpositions< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex >::Base |
Definition at line 160 of file Transpositions.h.
typedef Traits::IndicesType Eigen::Transpositions< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex >::IndicesType |
Definition at line 161 of file Transpositions.h.
typedef IndicesType::Scalar Eigen::Transpositions< SizeAtCompileTime, MaxSizeAtCompileTime, _StorageIndex >::StorageIndex |
Definition at line 162 of file Transpositions.h.
|
private |
Definition at line 157 of file Transpositions.h.
|
inline |
Definition at line 164 of file Transpositions.h.
|
inline |
Copy constructor.
Definition at line 168 of file Transpositions.h.
|
inlineexplicit |
Generic constructor from expression of the transposition indices.
Definition at line 173 of file Transpositions.h.
|
inline |
Constructs an uninitialized permutation matrix of given size.
Definition at line 185 of file Transpositions.h.
|
inline |
Definition at line 193 of file Transpositions.h.
|
inline |
const version of indices().
Definition at line 190 of file Transpositions.h.
|
inline |
Copies the other transpositions into *this
Definition at line 178 of file Transpositions.h.
|
protected |
Definition at line 197 of file Transpositions.h.