function [const,Lz,Lw,L1,U1]=Constant(nodeNum,opfGoal,lineNum,transNum,transI,transJ,transG,transB,... T,transKmin,transKmax,lineI,lineJ,balNode,mu,G,B,GIJ,BIJ,e,f,Pmin,Pmax,a,b,PG,QR,pvQmin,pvQmax,... pgNum,pgvNum,xNum,capNum,capK,capKmin,capKmax,pgNode,pvNode,dhx,dgx,L1,U1,LZ,UW,l,u,y,r,capBi,Vmin,Vmax,hx) %程序功能:预计算过程,形成扰动KKT方程不平衡量矩阵 %编写时间:2010年11月 %% 形成目标函数的一阶偏导矩阵▽f(.) if(opfGoal==2) dPG=ones(pgNum,1); dfx=sparse(transNum+1:transNum+pgNum,ones(pgNum,1),dPG,xNum,1); else if(opfGoal==1) dPG=2*a(pgNode).*PG(pgNode)+b(pgNode); dfx=sparse(transNum+1:transNum+pgNum,ones(pgNum,1),dPG,xNum,1); else if(opfGoal==3) dfT=-1*transG.*((f(transI)-f(transJ)).^2+(e(transI)-e(transJ)).^2); dfPQ=zeros(pgvNum,1); dfcapK=zeros(capNum,1); EE=e*ones(1,nodeNum); FF=f*ones(1,nodeNum); dfe=2*sum(G.*(EE-EE')); dff=2*sum(G.*(FF-FF')); dfx=[dfT;dfPQ;dfcapK;dfe';dff']; else if(opfGoal==4) dfT=1*transB.*((f(transI)-f(transJ)).^2+(e(transI)-e(transJ)).^2); dfPQ=zeros(pgvNum,1); dfcapK=zeros(capNum,1); EE=e*ones(1,nodeNum); FF=f*ones(1,nodeNum); dfe=-2*sum(B.*(EE-EE')); dff=-2*sum(B.*(FF-FF')); dfx=[dfT;dfPQ;dfcapK;dfe';dff']; end end end end %% 不等式约束项 gxv=[PG(pgNode);QR(pvNode);capK;e.^2+f.^2]; %约束条件当前值 gxvx=[Pmin(pgNode);pvQmin(pvNode);capKmin.*capBi;Vmin.*Vmin]; %约束下限 gxvs=[Pmax(pgNode);pvQmax(pvNode);capKmax.*capBi;Vmax.*Vmax]; %约束上限 gxl=(e(lineI).*e(lineI)+f(lineI).*f(lineI)-e(lineI).*e(lineJ)-f(lineI).*f(lineJ)).*GIJ+(e(lineI).*f(lineJ)-e(lineJ).*f(lineI)).*BIJ;%线路功率当前值 gxlx=-ones(lineNum,1)*1000; %线路约束下限 gxls=ones(lineNum,1)*1000; %线路约束上限 gxT=T; gxTx=transKmin; %变比下限 gxTs=transKmax; %变比上限 gx=[gxT;gxv;gxl]; %组合所有约束条件 gxx=[gxTx;gxvx;gxlx]; gsx=[gxTs;gxvs;gxls]; Lz=gx-l-gxx; Lw=gx+u-gsx; %% 形成修正方程常数项向量 muUL=mu*(U1-L1); BB1=UW*Lw-LZ*Lz-muUL*ones(r,1); BB=dhx*y-dfx+dgx*BB1; %修正方程常数项ψ(.,μ) balN=transNum+pgvNum+capNum+nodeNum+balNode; balN1=transNum+pgvNum+capNum+balNode; BB(balN,1)=0; %保持平衡节点电压虚部不变,始终为0,则常数项平衡节点处置0 BB(balN1,1)=0; %保持平衡节点电压实部不变 const=[BB;hx]; %修正方程常数项向量