怎样用matlab计算一个矩阵和大量矩阵分别相乘

问题描述:

怎样用matlab计算一个矩阵和大量矩阵分别相乘

方法一,可以使用for循环;
方法二,可以使用cellfun函数.将大量矩阵保存成cell数组.
示例:
a=rand(3,2); %a某个矩阵
B={rand(2,2),rand(2,3),rand(2,4),rand(2,5),rand(2,6)}; %B大量矩阵组成的cell数组
C=cellfun(@(x)a*x,B,'UniformOutput',false); %分别将矩阵a与B中每个矩阵相乘.
%C为结果,也是cell数组
由结果可知:
C{1} = a*B{1}
C{2} = a*B{2}
C{3} = a*B{3}
C{4} = a*B{4}
C{5} = a*B{5}