2017-01-02 3 views
1

Eigen 행렬의 행 또는 열을 복사하지 않고 어떻게 재정렬 할 수 있습니까? Eigen::Map을 사용하여 데이터를 복사하지 않고도 모양을 바꿀 수 있으므로 주문을 변경할 수있는 방법이 있다고 가정하고 있지만 설명서에는 예제가없는 것 같습니다.고유 한 재정렬 행 복사하지 않고

+1

'Eigen :: Map'은 아무 것도 재정렬 할 필요가 없기 때문에 복사하지 않고도 변형 할 수 있습니다. 배열을 다르게 해석하기 만하면됩니다. 행 또는 열을 변경하는 것은 적용 할 수 없습니다. – Sneftel

+1

'swap '이 빠르다고 봅니다 (https://eigen.tuxfamily.org/dox/AsciiQuickReference.txt 참조). –

답변

2

행렬에 PermutationMatrix 또는 Transpositions matrix을 곱할 수 있습니다. P * A을 곱하면 A 행은 P의 인덱스에 따라 바뀝니다. 제품 자체는 게으르다. 즉, 필요할 때만 평가된다. (보다 복잡한 표현을 평가할 때 임시 변수가 생성 될 때 강력한 보장이 없다.)