diff --git a/DrawGap.asv b/DrawGap.asv deleted file mode 100644 index c9d0645..0000000 --- a/DrawGap.asv +++ /dev/null @@ -1,6 +0,0 @@ -function DrawGap(plotGap) -x=find(plotGap); -ts=size(x,2); - - -end \ No newline at end of file diff --git a/FormAA.asv b/FormAA.asv deleted file mode 100644 index 0d82338..0000000 --- a/FormAA.asv +++ /dev/null @@ -1,12 +0,0 @@ -function AA=FormAA(L_1Z,deltG,U_1W,Hcoma,deltH) -tOnes=eye(14); -tZeros=zeros(14); -AA=[ - tOnes,L_1Z,tZeros,tZeros,tZeros,zeros(14,10); - tZeros,tOnes,tZeros,tZeros,-deltG',zeros(14,10); - tZeros,tZeros,tOnes,U_1W,tZeros,zeros(14,10); - tZeros,tZeros,tZeros,tOnes,deltG,zeros(14,10); - tZeros,tZeros,tZeros,tZeros,Hcoma,deltH; - zeros(10,14),zeros(10,14),zeros(10,14),zeros(10,14),deltH',zeros(10,10); - ]; -end \ No newline at end of file diff --git a/FormAlphaP.asv b/FormAlphaP.asv deleted file mode 100644 index 3a8f5d9..0000000 --- a/FormAlphaP.asv +++ /dev/null @@ -1,7 +0,0 @@ -function AlphaP=FormAlphaP(Init_L,deltL,Init_U,deltU) -ti=deltL(delt) -t1=-Init_L./deltL'; -t2=-Init_U./deltU'; -t3=[t1,t2]; -t4=t3() -end \ No newline at end of file diff --git a/FormG.asv b/FormG.asv deleted file mode 100644 index fba473d..0000000 --- a/FormG.asv +++ /dev/null @@ -1,11 +0,0 @@ -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'; - - ]; -end \ No newline at end of file diff --git a/FormH.asv b/FormH.asv deleted file mode 100644 index 5983fcf..0000000 --- a/FormH.asv +++ /dev/null @@ -1,31 +0,0 @@ -function Mat_H=FormH(Busnum,GB,AngleIJMat,Volt,PG,PD,QG,QD,Y) -t1=real(GB).*cos(AngleIJMat)+imag(GB).*sin(AngleIJMat); -t2=Volt'*Volt; -t3=t1.*t2; -t4=sum(-t3,2);%P -t5=real(GB).*sin(AngleIJMat)-imag(GB).*cos(AngleIJMat); -t6=t2.*t5; -t7=sum(-t6,2);%Q -t8=PG-PD; -t9=QG-QD; -%Mat_H=([(PG-PD)',(QG-QD)'])'+([t4',t7'])'; -Mat_H(1:2:2*Busnum)=t8(1:Busnum)+t4(1:Busnum); -Mat_H(2:2:2*Busnum)=t9(1:Busnum)+t7(1:Busnum); -Mat_H=Mat_H'; -%% -QDcos=textread('300glys.txt'); -t=QD(PD==0 &&); -aa=QD; -QD(QD~=0)=PD(QD~=0)./tan(QDcos); -QD(PD==0)=t; -%% -%%%%一下是学姐给的公式 -AngleIJ=AngleIJMat-angle(GB); -%dP=PG-PD-diag(Volt)*Y*cos(AngleIJ)*Volt'; -dP=PG-PD-diag(Volt)*Y.*cos(AngleIJ)*Volt'; -dQ=QG-QD-diag(Volt)*Y.*sin(AngleIJ)*Volt'; -%Mat_H(1:2:2*Busnum)=dP(1:Busnum);暂时改一下 20111227 -%Mat_H(2:2:2*Busnum)=dQ(1:Busnum);暂时改一下 20111227 -Mat_H=[dP;dQ;]; - -end \ No newline at end of file diff --git a/FormYY.asv b/FormYY.asv deleted file mode 100644 index 85d2a13..0000000 --- a/FormYY.asv +++ /dev/null @@ -1,5 +0,0 @@ -function FormYY(Init_L,Lul.Lz,Init_U,Luu,Lw,Lz,LxComa) -t=[ - - -] -end \ No newline at end of file diff --git a/Modification.asv b/Modification.asv deleted file mode 100644 index ec3486f..0000000 --- a/Modification.asv +++ /dev/null @@ -1,18 +0,0 @@ -function [Init_Z,Init_L,Init_W,Init_U,Init_Y,deltZ,deltL,deltW,deltU,deltX,deltY,PG,QG,Volt,UAngel]=Modification(Init_Z,Init_L,Init_W,Init_U,Init_Y,deltZ,deltL,deltW,deltU,deltX,deltY,PG,QG,Volt,UAngel,PVi,ContrlCount,Balance,Busnum,PGi) -AlphaP=FormAlphaP(Init_L,deltL,Init_U,deltU); -fprintf('AlphaP %f\n',AlphaP); -AlphaD=FormAlphaD(Init_Z,deltZ,Init_W,deltW); -fprintf('AlphaD %f\n',AlphaD); - -Init_Z=Init_Z+AlphaD*deltZ'; -Init_L=Init_L+AlphaP*deltL'; -Init_W=Init_W+AlphaD*deltW'; -Init_U=Init_U+AlphaP*deltU'; -Init_Y=Init_Y+AlphaD*deltY'; -PG(PVi)=PG(PGi)+deltX(size(PGi,1)); -QG(PVi)=QG(PVi)+deltX(size(PGi,1)+1,1:(size(PVi,1)+size(PGi,1))); -t=deltX(size(PVi,1)+size(PGi,1)+1,ContrlCount)'; -t(2*Balance-1)=0; -Volt=Volt+AlphaP*t(2:2:2*Busnum); -UAngel=UAngel+AlphaP*t(1:2:2*Busnum); -end \ No newline at end of file diff --git a/admmatrix.asv b/admmatrix.asv deleted file mode 100644 index 1896345..0000000 --- a/admmatrix.asv +++ /dev/null @@ -1,31 +0,0 @@ -function [G,B,GB,Y,r,c,Angle] = admmatrix(Busnum,Linei,Linej,Liner,Linex,Lineb,Transfori... - ,Transforj,Transforr,Transforx,Transfork0,Branchi,Branchb) -%************************************************************************** -% 程序功能 : 子函数——形成节点导纳矩阵Y -% 编 者: -% 编制时间:2010.12 -%************************************************************************** -%% 支路导纳计算 -G = -sparse(Linei,Linej,Liner./(Liner.^2+Linex.^2),Busnum,Busnum) - sparse(Linej,Linei,Liner./(Liner.^2+Linex.^2),Busnum,Busnum); -G = G - sparse(1:Busnum,1:Busnum,sum(G,2)'); % 计算各线路支路电导 -B = sparse(Linei,Linej,Linex./(Liner.^2+Linex.^2),Busnum,Busnum)+sparse(Linej,Linei,Linex./(Liner.^2+Linex.^2),Busnum,Busnum); -B = B - sparse(1:Busnum,1:Busnum,sum(B,2)')+sparse(Linei,Linei,Lineb,Busnum,Busnum)+sparse(Linej,Linej,Lineb,Busnum,Busnum); -%% 变压器支路计算 -if Transfori>0 - mr = Transforr./(Transforr.^2+Transforx.^2); % 计算变压器支路电导 - mx = -Transforx./(Transforr.^2+Transforx.^2); % 计算变压器支路电纳 - G = G-sparse(Transfori,Transforj,mr./Transfork0,Busnum,Busnum)-sparse(Transforj,Transfori,mr./Transfork0,Busnum,Busnum)... - +sparse(Transfori,Transfori,mr./Transfork0./Transfork0,Busnum,Busnum)+sparse(Transforj,Transforj,mr,Busnum,Busnum); - B = B-sparse(Transfori,Transforj,mx./Transfork0,Busnum,Busnum)-sparse(Transforj,Transfori,mx./Transfork0,Busnum,Busnum)... - +sparse(Transfori,Transfori,mx./Transfork0./Transfork0,Busnum,Busnum)+sparse(Transforj,Transforj,mx,Busnum,Busnum); -end -%% 接地支路计算 -if Branchi>0 % 判断有无接地支路 - B = B+sparse(Branchi,Branchi,Branchb,Busnum,Busnum); -end -%% 化作极坐标形式 -GB = G+B.*1i; %将电导,电纳合并,写成复数形式 -Y = abs(GB); %求节点导纳幅值 -[r,c] = find(Y); -Angle = angle(GB(GB~=0)); %求节点导纳角度 -%Angle=angle(GB); \ No newline at end of file diff --git a/func_deltG.asv b/func_deltG.asv deleted file mode 100644 index 294cb69..0000000 --- a/func_deltG.asv +++ /dev/null @@ -1,54 +0,0 @@ -function deltG=func_deltG(Busnum,PVi,PGi,Loadi,PD,QD) -sizeLoadi=size(Loadi,1); -%dg3 PD-M*b-t-PD0 -dg3_dPD=sparse(1:size(Loadi,1),1:size(Loadi,1),ones(size(Loadi,1),1),size(Loadi,1),size(Loadi,1)); -%dg32 PD+M*B+t+PD0 -dg32_dPD=dg3_dPD; -dg4_dPD=sparse(size(Loadi,1),length(Loadi)); -dg42_dPD=dg4_dPD; -dg5_dPD=sparse(size(Loadi,1),Busnum); -dg6_dPD=dg5_dPD; -dg7_dPD=sparse(sizeLoadi,Busnum); -dgPD_dPD -%% -dg3_dQD=sparse(length(Loadi),length(Loadi)); -dg32_dQD=dg3_dQD; -dg4_dQD=sparse(1:size(Loadi,1),1:size(Loadi,1),ones(size(Loadi,1),1),size(Loadi,1),size(Loadi,1)); -dg42_dQD=dg4_dQD; -dg5_dQD=sparse(size(Loadi,1),Busnum); -dg6_dQD=dg5_dQD; -dg7_dQD=sparse(sizeLoadi,Busnum); -%% -dg3_dx=sparse(2*Busnum,sizeLoadi); -dg32_dx=dg3_dx; -dg4_dx=sparse(2*Busnum,length(Loadi)); -dg42_dx=dg4_dx; -dg5_dx=[sparse(1:Busnum,1:Busnum,ones(Busnum,1),Busnum,Busnum); - sparse(Busnum,Busnum); - ]; -dg6_dx=dg5_dx; -dg7_dx=sparse(2*Busnum,Busnum); -%% -dg3_dvbi=sparse(Busnum,sizeLoadi); -dg32_dvbi=dg3_dvbi; -dg4_dvbi=sparse(Busnum,length(Loadi)); -dg42_dvbi=dg4_dvbi; -dg5_dvbi=sparse(Busnum,Busnum); -dg6_dvbi=sparse(Busnum,Busnum); -dg7_dvbi=sparse(eye(Busnum,Busnum)); -%% -dg3_dPDbi=sparse(-eye(sizeLoadi)); -dg32_dPDbi=sparse(eye(sizeLoadi)); -dg4_dPDbi=sparse(length(Loadi),length(Loadi)); -dg42_dPDbi=dg4_dPDbi; -dg5_dPDbi=sparse(length(Loadi),Busnum); -dg6_dPDbi=sparse(length(Loadi),Busnum); -dg7_dPDbi=sparse(length(Loadi),Busnum); -%% -deltG=[dg3_dPD,dg32_dPD,dg4_dPD,dg42_dPD,dg5_dPD,dg6_dPD,dg7_dPD; - dg3_dQD,dg32_dQD,dg4_dQD,dg42_dQD,dg5_dQD,dg6_dQD,dg7_dQD; - dg3_dx,dg32_dx,dg4_dx,dg42_dx,dg5_dx,dg6_dx,dg7_dx; - dg3_dvbi,dg32_dvbi,dg4_dvbi,dg42_dvbi,dg5_dvbi,dg6_dvbi,dg7_dvbi; - dg3_dPDbi,dg32_dPDbi,dg4_dPDbi,dg42_dPDbi,dg5_dPDbi,dg6_dPDbi,dg7_dPDbi; -]; -end \ No newline at end of file diff --git a/modifyadmmatrix.asv b/modifyadmmatrix.asv deleted file mode 100644 index a917e8d..0000000 --- a/modifyadmmatrix.asv +++ /dev/null @@ -1,18 +0,0 @@ -function [new_G,new_B,GB,Y,r,c,Angle] = modifyadmmatrix(ii,jj,G,GG,B,BB) -%************************************************************************** -% 程序功能 : 子函数——形成节点导纳矩阵Y -% 编 者: -% 编制时间:2010.12 -%************************************************************************** -%% 支路导纳计算 -new_G=G; -new_G(ii,jj)=new_G(ii,jj)-G(ii,jj); -new_G(jj,ii)=new_G(jj,ii)-G(jj,ii); -new_G(ii,ii)=new_G(ii,ii)+G(ii,jj); -new_G(jj,jj)=new_G(jj,jj)+G(ii,jj); - -%% 化作极坐标形式 -GB = G+B.*1i; %将电导,电纳合并,写成复数形式 -Y = abs(GB); %求节点导纳幅值 -[r,c] = find(Y); -Angle = angle(GB(GB~=0)); %求节点导纳角度 \ No newline at end of file diff --git a/openfile.asv b/openfile.asv deleted file mode 100644 index 5095547..0000000 --- a/openfile.asv +++ /dev/null @@ -1,64 +0,0 @@ -function [Busnum,Balance,PQstandard,Precision,Linei,Linej,Liner,Linex,Lineb,kmax,Transfori ,... - Transforj,Transforr,Transforx,Transfork0,Branchi,Branchb,Pointpoweri,PG,QG,PD,QD,PVi,PVu,Gen,GenU,GenL,GenC,CenterA,PGi,PVQU,PVQL] = openfile(FileName) -%************************************************************************** -% 程序简介 : 子函数——读取潮流计算所需数据 -% 编 者: -% 编制时间 :2010.12 -%************************************************************************** -data = dlmread(FileName); % 一次读入全部数据 -Busnum= data(1,1); % 节点数 -PQstandard = data(1,3); % 基准容量 -kmax = data(1,4); %最大迭代次数 -Precision = data(2,1); % 精度 -Balance = data(3,2); % 生成1到节点号的列向量 -CenterA=data(1,5); %中心参数 -LineNum=data(1,2); %支路数 -%% 各参数矩阵分块 -zeroRow = find(data(:,1)==0); %查找第一列元素为零的行号 -line = data(zeroRow(1)+1:zeroRow(2)-1,:); % 形成线路参数矩阵 -ground = data(zeroRow(2)+1:zeroRow(3)-1,:); % 形成对地支路参数矩阵 -tran = data(zeroRow(3)+1:zeroRow(4)-1,:); % 形成变压器参数矩阵 -buspq = data(zeroRow(4)+1:zeroRow(5)-1,:); % 形成节点功率参数矩阵 -PV = data(zeroRow(5)+1:zeroRow(6)-1,:); % 形成pv节点功率参数矩阵 -Gen=data(zeroRow(6)+1:zeroRow(7)-1,:); -%% 线路参数矩阵分块 -Linei = line(:,2); % 节点i -Linej= line(:,3); % 节点j -Liner = line(:,4); % 线路电阻 -Linex = line(:,5); % 线路电抗 -Lineb = line(:,6); % b/2 -%% 对地支路参数矩阵 -Branchi = ground(:,1); % 对地支路节点号 -Branchb = ground(:,2); % 对地支路的导纳 -%% 变压器参数矩阵 -Transfori = tran(:,2); % 节点i -Transforj= tran(:,3); % 节点j -Transforr = tran(:,4); % 变压器电阻 -Transforx= tran(:,5); % 变压器电抗 -Transfork0 = tran(:,6); % 变压器变比 -%% 节点功率参数矩阵 -Pointpoweri = buspq(:,1); -PG=buspq(:,2); % 发电机有功 -QG=buspq(:,3); % 发电机无功 -PD=buspq(:,4); % 负荷有功 -QD=buspq(:,5); % 负荷无功 -%% pv节点功率参数矩阵 -PVi = PV(:,1); % PV节点的节点号 -PVu = PV(:,2); % PV节点电压 -PVQL=PV(:,3);%PV节点无功下限 -PVQU=PV(:,4); %PV节点无功上限 -%% 发电机参数 -%GenU=Gen(:,[1 5 6]); -%GenL=Gen(:,[1 7 8]); -GenC=Gen(:,[1 2:4]); -t=GenC(:,2); -GenC(:,2)=GenC(:,4); -GenC(:,4)=t; -t=Gen(:,[1 5]); -%GenL=[t,PVQL(PVi)]; -GenL=t;%有功下界 -t=Gen(:,[1 6]); -%GenU=[t,PVQU(PVi)]; -GenU=t;%有功上届 -PGi=Gen(:,1);%发电机节点号 -end \ No newline at end of file