MATLAB - 数组和矩阵乘法的组件

时间:2013-06-25 04:00:35

标签: matlab matrix-multiplication

我用这段代码创建了一个带矢量分量的1x7数组(实际大小为1x7x3):

[half_phi half_theta] = meshgrid(-90:30:90, 0);
[half_x half_y half_z] = sph2cart(degtorad(half_phi), degtorad(half_theta), 1);
halfDir = cat(3, half_x, half_y, half_z)

我接下来要做的是将3x3矩阵与每个向量相乘,最后还返回1x7x3数组,如何简洁地实现这一点?

感谢。

1 个答案:

答案 0 :(得分:0)

这是你想要的吗?

A=rand(1,7,3);
B=rand(3,3);

C=reshape(reshape(A,1*7,3)*B,[1,7,3]);

或者

C=reshape(reshape(A,1*7,3)*B',[1,7,3]); %%% with B' instead of B