成功删除QG变量
This commit is contained in:
parent
d9f6d993e6
commit
618b56bc67
|
|
@ -9,6 +9,6 @@ this.currentPos=this.currentPos+1;
|
|||
this.PDArray(:,this.currentPos)=PD;
|
||||
this.QDArray(:,this.currentPos)=QD;
|
||||
this.PGArray(this.currentPos)=PG;
|
||||
this.QGArray(this.currentPos)=QG;
|
||||
% this.QGArray(this.currentPos)=QG;
|
||||
end
|
||||
|
||||
|
|
|
|||
|
|
@ -6,6 +6,6 @@ QDMaxDev=max(abs( (this.QDArray-QD0Array)./QD0Array ),[],2);
|
|||
PG0Array=repmat(PG0,this.sampleNum,1);
|
||||
QG0Array=repmat(QG0,this.sampleNum,1);
|
||||
PGMaxDev=max(abs( (PG0Array-this.PGArray)./PG0Array ));
|
||||
QGMaxDev=max( abs( (QG0Array-this.QGArray)./QG0Array ) );
|
||||
output_arg=max([PDMaxDev;QDMaxDev;PGMaxDev;QGMaxDev]);
|
||||
% QGMaxDev=max( abs( (QG0Array-this.QGArray)./QG0Array ) );
|
||||
output_arg=max([PDMaxDev;QDMaxDev;PGMaxDev]);
|
||||
end
|
||||
|
|
|
|||
|
|
@ -9,8 +9,8 @@ QDDev=(this.QDArray-QD0Array)/0.05;
|
|||
PG0Array=repmat(PG0,this.sampleNum,1);
|
||||
QG0Array=repmat(QG0,this.sampleNum,1);
|
||||
PGDev=(PG0Array-this.PGArray)/0.01;
|
||||
QGDev=(QG0Array-this.QGArray)/0.01;
|
||||
wholeMat=[PDDev;QDDev;PGDev';QGDev'];
|
||||
% QGDev=(QG0Array-this.QGArray)/0.01;
|
||||
wholeMat=[PDDev;QDDev;PGDev'];
|
||||
t1=wholeMat.^2;
|
||||
t2=sum(t1,1);
|
||||
t3=t2/size(t1,1);
|
||||
|
|
|
|||
1
FormG.m
1
FormG.m
|
|
@ -2,7 +2,6 @@ function Mat_G=FormG(Volt,PVi,PGi,PG,QG,PD,QD,Loadi)
|
|||
|
||||
Mat_G=[
|
||||
PG(PGi);
|
||||
QG(PVi);
|
||||
sparse(PD(Loadi));
|
||||
sparse(QD(Loadi));
|
||||
Volt';
|
||||
|
|
|
|||
2
FormLw.m
2
FormLw.m
|
|
@ -18,7 +18,7 @@ QDU(QDU<0)=0.700*QDU(QDU<0);
|
|||
QDU(QDU==0)=0.400;
|
||||
% PF=0.85;
|
||||
% QDU=1.0*PD(Loadi).*sqrt(1 -PF.^2)./PF;
|
||||
t1=([PU',QU',PDU',QDU',VoltU])';
|
||||
t1=([PU',PDU',QDU',VoltU])';
|
||||
t2=Mat_G+Init_U'-t1;
|
||||
Lw=t2;
|
||||
|
||||
|
|
|
|||
2
FormLz.m
2
FormLz.m
|
|
@ -16,7 +16,7 @@ QDL(QDL>0)=0.700*QDL(QDL>0);
|
|||
QDL(QDL<0)=1.300*QDL(QDL<0);
|
||||
QDL(QDL==0)=-0.400;
|
||||
% QDL=0*PD(Loadi).*sqrt((1-PF.^2))./PF;
|
||||
t1=([PL',QL',PDL',QDL',VoltL])';
|
||||
t1=([PL',PDL',QDL',VoltL])';
|
||||
t2=Mat_G-Init_L'-t1;
|
||||
Lz=t2;
|
||||
|
||||
|
|
|
|||
|
|
@ -12,11 +12,11 @@ Init_Y=Init_Y+AlphaD*deltY';
|
|||
%PG(PGi)=PG(PGi)+deltX(1:size(PGi,1));
|
||||
PG(PGi)=PG(PGi)+AlphaP*deltX(1:size(PGi,1));
|
||||
%QG(PVi)=QG(PVi)+deltX(size(PGi,1)+1:size(PVi,1)+size(PGi,1) );
|
||||
QG(PVi)=QG(PVi)+AlphaP*deltX(size(PGi,1)+1:size(PVi,1)+size(PGi,1) );
|
||||
t=deltX(size(PVi,1)+size(PGi,1)+1:size(PVi,1)+size(PGi,1)+size(Loadi,1)*2);
|
||||
% QG(PVi)=QG(PVi)+AlphaP*deltX(size(PGi,1)+1:size(PVi,1)+size(PGi,1) );
|
||||
t=deltX(size(PGi,1)+1:size(PGi,1)+size(Loadi,1)*2);
|
||||
PD(Loadi)=PD(Loadi)+AlphaP*t(1:length(Loadi));
|
||||
QD(Loadi)=QD(Loadi)+AlphaP*t(length(Loadi)+1:length(Loadi)*2);
|
||||
t=deltX(size(PVi,1)+size(PGi,1)+size(Loadi,1)*2+1:ContrlCount)';
|
||||
t=deltX(size(PGi,1)+size(Loadi,1)*2+1:ContrlCount)';
|
||||
t(Busnum+Balance)=0;
|
||||
%Volt=Volt+AlphaP*t(2:2:2*Busnum);暂时改一下20111227
|
||||
%UAngel=UAngel+AlphaP*t(1:2:2*Busnum);暂时改一下20111227
|
||||
|
|
|
|||
3
OPF.m
3
OPF.m
|
|
@ -35,11 +35,12 @@ for II=1:4
|
|||
QG0(PVi)=QGBal(PVi);
|
||||
QG(PVi)=QGBal(PVi);
|
||||
%%
|
||||
PVi=zeros(0,0);
|
||||
[Volt,UAngel,Init_Z,Init_W,Init_L,Init_U,Init_Y,PG,QG,RestraintCount,wPG,wQG,wPD,wQD,PD,PD0,QD,randPDind,Loadi]=OPF_Init(Busnum,Balance,PG,QG,Volt,GenU,GenL,PVi,PGi,PVQU,PVQL,PD0,QD0,QD,PD);
|
||||
Gap=(Init_L*Init_Z'-Init_U*Init_W');
|
||||
KK=0;
|
||||
plotGap=zeros(1,60);
|
||||
ContrlCount=size(PVi,1)+size(PGi,1)+size(Loadi,1)*2+Busnum*2;
|
||||
ContrlCount=size(PGi,1)+size(Loadi,1)*2+Busnum*2;
|
||||
kmax=60;
|
||||
%% 20120523 ÁÙʱ
|
||||
QD_NON_ZERO=QD(PD==0 & QD~=0);
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
function [Volt,UAngel,Init_Z,Init_W,Init_L,Init_U,Init_Y,PG,QG,RestraintCount,wPG,wQG,wPD,wQD,PD,PD0,QD,randPDind,Loadi]=OPF_Init(Busnum,Balance,PG,QG,Volt,GenU,GenL,PVi,PGi,PVQU,PVQL,PD0,QD0,QD,PD)
|
||||
Loadi=find(QD~=0 | PD~=0);
|
||||
%Loadi=[1:Busnum]';
|
||||
RestraintCount=size(PVi,1)+size(PGi,1)+size(Loadi,1)*2+Busnum*1; %约束条件数,放开所有QD
|
||||
RestraintCount=size(PGi,1)+size(Loadi,1)*2+Busnum*1; %约束条件数,放开所有QD
|
||||
t_Bal_volt=Volt(Balance);
|
||||
Volt=sparse(1*ones(1,Busnum));
|
||||
Volt(Balance)=t_Bal_volt;
|
||||
|
|
@ -16,14 +16,12 @@ tQU=sparse(PVQU(:,1));%
|
|||
tPL=sparse(GenL(:,2));% 发电机有功下限
|
||||
tQL=sparse(PVQL(:,1));% 无功下限
|
||||
PG(PGi)=(tPU+tPL)/2;
|
||||
QG(PVi)=(tQU+tQL)/2;
|
||||
wPG=0*ones(size(PGi,1),1);
|
||||
wQG=0*ones(size(PVi,1),1);
|
||||
wQG=0*ones(size(PVi,1),0);
|
||||
%randInt=randperm(size(Loadi,1));
|
||||
%randPDind=randInt(1:10);
|
||||
randPDind=0;
|
||||
wPD=20*ones(size(Loadi,1),1);
|
||||
wQD=20*ones(size(Loadi,1),1);
|
||||
%wD(randPDind)=0;%一些负荷不约束
|
||||
%wD(7)=0;
|
||||
% wD(11)=0;
|
||||
|
|
|
|||
|
|
@ -10,14 +10,14 @@ aa=[
|
|||
];
|
||||
yy=[LxComa;-Ly];
|
||||
%% 平衡节点电压不变
|
||||
t=size(PVi,1)+size(PGi,1)+size(Loadi,1)*2;
|
||||
t=size(PGi,1)+size(Loadi,1)*2;
|
||||
aa(t+Balance,:)=0;
|
||||
aa(:,t+Balance)=0;
|
||||
%aa(t+Balance,t+Balance)=1;
|
||||
aa=aa+sparse(t+Balance,t+Balance,ones(length(Balance),1),ContrlCount+2*Busnum,ContrlCount+2*Busnum);
|
||||
deltG(t+Balance,:)=0;
|
||||
%%
|
||||
t=size(PVi,1)+size(PGi,1)+size(Loadi,1)*2+Busnum*1;
|
||||
t=size(PGi,1)+size(Loadi,1)*2+Busnum*1;
|
||||
aa(t+Balance,:)=0;
|
||||
aa(:,t+Balance)=0;
|
||||
%aa(t+Balance,t+Balance)=1;
|
||||
|
|
|
|||
|
|
@ -49,10 +49,9 @@ t=[ddPdVdV+ddQdVdV,ddPdVdT+ddQdVdT;
|
|||
ddPdTdV+ddQdTdV,ddPdTdT+ddQdTdT;
|
||||
];
|
||||
sizePGi=size(PGi,1);
|
||||
sizePVi=size(PVi,1);
|
||||
sizeLoadi=size(Loadi,1)*2;
|
||||
ddh=[
|
||||
sparse(sizePGi+sizePVi+sizeLoadi,ContrlCount);
|
||||
sparse(2*Busnum,sizePVi+sizePGi+sizeLoadi),-t;
|
||||
sparse(sizePGi+sizeLoadi,ContrlCount);
|
||||
sparse(2*Busnum,sizePGi+sizeLoadi),-t;
|
||||
];
|
||||
end
|
||||
|
|
@ -6,7 +6,6 @@ t3=2*wPD.*(PD(Loadi)-PD0(Loadi));
|
|||
t4=2*wQD.*(QD(Loadi)-QD0(Loadi));
|
||||
deltF=[
|
||||
sparse(t1);
|
||||
sparse(t2);
|
||||
sparse(t3);
|
||||
sparse(t4);
|
||||
sparse(2*Busnum,1);
|
||||
|
|
|
|||
10
func_deltG.m
10
func_deltG.m
|
|
@ -37,10 +37,10 @@ dg5_dx=[sparse(1:Busnum,1:Busnum,ones(Busnum,1),Busnum,Busnum);
|
|||
sparse(Busnum,Busnum);
|
||||
];
|
||||
%%
|
||||
deltG=[dg1_dPg,dg2_dPg,dg3_dPg,dg4_dPg,dg5_dPg;
|
||||
dg1_dQr,dg2_dQr,dg3_dQr,dg4_dQr,dg5_dQr;
|
||||
dg1_dPD,dg2_dPD,dg3_dPD,dg4_dPD,dg5_dPD;
|
||||
dg1_dQD,dg2_dQD,dg3_dQD,dg4_dQD,dg5_dQD;
|
||||
dg1_dx,dg2_dx,dg3_dx,dg4_dx,dg5_dx;
|
||||
|
||||
deltG=[dg1_dPg,dg3_dPg,dg4_dPg,dg5_dPg;
|
||||
dg1_dPD,dg3_dPD,dg4_dPD,dg5_dPD;
|
||||
dg1_dQD,dg3_dQD,dg4_dQD,dg5_dQD;
|
||||
dg1_dx,dg3_dx,dg4_dx,dg5_dx;
|
||||
];
|
||||
end
|
||||
|
|
@ -1,10 +1,9 @@
|
|||
function deltH=func_deltH(Busnum,Volt,PVi,Y,PGi,UAngel,r,c,Angle,Loadi)
|
||||
|
||||
dH_dPg=sparse(1:size(PGi,1),PGi,ones(size(PGi,1),1),size(PGi,1),2*Busnum);
|
||||
dH_dQr=sparse(1:size(PVi,1),PVi+Busnum,ones(size(PVi,1),1),size(PVi,1),2*Busnum);
|
||||
dH_dPD=[sparse(1:size(Loadi,1),Loadi,-ones(size(Loadi,1),1),size(Loadi,1),Busnum) sparse(size(Loadi,1),Busnum)];
|
||||
dH_dQD=[sparse(size(Loadi,1),Busnum) sparse(1:size(Loadi,1),Loadi,-ones(size(Loadi,1),1),size(Loadi,1),Busnum)];
|
||||
dH_dx = jacobian_M(Busnum,Volt,Y,Angle,UAngel,r,c); %形成雅克比矩阵
|
||||
deltH=[dH_dPg;dH_dQr;dH_dPD;dH_dQD;dH_dx'];
|
||||
deltH=[dH_dPg;dH_dPD;dH_dQD;dH_dx'];
|
||||
|
||||
end
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
function deltdeltF=func_deltdeltF(PVi,wPG,wQG,wPD,wQD,ContrlCount)
|
||||
|
||||
%ContrlCount=size(PVi,1)+size(PGi,1)+size(wD,1)+Busnum*2; %P,Q,Volt theta这些控制变量数
|
||||
C=[wPG' wQG' wPD' wQD'];
|
||||
C=[wPG' wPD' wQD'];
|
||||
sizeC=size(C,2);
|
||||
diagC=sparse(1:sizeC,1:sizeC,C,sizeC,sizeC);
|
||||
deltdeltF=[
|
||||
|
|
|
|||
Loading…
Reference in New Issue