start for loop from non zero value
Show older comments
Hi I am trying to run the code below for "number_panels" going from 1000 to 2000 with a step interval of 500. The below doesn't seem to work and was wondering if anyone knows how to modify this to get the required
my code is
number_of_days = 2;
for number_panels = 1000:500:2000 % range of PV panel units examined
for number_turbines = 0:1:3 % range of wind turbine units examined
for h=1:24 %# hours
for d = 1:number_of_days %# which day
n = h + 24*(d-1);
% hourly_deficit_1(...,..., h, d)= Demand(n)-(PV_supply(n)... %
hourly_deficit(number_panels + 1, number_turbines + 1, h,d) = hourly_annual_demand(n) - (hourly_annual_PV(n)*number_panels) - (hourly_annual_WT(n)*number_turbines);% hourly power deficit (RES supply with demand)
if hourly_deficit(number_panels + 1, number_turbines + 1, h,d)< 0 % zero out negative hourly deficit values (this is power surplus from RES)
hourly_deficit(number_panels + 1, number_turbines + 1, h,d) = 0;
end
As it stands i am getting size(hourly_deficit) = 2001 4 24 2
whereas I am expecting 3 4 24 2
Accepted Answer
More Answers (1)
Walter Roberson
on 23 Jul 2012
panel_vals = 1000:500:2000;
for panel_number = 1 : length(panel_vals)
number_panels = panel_vals(panel_number);
[...]
hourly_deficit(panel_number, number_turbines + 1, h,d) = hourly_annual_demand(n) - (hourly_annual_PV(n)*number_panels) - (hourly_annual_WT(n)*number_turbines)
I am guessing here that the multiplication by number_panels should be the 1000, 1500, etc., the value rather than the index.
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!