diff --git a/OPF.m b/OPF.m index 26ddf60..d48e29f 100644 --- a/OPF.m +++ b/OPF.m @@ -9,7 +9,9 @@ badDataResult=zeros(10,33); badDataLocation=zeros(34,10); nodeMaxDVolt=zeros(33,1); nodeMaxDVAngle=zeros(33,1); -for badDataNode=1:1 +maxDVoltPos=0; +maxDAnglePos=0; +for badDataNode=1:33 loopN=1; maxDVolt=0; maxDVAngle=0; @@ -51,20 +53,28 @@ for badDataNode=1:1 maxDVolt_=max(abs((rVolt-Volt))); if maxDVolt_>maxDVolt maxDVolt=maxDVolt_; + maxDVoltPos_=find(maxDVolt==abs((rVolt-Volt))); + if isempty(maxDVoltPos_)==0 + maxDVoltPos=maxDVoltPos_; + end end maxDVAngle_=max(abs((UAngel(2:33)-rUAngel(2:33)))); if maxDVAngle_>maxDVAngle maxDVAngle=maxDVAngle_; + maxDVoltPos_=find(maxDVolt==abs((UAngel(2:33)-rUAngel(2:33)))); + if isempty(maxDVoltPos_)==0 + maxDVoltPos=maxDVoltPos_; + end end - nodeMaxDVolt_t=abs((rVolt-Volt))'; - nodeMaxDVAngle_t=abs((UAngel-rUAngel))'; - nodeMaxDVolt_t([1:18,23:33])=0; - nodeMaxDVAngle_t([1:18,23:33])=0; - nodeMaxDVolt(nodeMaxDVolt=500 -% nodeMaxDVolt(badDataNode)=maxDVolt; -% nodeMaxDVAngle(badDataNode)=maxDVAngle; + nodeMaxDVolt(badDataNode)=maxDVolt; + nodeMaxDVAngle(badDataNode)=maxDVAngle; break; end diff --git a/subOPF.m b/subOPF.m index 7fdbb52..c300e6d 100644 --- a/subOPF.m +++ b/subOPF.m @@ -237,7 +237,7 @@ dQ(Balance)=0; mdP=max(dP); mdQ=max(dQ); %ΕΠ¶ΟΚΗ·ρΚΥΑ² -if min(abs(Vbi-.1))>5e-005 +if min(abs(Vbi-.1))>0.1+5e-005 isConverge=0; end if KK>=kmax