matlab在强力循环中的应用

matlab在强力循环中的应用,matlab,optimization,for-loop,indexing,brute-force,Matlab,Optimization,For Loop,Indexing,Brute Force,嗨,我正在使用我在下面代码中展示的暴力方法 PV_供应量、WT_供应量和需求量均为48x1 我要做的是分别计算n=1:24和n=25:48的“小时赤字”方程,以便输出2组“小时赤字” 我的代码是 for number_panels = 0:5 for number_turbines = 0:3 for n = 1:24:48 % number of hours per day hourly_deficit(number_panels + 1, number_turbin

嗨,我正在使用我在下面代码中展示的暴力方法

PV_供应量、WT_供应量和需求量均为48x1

我要做的是分别计算n=1:24和n=25:48的“小时赤字”方程,以便输出2组“小时赤字”

我的代码是

for number_panels = 0:5
    for number_turbines = 0:3
      for n = 1:24:48 % number of hours per day

  hourly_deficit(number_panels + 1, number_turbines + 1, n) =...
 Demand(n) - (PV_supply(n)*number_panels) - (WT_supply(n)*number_turbines);

end 
 end 
  end
我希望在如何调整for循环方面得到一些帮助,以便获得我所期望的结果。就目前情况而言,n=1:24:48的值实际上只上升到n=24


谢谢

1:24:48
表示“从1以24到48的增量”:因此,如果继续系列,值将为
1 25 49…
。由于
49
超出了您定义的界限,因此它将在
25
处停止

做你想做的事情的一个解决方案是:

for n = 1:24 % 1 by 1 to 24

    hourly_deficit_1(...,..., n)= Demand(n)-(PV_supply(n)... %# truncated
    n=n+24;
    hourly_deficit_2(...,..., n)= Demand(n)-(PV_supply(n)... %# truncated

end 
要概括任意天数,请在矩阵中添加第四维。第三维度是小时(1:24),第四维度是白天

for h=1:24 %# hours
    for d = 1:num_days %# which day
        n = h + 24*(d-1);
        hourly_deficit_1(...,..., h, d)= Demand(n)-(PV_supply(n)... %# truncated
    end    
end 

1:24:48
表示“从1以24的增量增加到48”:因此,如果您继续序列,则值将为
1 25 49…
。由于
49
超出了您定义的界限,因此它将在
25
处停止

做你想做的事情的一个解决方案是:

for n = 1:24 % 1 by 1 to 24

    hourly_deficit_1(...,..., n)= Demand(n)-(PV_supply(n)... %# truncated
    n=n+24;
    hourly_deficit_2(...,..., n)= Demand(n)-(PV_supply(n)... %# truncated

end 
要概括任意天数,请在矩阵中添加第四维。第三维度是小时(1:24),第四维度是白天

for h=1:24 %# hours
    for d = 1:num_days %# which day
        n = h + 24*(d-1);
        hourly_deficit_1(...,..., h, d)= Demand(n)-(PV_supply(n)... %# truncated
    end    
end 

谢谢,这是可行的-因为我正在尝试添加另一个8760 n,有没有任何方法可以执行此代码来处理这个大数据集?因为每小时的赤字将上升到每小时的赤字365?根据评论编辑。谢谢!您认为使用365x24矩阵比使用8760x1矩阵(重塑)更容易吗?或者实际上是相同的吗?只是确认一下-对于1:24和“h”的“n”小时数有一个for循环1:24也一样?谢谢,这很有效-因为我正在尝试添加另一个8760 n,有没有任何方法可以执行此代码来处理这个大型数据集?因为每小时的赤字将上升到每小时的赤字365?根据评论编辑。非常感谢!您认为使用365x24矩阵比使用8760x1矩阵(重塑)更容易吗?或者实际上是相同的吗?只是确认一下-对于1:24和1:24的“n”小时数,存在一个for循环?可能重复的