乘以单元格数组中的矩阵

时间:2012-05-15 04:16:52

标签: matlab

假设您有一个N x 1单元阵列,其中每个组成单元格是m x m矩阵。我想要这些矩阵的矩阵乘积(即不是逐项乘法),所以如果E_i是单元阵列中的第i个矩阵。我想计算E_1 * E_2 * ... * E_N。有关矢量化方法的任何想法吗?

2 个答案:

答案 0 :(得分:2)

最直接的方法是执行此操作(p是您的答案,cellarray是您的单元格数组)。 *是矩阵乘法,而.*是您希望避免的逐个元素乘法。

p = 1;    
for i = 1:N,
   p = p*cellarray{i};
end

答案 1 :(得分:1)

我不认为这可以被矢量化,因为迭代不是彼此独立的。某个步骤的乘法取决于它之前的所有乘法。