首页 文章

在MATLAB中从另外两个矩阵的组合创建第三个矩阵

提问于
浏览
1

我在MATLAB中有两个表示365x24矩阵的表达式 . 第一个表达式有10,365x24矩阵,因此

PV_power_output(:,:,K)

而第二个表达式又是365x24,但有三个可能的矩阵

WT_energy_supply(:,:,M);ode here

现在,我正在寻找创建第三个矩阵,将元素添加到上面相同的位置,从而形成365x24矩阵 . 但是我想要一组矩阵,其中包含上面显示的两个表达式的所有可能组合(因此该矩阵必须是365x24x30 .

我该怎么做? MATLAB中的bsxfun函数怎么样?

1 回答

  • 0

    使用repmat展开原始矩阵(为清楚起见,我将其命名为 ab )然后添加它们,不需要bsxfun .

    repmat(a,[1 1 size(b,3)]) + repmat(b,[1 1 size(a,3)]))
    

    Update

    >> 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
    

    它看起来很好 . 当然,您必须使用变量 PV_power_outputWT_energy_supply 替换我的变量 ab .

相关问题