如何在matlab中方便地将3x3矩阵与3d矢量的交叉乘积?

时间:2010-12-07 02:38:20

标签: matlab matrix vector cross-product

例如,

magic(3)x [1,2,3]给出:

-9   -18    15
 1    -2     1
23   -10    -1

1 个答案:

答案 0 :(得分:1)

听起来你想要做的就是计算3乘3矩阵的每行的叉积和1乘3的向量。为了使用函数CROSS,两个输入必须具有相同的大小,因此您必须使用函数REPMAT复制1-by-3向量,以便它有三行。然后沿着列执行交叉积:

>> A = magic(3);
>> B = [1 2 3];
>> C = cross(A,repmat(B,size(A,1),1),2);
C =

    -9   -18    15
     1    -2     1
    23   -10    -1