加了真实的误差,收敛了。

Signed-off-by: dugg@lab-desk <dugg@lab-desk>
This commit is contained in:
dugg@lab-desk 2014-07-19 16:36:55 +08:00
parent 16db56fb26
commit a0a0d45e7d
2 changed files with 12 additions and 12 deletions

14
FormG.m
View File

@ -1,12 +1,12 @@
function Mat_G=FormG(Volt,PD,QD,Loadi,bigM,mVolt,rVolt,sigma,Vbi,PDbi,QDbi,mPD,mQD,uPD,lPD)
function Mat_G=FormG(Volt,PD,QD,Loadi,bigM,mVolt,rVolt,sigma,Vbi,PDbi,QDbi,mPD,mQD,uPD,lPD,uQD,lQD,uVolt,lVolt)
Mat_G=[
sparse(PD(Loadi))-mPD(Loadi)-bigM*PDbi-0.1;
sparse(PD(Loadi))-mPD(Loadi)+bigM*PDbi+0.1;
sparse(QD(Loadi))-mQD(Loadi)-bigM*QDbi-0.1;
sparse(QD(Loadi))-mQD(Loadi)+bigM*QDbi+0.1;
Volt'-mVolt'-bigM*Vbi-0.03;
Volt'-mVolt'+bigM*Vbi+0.03;
sparse(PD(Loadi))-mPD(Loadi)-bigM*PDbi-uPD(Loadi);
sparse(PD(Loadi))-mPD(Loadi)+bigM*PDbi+lPD(Loadi);
sparse(QD(Loadi))-mQD(Loadi)-bigM*QDbi-uQD(Loadi);
sparse(QD(Loadi))-mQD(Loadi)+bigM*QDbi+lQD(Loadi);
Volt'-mVolt'-bigM*Vbi-uVolt;
Volt'-mVolt'+bigM*Vbi+lVolt;
Vbi;
PDbi;
QDbi;

10
OPF.m
View File

@ -60,10 +60,10 @@ lPD=RealPD*(1-3*sigma);
uPD=RealPD*(1+3*sigma);
lQD=RealQD*(1-3*sigma);
uQD=RealQD*(1+3*sigma);
lVolt=rVolt*(1-3*sigma);
uVolt=rVolt*(1+3*sigma);
lVolt=rVolt'*(1-3*sigma);
uVolt=rVolt'*(1+3*sigma);
%
mVolt(2)=5;
%mVolt(2)=5;
bigM=10;
Vbi=sparse(0.5*ones(Busnum,1));
PDbi=sparse(0.5*ones(length(Loadi),1));
@ -97,7 +97,7 @@ while(abs(Gap)>Precision*1)
%%
Luu=Init_U'.*Init_W'+Init_u*ones(RestraintCount,1);
Lul=Init_L'.*Init_Z'-Init_u*ones(RestraintCount,1);
Mat_G=FormG(Volt,PD,QD,Loadi,bigM,mVolt,rVolt,sigma,Vbi,PDbi,QDbi,mPD,mQD,uPD,lPD);
Mat_G=FormG(Volt,PD,QD,Loadi,bigM,mVolt,rVolt,sigma,Vbi,PDbi,QDbi,mPD,mQD,uPD,lPD,uQD,lQD,uVolt,lVolt);
Mat_H=FormH(Busnum,Volt,PG,PD,QG,QD,Y,UAngel,r,c,Angle,Loadi);
Ly=Mat_H;
Lz=FormLz(Mat_G,Init_L,GenL,Busnum,PVQL,PD,RealPD,RealQD,Loadi,KK,PF,eps);
@ -144,7 +144,7 @@ while(abs(Gap)>Precision*1)
%%
Luu=Init_U'.*Init_W'+Init_u*ones(RestraintCount,1);
Lul=Init_L'.*Init_Z'-Init_u*ones(RestraintCount,1);
Mat_G=FormG(Volt,PD,QD,Loadi,bigM,mVolt,rVolt,sigma,Vbi,PDbi,QDbi,mPD,mQD);
Mat_G=FormG(Volt,PD,QD,Loadi,bigM,mVolt,rVolt,sigma,Vbi,PDbi,QDbi,mPD,mQD,uPD,lPD,uQD,lQD,uVolt,lVolt);
Mat_H=FormH(Busnum,Volt,PG,PD,QG,QD,Y,UAngel,r,c,Angle,Loadi);
Ly=Mat_H;
if KK>8