2014-10-01 31 views
10

Có sẵn hàm hoặc phương pháp sẵn có trong Eigen cho Hat operator không? Đó là toán tử, trả về một ma trận, bắt chước một sản phẩm chéo với vectơ đó. Tôi biết, nó có thể được dễ dàng bằng văn bản, nhưng muốn tránh nó:Ma trận chéo sản phẩm trong Eigen

Eigen::Vector3d t = // some vector ; 
Eigen::Matrix3d t_hat; 
t_hat << 0, -t(2), t(1), 
    t(2), 0, -t(0), 
    -t(1), t(0), 0; 
+0

Ma trận đó thường được gọi là ma trận _antisymmetric_ hoặc _skew-symmetric_. – user2658323

Trả lời

3

Như bạn đã ghi cả hai crosscross3 phương pháp thực hiện các phép nhân. Nhưng bạn muốn thực hiện đại diện skew-symmetric matrix của t.

Những gì bạn có vẻ thích nhất bạn có thể làm cho Vector3dMatrix3d. Việc tổng hợp cho các loại t sẽ cần nhiều thời gian hơn tôi có ngay bây giờ, nhưng đó là một câu hỏi thú vị, vì vậy tôi có thể điều tra sau.

Các vấn đề liên quan