我在MATLAB中有两个表示365x24矩阵的表达式。第一个表达式有10,365x24矩阵,因此是
PV_power_output(:,:,K)
,第二个表达式又是365x24,但有三个可能的矩阵,因此是
WT_energy_supply(:,:,M);ode here
现在,我正在寻找创建第三个矩阵,将元素添加到上面相同的位置,从而形成365x24矩阵。但是我想要一组矩阵,其中包含上面显示的两个表达式的所有可能组合(因此该矩阵必须为365x24x30。
我该如何解决这个问题? 那么MATLAB中的bsxfun函数呢?
答案 0 :(得分:0)
使用repmat展开原始矩阵(为清楚起见,我将a
和b
命名为“),然后添加它们,不需要bsxfun。
repmat(a,[1 1 size(b,3)]) + repmat(b,[1 1 size(a,3)]))
<强>更新强>
>> size(a)
ans =
364 24 10
>> size(b)
ans =
364 24 3
>> c=repmat(a,[1 1 size(b,3)])+repmat(b,[1 1 size(a,3)]);
>> size(c)
ans =
364 24 30
对我来说很好看。当然,您必须使用变量a
和b
替换变量PV_power_output
和WT_energy_supply
。