parent
628c5b7330
commit
c3ba5e15c6
|
|
@ -1,5 +1,5 @@
|
||||||
function [deltX,deltY]=AssignXX(XX,ContrlCount,Loadi,Balance,Busnum)
|
function [deltX,deltY]=AssignXX(XX,ContrlCount,Loadi,Balance,Busnum)
|
||||||
deltX=XX(1:Busnum*3*2);
|
deltX=XX(length(Loadi)*3+1:length(Loadi)*3+Busnum*3*2);
|
||||||
t=0;
|
t=0;
|
||||||
deltX(t+(Balance-1)*3+1)=0;
|
deltX(t+(Balance-1)*3+1)=0;
|
||||||
deltX(t+(Balance-1)*3+2)=0;
|
deltX(t+(Balance-1)*3+2)=0;
|
||||||
|
|
@ -8,6 +8,5 @@ t=Busnum*3;
|
||||||
deltX(t+(Balance-1)*3+1)=0;
|
deltX(t+(Balance-1)*3+1)=0;
|
||||||
deltX(t+(Balance-1)*3+2)=0;
|
deltX(t+(Balance-1)*3+2)=0;
|
||||||
deltX(t+(Balance-1)*3+3)=0;
|
deltX(t+(Balance-1)*3+3)=0;
|
||||||
t=Busnum*3*2;
|
deltY=XX(length(Loadi)*3+Busnum*3*2+1:end);
|
||||||
deltY=XX(t+1:end);
|
|
||||||
end
|
end
|
||||||
6
OPF.m
6
OPF.m
|
|
@ -3,10 +3,10 @@ function [JMeasurement,AME_Volt,AME_VAngle,AME_PD,AME_QD,AME_mVolt,AME_mPD,AME_m
|
||||||
tic
|
tic
|
||||||
clc
|
clc
|
||||||
clear
|
clear
|
||||||
lineZ=readLineZ('feeder13\lineParameter.txt');
|
lineZ=readLineZ('./../DistributionNetwork-Power2Current/modified-feeder69/lineParameter.txt');
|
||||||
[ fsY0, fsY1, fsY2,phaseASpotLoadP,phaseBSpotLoadP,phaseCSpotLoadP ...
|
[ fsY0, fsY1, fsY2,phaseASpotLoadP,phaseBSpotLoadP,phaseCSpotLoadP ...
|
||||||
phaseASpotLoadQ,phaseBSpotLoadQ,phaseCSpotLoadQ,setIJ,nodeNum,Balance,phaseABCY ...
|
phaseASpotLoadQ,phaseBSpotLoadQ,phaseCSpotLoadQ,setIJ,nodeNum,Balance,phaseABCY ...
|
||||||
cap]=dataRead(lineZ,'feeder13\data1.txt');
|
cap]=dataRead(lineZ,'./../DistributionNetwork-Power2Current/modified-feeder69/data.txt');
|
||||||
% phaseASpotLoadP(phaseASpotLoadP==0)=0.002;
|
% phaseASpotLoadP(phaseASpotLoadP==0)=0.002;
|
||||||
% phaseBSpotLoadP(phaseBSpotLoadP==0)=0.002;
|
% phaseBSpotLoadP(phaseBSpotLoadP==0)=0.002;
|
||||||
% phaseCSpotLoadP(phaseCSpotLoadP==0)=0.002;
|
% phaseCSpotLoadP(phaseCSpotLoadP==0)=0.002;
|
||||||
|
|
@ -275,7 +275,7 @@ wVolt=1./(abs(mVoltABCV*sigma/3).^2);
|
||||||
wPD=1./(abs(mPD3P*sigma).^2);
|
wPD=1./(abs(mPD3P*sigma).^2);
|
||||||
wQD=1./(abs(mQD3P*sigma).^2);
|
wQD=1./(abs(mQD3P*sigma).^2);
|
||||||
wVolt(setdiff(1:length(wVolt),Loadi))=0;%只有负荷处才有电压量测。
|
wVolt(setdiff(1:length(wVolt),Loadi))=0;%只有负荷处才有电压量测。
|
||||||
wVolt( noPQi3P)=0;
|
% wVolt( noPQi3P)=0;
|
||||||
wPD(ismember( Loadi,noPQi3P))=1./(abs(mPD3P(ismember( Loadi,noPQi3P))*0.15).^2);
|
wPD(ismember( Loadi,noPQi3P))=1./(abs(mPD3P(ismember( Loadi,noPQi3P))*0.15).^2);
|
||||||
wQD(ismember( Loadi,noPQi3P))=1./(abs(mQD3P(ismember( Loadi,noPQi3P))*0.15).^2);
|
wQD(ismember( Loadi,noPQi3P))=1./(abs(mQD3P(ismember( Loadi,noPQi3P))*0.15).^2);
|
||||||
%%
|
%%
|
||||||
|
|
|
||||||
30
SolveIt.m
30
SolveIt.m
|
|
@ -3,20 +3,30 @@ function XX=SolveIt(ContrlCount,Balance,Busnum,Loadi,deltF,PD0,PD,QD0,QD,mVolt,V
|
||||||
dP_x=-dH_dx(Loadi,:);
|
dP_x=-dH_dx(Loadi,:);
|
||||||
dQ_x=-dH_dx(Loadi+Busnum*3,:);
|
dQ_x=-dH_dx(Loadi+Busnum*3,:);
|
||||||
dV_x=[sparse(1:Busnum*3,1:Busnum*3,1,Busnum*3,Busnum*3),sparse(Busnum*3,Busnum*3)];
|
dV_x=[sparse(1:Busnum*3,1:Busnum*3,1,Busnum*3,Busnum*3),sparse(Busnum*3,Busnum*3)];
|
||||||
|
dV_x=dV_x(Loadi,:);
|
||||||
H=[dP_x;dQ_x;dV_x];
|
H=[dP_x;dQ_x;dV_x];
|
||||||
c=dH_dx(setdiff(1:Busnum*3,Loadi),:);
|
c=dH_dx(setdiff(1:Busnum*3,Loadi),:);
|
||||||
c=[c;dH_dx(setdiff(1:Busnum*3,Loadi)+Busnum*3,:)];
|
c=[c;dH_dx(setdiff(1:Busnum*3,Loadi)+Busnum*3,:)];
|
||||||
|
wVolt=wVolt(Loadi);
|
||||||
aa=[H'*diag([wPD;wQD;wVolt])*H c'
|
aa=[H'*diag([wPD;wQD;wVolt])*H c'
|
||||||
c zeros(size(c,1),size(c',2))];
|
c zeros(size(c,1),size(c',2))];
|
||||||
|
% wVolt(find(wVolt==0))=Inf;
|
||||||
|
% diag([wPD.^(-1);wQD.^(-1);wVolt.^(-1)])
|
||||||
|
aa=[
|
||||||
|
diag([wPD.^(-1);wQD.^(-1);wVolt.^(-1)]) H zeros(size(H,1),size(c',2))
|
||||||
|
H' zeros(size(H',1),size(H,2)) c'
|
||||||
|
zeros(size(c,1),size(H',2)) c zeros(size(c,1),size(c',2))
|
||||||
|
];
|
||||||
% aa=H'*eye(length(H))*H;
|
% aa=H'*eye(length(H))*H;
|
||||||
PD=-Mat_H(Loadi,:);
|
PD=-Mat_H(Loadi,:);
|
||||||
QD=-Mat_H(Loadi+Busnum*3,:);
|
QD=-Mat_H(Loadi+Busnum*3,:);
|
||||||
deltZ=[(PD0-PD);
|
deltZ=[(PD0-PD);
|
||||||
(QD0-QD);
|
(QD0-QD);
|
||||||
(mVolt-Volt);
|
(mVolt(Loadi)-Volt(Loadi));
|
||||||
];
|
];
|
||||||
yy=[
|
yy=[
|
||||||
H'*diag([wPD;wQD;wVolt])*deltZ;
|
deltZ;
|
||||||
|
zeros(Busnum*6,1);
|
||||||
-Mat_H(setdiff(1:Busnum*3,Loadi));
|
-Mat_H(setdiff(1:Busnum*3,Loadi));
|
||||||
-Mat_H(setdiff(1:Busnum*3,Loadi)+Busnum*3);
|
-Mat_H(setdiff(1:Busnum*3,Loadi)+Busnum*3);
|
||||||
];
|
];
|
||||||
|
|
@ -24,32 +34,32 @@ yy=[
|
||||||
% H'*eye(length(H))*deltZ;
|
% H'*eye(length(H))*deltZ;
|
||||||
% ];
|
% ];
|
||||||
%% ƽºâ½Úµãµçѹ²»±ä
|
%% ƽºâ½Úµãµçѹ²»±ä
|
||||||
t=0;
|
t=size(H,1);
|
||||||
aa(t+(Balance-1)*3+1,:)=0;
|
aa(t+(Balance-1)*3+1,:)=0;
|
||||||
aa(t+(Balance-1)*3+2,:)=0;
|
aa(t+(Balance-1)*3+2,:)=0;
|
||||||
aa(t+(Balance-1)*3+3,:)=0;
|
aa(t+(Balance-1)*3+3,:)=0;
|
||||||
aa(:,t+(Balance-1)*3+1)=0;
|
aa(:,t+(Balance-1)*3+1)=0;
|
||||||
aa(:,t+(Balance-1)*3+2)=0;
|
aa(:,t+(Balance-1)*3+2)=0;
|
||||||
aa(:,t+(Balance-1)*3+3)=0;
|
aa(:,t+(Balance-1)*3+3)=0;
|
||||||
aa=aa+sparse(t+(Balance-1)*3+1,t+(Balance-1)*3+1,ones(length(Balance),1),size(c,1)+2*Busnum*3,size(c,1)+2*Busnum*3);
|
aa=aa+sparse(t+(Balance-1)*3+1,t+(Balance-1)*3+1,ones(length(Balance),1),size(H,1)+size(c,1)+2*Busnum*3,size(H,1)+size(c,1)+2*Busnum*3);
|
||||||
aa=aa+sparse(t+(Balance-1)*3+2,t+(Balance-1)*3+2,ones(length(Balance),1),size(c,1)+2*Busnum*3,size(c,1)+2*Busnum*3);
|
aa=aa+sparse(t+(Balance-1)*3+2,t+(Balance-1)*3+2,ones(length(Balance),1),size(H,1)+size(c,1)+2*Busnum*3,size(H,1)+size(c,1)+2*Busnum*3);
|
||||||
aa=aa+sparse(t+(Balance-1)*3+3,t+(Balance-1)*3+3,ones(length(Balance),1),size(c,1)+2*Busnum*3,size(c,1)+2*Busnum*3);
|
aa=aa+sparse(t+(Balance-1)*3+3,t+(Balance-1)*3+3,ones(length(Balance),1),size(H,1)+size(c,1)+2*Busnum*3,size(H,1)+size(c,1)+2*Busnum*3);
|
||||||
|
|
||||||
% aa=aa+sparse(t+(Balance-1)*3+1,t+(Balance-1)*3+1,ones(length(Balance),1),2*Busnum*3,2*Busnum*3);
|
% aa=aa+sparse(t+(Balance-1)*3+1,t+(Balance-1)*3+1,ones(length(Balance),1),2*Busnum*3,2*Busnum*3);
|
||||||
% aa=aa+sparse(t+(Balance-1)*3+2,t+(Balance-1)*3+2,ones(length(Balance),1),2*Busnum*3,2*Busnum*3);
|
% aa=aa+sparse(t+(Balance-1)*3+2,t+(Balance-1)*3+2,ones(length(Balance),1),2*Busnum*3,2*Busnum*3);
|
||||||
% aa=aa+sparse(t+(Balance-1)*3+3,t+(Balance-1)*3+3,ones(length(Balance),1),2*Busnum*3,2*Busnum*3);
|
% aa=aa+sparse(t+(Balance-1)*3+3,t+(Balance-1)*3+3,ones(length(Balance),1),2*Busnum*3,2*Busnum*3);
|
||||||
|
|
||||||
%%
|
%%
|
||||||
t=Busnum*3;
|
t=size(H,1)+Busnum*3;
|
||||||
aa(t+(Balance-1)*3+1,:)=0;
|
aa(t+(Balance-1)*3+1,:)=0;
|
||||||
aa(t+(Balance-1)*3+2,:)=0;
|
aa(t+(Balance-1)*3+2,:)=0;
|
||||||
aa(t+(Balance-1)*3+3,:)=0;
|
aa(t+(Balance-1)*3+3,:)=0;
|
||||||
aa(:,t+(Balance-1)*3+1)=0;
|
aa(:,t+(Balance-1)*3+1)=0;
|
||||||
aa(:,t+(Balance-1)*3+2)=0;
|
aa(:,t+(Balance-1)*3+2)=0;
|
||||||
aa(:,t+(Balance-1)*3+3)=0;
|
aa(:,t+(Balance-1)*3+3)=0;
|
||||||
aa=aa+sparse(t+(Balance-1)*3+1,t+(Balance-1)*3+1,ones(length(Balance),1),size(c,1)+2*Busnum*3,size(c,1)+2*Busnum*3);
|
aa=aa+sparse(t+(Balance-1)*3+1,t+(Balance-1)*3+1,ones(length(Balance),1),size(H,1)+size(c,1)+2*Busnum*3,size(H,1)+size(c,1)+2*Busnum*3);
|
||||||
aa=aa+sparse(t+(Balance-1)*3+2,t+(Balance-1)*3+2,ones(length(Balance),1),size(c,1)+2*Busnum*3,size(c,1)+2*Busnum*3);
|
aa=aa+sparse(t+(Balance-1)*3+2,t+(Balance-1)*3+2,ones(length(Balance),1),size(H,1)+size(c,1)+2*Busnum*3,size(H,1)+size(c,1)+2*Busnum*3);
|
||||||
aa=aa+sparse(t+(Balance-1)*3+3,t+(Balance-1)*3+3,ones(length(Balance),1),size(c,1)+2*Busnum*3,size(c,1)+2*Busnum*3);
|
aa=aa+sparse(t+(Balance-1)*3+3,t+(Balance-1)*3+3,ones(length(Balance),1),size(H,1)+size(c,1)+2*Busnum*3,size(H,1)+size(c,1)+2*Busnum*3);
|
||||||
% aa=aa+sparse(t+(Balance-1)*3+1,t+(Balance-1)*3+1,ones(length(Balance),1),2*Busnum*3,2*Busnum*3);
|
% aa=aa+sparse(t+(Balance-1)*3+1,t+(Balance-1)*3+1,ones(length(Balance),1),2*Busnum*3,2*Busnum*3);
|
||||||
% aa=aa+sparse(t+(Balance-1)*3+2,t+(Balance-1)*3+2,ones(length(Balance),1),2*Busnum*3,2*Busnum*3);
|
% aa=aa+sparse(t+(Balance-1)*3+2,t+(Balance-1)*3+2,ones(length(Balance),1),2*Busnum*3,2*Busnum*3);
|
||||||
% aa=aa+sparse(t+(Balance-1)*3+3,t+(Balance-1)*3+3,ones(length(Balance),1),2*Busnum*3,2*Busnum*3);
|
% aa=aa+sparse(t+(Balance-1)*3+3,t+(Balance-1)*3+3,ones(length(Balance),1),2*Busnum*3,2*Busnum*3);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue