如何在matlab中方便地进行3x3矩阵与3d向量的叉积?

发布于 2024-10-06 19:59:03 字数 113 浏览 4 评论 0原文

例如,

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

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

for example,

magic(3) x [1,2,3] gives:

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

对不⑦ 2024-10-13 19:59:03

听起来您想要做的是计算 3×3 矩阵的每行与 1×3 向量的叉积。为了使用函数 CROSS,两个输入必须相同大小,因此您必须使用函数 REPMAT 复制 1×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

It sounds like what you want to do is compute the cross product of each row of a 3-by-3 matrix with a 1-by-3 vector. In order to use the function CROSS, the two inputs must be the same size, so you will have to replicate your 1-by-3 vector using the function REPMAT so that it has three rows. Then perform the cross product along the columns:

>> 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
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文