把电流不等式约束改成了电流的平方,收敛了,但还没检查一下代码是不是全对。吃完饭要看看。

Signed-off-by: dugg@lab-desk <dugg@lab-desk>
This commit is contained in:
dugg@lab-desk 2014-10-15 16:57:47 +08:00
parent 89b368dedf
commit 42228639e5
5 changed files with 13 additions and 9 deletions

View File

@ -1,6 +1,9 @@
function Mat_G=FormG(I1r,I1i)
% Mat_G=[
% I1r;
% I1i;
% ];
Mat_G=[
I1r;
I1i;
I1r.^2+I1i.^2;
];
end

View File

@ -7,6 +7,6 @@ function Lw=FormLw(Loadi,Mat_G,Init_U)
% VoltU];
% t2=Mat_G+Init_U-t1;
% Lw=t2;
upper=0.20*sparse(ones(length(Loadi)*2,1));
upper=1*sparse(ones(length(Loadi)*1,1));
Lw=Mat_G+Init_U-upper;
end

View File

@ -8,7 +8,7 @@ function Lz=FormLz(Loadi,Mat_G,Init_L)
% ];
% t2=Mat_G-Init_L-t1;
% Lz=t2;
lower=-0.20*sparse(ones(length(Loadi)*2,1));
lower=0*sparse(ones(length(Loadi)*1,1));
Lz=Mat_G-Init_L-lower;
% Lz=-[]
end

View File

@ -1,4 +1,4 @@
function deltG=func_deltG(busNum,Loadi)
function deltG=func_deltG(busNum,Loadi,I1r,I1i)
% dgV_dPD=sparse(length(Loadi),busNum);
% dgV_dQD=sparse(length(Loadi),busNum);
% dgV_dx=[sparse(1:busNum,1:busNum,ones(busNum,1),busNum,busNum);
@ -15,7 +15,8 @@ function deltG=func_deltG(busNum,Loadi)
% %%
deltG=[
zeros(busNum*2,length(Loadi)*2);
eye(length(Loadi)*2);
zeros(busNum*2,length(Loadi)*1);
2*eye(length(Loadi)*1)*diag(I1r);
2*eye(length(Loadi)*1)*diag(I1i);
];
end

4
run.m
View File

@ -257,7 +257,7 @@ KK=0;
plotGap=zeros(1,60);
%
% SEPD SEQD SEVmf1 SEVaf1
RestraintCount=length(Loadi)*2;
RestraintCount=length(Loadi)*1;
ContrlCount=busNum*2+length(Loadi)*2;
CenterA=0.1;
Init_Z=sparse(ones(RestraintCount,1));
@ -276,7 +276,7 @@ while Gap>1e-5 && KK<20
KK=KK+1;
Init_u=Gap/2/RestraintCount*CenterA;
deltH=func_deltH(busNum,fsY1,Loadi,Balance);
deltG=func_deltG(busNum,Loadi);
deltG=func_deltG(busNum,Loadi,I1r,I1i);
% deltG=0;
L_1Z=diag(Init_Z./Init_L);
U_1W=diag(Init_W./Init_U);