matlab在强力循环中的应用
嗨,我正在使用我在下面代码中展示的暴力方法 PV_供应量、WT_供应量和需求量均为48x1 我要做的是分别计算n=1:24和n=25:48的“小时赤字”方程,以便输出2组“小时赤字” 我的代码是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
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循环?可能重复的