From f1a1f9be853a314acf8d88062d4abfe931383781 Mon Sep 17 00:00:00 2001 From: "dugg@lab-desk" Date: Wed, 21 May 2014 15:47:21 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=A0=E6=8E=89=E6=89=80=E6=9C=89asv?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: dugg@lab-desk --- DrawGap.asv | 6 ----- FormAA.asv | 12 --------- FormAlphaP.asv | 7 ----- FormG.asv | 11 -------- FormH.asv | 31 ---------------------- FormYY.asv | 5 ---- Modification.asv | 18 ------------- admmatrix.asv | 31 ---------------------- func_deltG.asv | 54 -------------------------------------- modifyadmmatrix.asv | 18 ------------- openfile.asv | 64 --------------------------------------------- 11 files changed, 257 deletions(-) delete mode 100644 DrawGap.asv delete mode 100644 FormAA.asv delete mode 100644 FormAlphaP.asv delete mode 100644 FormG.asv delete mode 100644 FormH.asv delete mode 100644 FormYY.asv delete mode 100644 Modification.asv delete mode 100644 admmatrix.asv delete mode 100644 func_deltG.asv delete mode 100644 modifyadmmatrix.asv delete mode 100644 openfile.asv 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