又调了一下,更理想了。

Signed-off-by: dugg@lab-desk <dugg@lab-desk>
This commit is contained in:
dugg@lab-desk 2015-02-02 21:28:56 +08:00
parent a2b2ba134f
commit beaa6855d4
1 changed files with 56 additions and 55 deletions

View File

@ -90,7 +90,7 @@ lVolt(noMeasurei)=0.7*mVolt(noMeasurei);%
uVolt(noMeasurei)=0.7*mVolt(noMeasurei); uVolt(noMeasurei)=0.7*mVolt(noMeasurei);
% %
%mVolt(2)=5; %mVolt(2)=5;
bigM=0.000003; % bigM=0.000003;
Vbi=sparse(0.5*ones(Busnum,1)); Vbi=sparse(0.5*ones(Busnum,1));
% Vbi(2)=1; % Vbi(2)=1;
PDbi=sparse(0.5*ones(length(Loadi),1)); PDbi=sparse(0.5*ones(length(Loadi),1));
@ -124,7 +124,7 @@ while(abs(Gap)>Precision*10)
%% %%
Luu=Init_U'.*Init_W'+Init_u*ones(RestraintCount,1); Luu=Init_U'.*Init_W'+Init_u*ones(RestraintCount,1);
Lul=Init_L'.*Init_Z'-Init_u*ones(RestraintCount,1); Lul=Init_L'.*Init_Z'-Init_u*ones(RestraintCount,1);
bigM=0.7; bigM=1;
Mat_G=FormG(Volt,PD,QD,Loadi,bigM,mVolt,rVolt,sigma,Vbi,PDbi,QDbi,mPD,mQD,uPD,lPD,uQD,lQD,uVolt,lVolt); 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); Mat_H=FormH(Busnum,Volt,PG,PD,QG,QD,Y,UAngel,r,c,Angle,Loadi);
Ly=Mat_H; Ly=Mat_H;
@ -146,19 +146,19 @@ end
% Gap=(Init_L*Init_Z'-Init_U*Init_W'); % Gap=(Init_L*Init_Z'-Init_U*Init_W');
Gap=1; Gap=1;
% KK=0; % KK=0;
eps=0.00001; % eps=0.00001;
fprintf('\n'); fprintf('\n');
fprintf('2\n'); fprintf('2\n');
while eps>0.000001 % while eps>0.000001
% Init_Z=sparse(ones(1,RestraintCount)); % Init_Z=sparse(ones(1,RestraintCount));
% Init_W=sparse(-1*ones(1,RestraintCount)); % Init_W=sparse(-1*ones(1,RestraintCount));
% Init_L=1*sparse(ones(1,RestraintCount)); % Init_L=1*sparse(ones(1,RestraintCount));
% Init_U=1*sparse(ones(1,RestraintCount)); % Init_U=1*sparse(ones(1,RestraintCount));
% Init_Y=sparse(1,2*Busnum);% % Init_Y=sparse(1,2*Busnum);%
while(abs(Gap)>Precision*100) while(abs(Gap)>Precision*10)
if KK>kmax if KK>kmax
% break; % break;
end end
plotGap(KK+1)=Gap; plotGap(KK+1)=Gap;
Init_u=Gap/2/RestraintCount*CenterA; Init_u=Gap/2/RestraintCount*CenterA;
@ -183,6 +183,7 @@ while eps>0.000001
Luu=Init_U'.*Init_W'+Init_u*ones(RestraintCount,1); Luu=Init_U'.*Init_W'+Init_u*ones(RestraintCount,1);
Lul=Init_L'.*Init_Z'-Init_u*ones(RestraintCount,1); Lul=Init_L'.*Init_Z'-Init_u*ones(RestraintCount,1);
bigM=0.7; bigM=0.7;
eps=Gap*0.1;
Mat_G=FormG(Volt,PD,QD,Loadi,bigM,mVolt,rVolt,sigma,Vbi,PDbi,QDbi,mPD,mQD,uPD,lPD,uQD,lQD,uVolt,lVolt); 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); Mat_H=FormH(Busnum,Volt,PG,PD,QG,QD,Y,UAngel,r,c,Angle,Loadi);
Ly=Mat_H; Ly=Mat_H;
@ -197,18 +198,18 @@ while eps>0.000001
% Vbi_=Vbi; % Vbi_=Vbi;
% PDbi_=PDbi; % PDbi_=PDbi;
% QDbi_=QDbi; % QDbi_=QDbi;
% Vbi=1./(1+exp( (0.06-Vbi) /0.01))*0.1; % Vbi=1./(1+exp( (0.06-Vbi) /0.01))*0.1;
[deltZ,deltL,deltW,deltU,deltX,deltY]=AssignXX(XX,ContrlCount,RestraintCount,Busnum); [deltZ,deltL,deltW,deltU,deltX,deltY]=AssignXX(XX,ContrlCount,RestraintCount,Busnum);
[Init_Z,Init_L,Init_W,Init_U,Init_Y,PG,QG,Volt,UAngel,PD,QD,Vbi,PDbi,QDbi]=Modification(Init_Z,Init_L,Init_W,Init_U,Init_Y,deltZ,deltL,deltW,deltU,deltX,deltY,PG,QG,Volt,UAngel,PVi,ContrlCount,Balance,Busnum,PGi,PD,QD,Loadi,Vbi,PDbi,QDbi); [Init_Z,Init_L,Init_W,Init_U,Init_Y,PG,QG,Volt,UAngel,PD,QD,Vbi,PDbi,QDbi]=Modification(Init_Z,Init_L,Init_W,Init_U,Init_Y,deltZ,deltL,deltW,deltU,deltX,deltY,PG,QG,Volt,UAngel,PVi,ContrlCount,Balance,Busnum,PGi,PD,QD,Loadi,Vbi,PDbi,QDbi);
Gap=(Init_L*Init_Z'-Init_U*Init_W'); Gap=(Init_L*Init_Z'-Init_U*Init_W');
% Vbi(Vbi>0.01)=1; % Vbi(Vbi>0.01)=1;
KK=KK+1; KK=KK+1;
end
eps=eps*0.4;
% eps=Gap
Gap=100;
end end
% eps=Gap
% Gap=100;
% end
%% %%
AngleIJ=sparse(r,c,UAngel(r)-UAngel(c)-Angle',Busnum,Busnum); AngleIJ=sparse(r,c,UAngel(r)-UAngel(c)-Angle',Busnum,Busnum);
dP=PD+diag(Volt)*Y.*cos(AngleIJ)*Volt'; dP=PD+diag(Volt)*Y.*cos(AngleIJ)*Volt';