distributionnetwork-power2c.../Unbalance.m

27 lines
1.1 KiB
Mathematica
Raw Normal View History

function [dP, dQ, YdotSinVmf1, YdotCosVmf1, diag_Vmf1_YdotSin, diag_Vmf1_YdotCos]=Unbalance(Balance,busNum, ...
PQi,PG,QG,QGi,PD,QD,Vmf1,Vaf1,Y,Yangle,r,c,Vf2,If2,Vf0,If0,fsY1,Vf1)
%real(diag(Vmf1.*exp(1j*Vaf1))*(fsY1*(Vmf1.*exp(1j*Vaf1))));
% Y=abs(fsY1);
% [r,c,Yangle]=find(fsY1);
% Yangle=angle(Yangle);
% Vmf1=abs(Vf1);
% Vaf1=angle(Vf1);
t1=sparse(r,c,Vaf1(r)-Vaf1(c) -Yangle,busNum,busNum) ;
YdotSin=Y.* ( spfun(@sin,t1) );
YdotCos=Y.* ( spfun (@cos, t1 ) );
orderedPDPG=sparse(PQi,1,PD-PG,busNum,1); %<EFBFBD>ڵ<EFBFBD>ʰ<EFBFBD>˳<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
orderedQDQG=sparse(PQi,1,QD-QG,busNum,1); %<EFBFBD>ڵ<EFBFBD>ʰ<EFBFBD>˳<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
diag_Vmf1_YdotCos=diag(Vmf1)*YdotCos;
diag_Vmf1_YdotSin=diag(Vmf1)*YdotSin;
YdotCosVmf1=YdotCos*Vmf1;
YdotSinVmf1=YdotSin*Vmf1;
diag_Vmf1_YdotCosVmf1=diag_Vmf1_YdotCos*Vmf1;
diag_Vmf1_YdotSinVmf1=diag_Vmf1_YdotSin*Vmf1;
dP=diag_Vmf1_YdotCosVmf1+orderedPDPG+real(Vf2.*conj(If2)+Vf0.*conj(If0));
dQ=diag_Vmf1_YdotSinVmf1+orderedQDQG+imag(Vf2.*conj(If2)+Vf0.*conj(If0));
%orderedPDPG+real(Vf2.*conj(If2)+Vf0.*conj(If0))+real(diag(Vf1)*conj(fsY1*Vf1));
%dP=diag_Vmf1_YdotCosVmf1+orderedPDPG;
%dQ=diag_Vmf1_YdotSinVmf1+orderedQDQG;
dP(Balance)=0;
dQ(QGi)=0;
end