0

我有三个正交的向量

   b_vect = [1 2]
   L_vect = [10 20 30]
   f_vect = [100 200 300]

我想做元素换元素操作。我使用 repmat 沿其他维度复制向量,以便获得 3D 数组。

   b_arr = repmat(b_vect , [length(f_vect), length(L_vect), 1])   % Wrong?!
   L_arr = repmat(L_vect , [length(f_vect), 1, length(b_vect)])   % Good!
   f_arr = repmat(f_vect', [1, length(L_vect), length(b_vect)])  % Good!

然而,由于 的方向,这会出错b_vect。因为f_arr可以采用旋转的矢量f_vect'$,但是在 的情况下应该怎么做b_vect呢?

   size(b_arr)
   size(L_arr)
   size(f_arr)

例如,元素对元素的产品将是

   product = b_arr.*L_arr.*f_arr
4

1 回答 1

2

我认为你应该这样做:

b_vect = reshape([1 2],[1 1 numel(b_vect)]);
于 2011-11-23T18:50:23.423 回答