MATLAB Answers

how is it possible to solve below matlab codes problem?

6 views (last 30 days)
Mamad Mamadi
Mamad Mamadi on 14 Jan 2020
Edited: Mamad Mamadi on 15 Jan 2020
Hi everybody could you please help me in these codes?
i=1:8784 %one year (hours)
if Ppv_N(i,1) > PLoad(i,1);
Pch(1,i)=(Pbat*(1-sigma))+(Ppv_N(i,1)-(PLoad(i,1))/eta_i)*eta_b;
a=Ppv_N(i,1) - PLoad(i,1)
end
else Ppv_N(i,1) < PLoad(i,1)
Pdis(1,i)=(Pbat*(1-sigma))-((PLoad(i,1)/eta_i)-Ppv_N(i,1));
now after finding Pch and Pdis from 1 to 8784 hours, i want to write another code or loop to solve 'b' between 1:8784 , for example ;
when (Pch & Pdis)=0 %at the same time when both Pch and Pdis become zero, then
b=PLoad(i,1) - Ppv_N(i,1)
  • which i mean when Pch and Pdis at the same time became zero then use b=PLoad(i,1) - Ppv_N(i,1)
thanks

  0 Comments

Sign in to comment.

Answers (1)

David Hill
David Hill on 14 Jan 2020
I was somewhat confused with your question. Hopefully, this helps:
for i=1:8784 %one year (hours)
if Ppv_N(i,1) > PLoad(i,1);
Pch(1,i)=(Pbat*(1-sigma))+(Ppv_N(i,1)-(PLoad(i,1))/eta_i)*eta_b;
a=Ppv_N(i,1) - PLoad(i,1);
elseif Ppv_N(i,1) < PLoad(i,1)
Pdis(1,i)=(Pbat*(1-sigma))-((PLoad(i,1)/eta_i)-Ppv_N(i,1));
end
end
b=[];
for i=1:8784
if Pch(1,i)==Pdis(1,i)
b=[b,PLoad(i,1) - Ppv_N(i,1)];%not sure if you will have more than one occurrance
end
end

  3 Comments

Mamad Mamadi
Mamad Mamadi on 14 Jan 2020
Thank you very much for replying, sorry for my bad english ;(
i mean;
if Ppv_N(i,1) > PLoad(i,1);
Pch(1,i)=(Pbat*(1-sigma))+(Ppv_N(i,1)-(PLoad(i,1))/eta_i)*eta_b;
a=Ppv_N(i,1) - PLoad(i,1)
end
else Ppv_N(i,1) < PLoad(i,1)
Pdis(1,i)=(Pbat*(1-sigma))-((PLoad(i,1)/eta_i)-Ppv_N(i,1));
if Pch & Pdis <=0
b=PLoad(i,1) - Ppv_N(i,1)
if the results of Pch and Pdis will become;
Pch= [10 15 20 0 50 20 30 0 0];
Pdis=[11 18 15 0 20 35 15 0 0];
then use this ''b=PLoad(i,1) - Ppv_N(i,1)'' only when at time 4 ,8,9 that the result for both Pch and Pdis are 0.
It might be anytime between 1:8784 for example at time 500 or 5000 wherever Pch and Pdis become 0 at the same time, system must run ''b=PLoad(i,1) - Ppv_N(i,1)' .
Mamad Mamadi
Mamad Mamadi on 15 Jan 2020
i ran your codes but didnt work it showed an error.
Attempted to access Pch(1,1); index out of bounds
because size(Pch)=[0,0].
i dont know how to solve this error.

Sign in to comment.

Sign in to answer this question.