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) 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); %节点功率按顺序排列 orderedQDQG=sparse(PQi,1,QD-QG,busNum,1); %节点功率按顺序排列 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)); dP(Balance)=0; dQ(QGi)=0; end