哈工大电力系统分析短路及潮流计算实验上机程序.docx

上传人:b****4 文档编号:5401479 上传时间:2023-05-08 格式:DOCX 页数:17 大小:55.99KB
下载 相关 举报
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第1页
第1页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第2页
第2页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第3页
第3页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第4页
第4页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第5页
第5页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第6页
第6页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第7页
第7页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第8页
第8页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第9页
第9页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第10页
第10页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第11页
第11页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第12页
第12页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第13页
第13页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第14页
第14页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第15页
第15页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第16页
第16页 / 共17页
哈工大电力系统分析短路及潮流计算实验上机程序.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

哈工大电力系统分析短路及潮流计算实验上机程序.docx

《哈工大电力系统分析短路及潮流计算实验上机程序.docx》由会员分享,可在线阅读,更多相关《哈工大电力系统分析短路及潮流计算实验上机程序.docx(17页珍藏版)》请在冰点文库上搜索。

哈工大电力系统分析短路及潮流计算实验上机程序.docx

哈工大电力系统分析短路及潮流计算实验上机程序

上机实验

实验一节点导纳阵生成和短路电流计算

实验二简单系统的牛顿法潮流计算

姓名:

班级:

141班

学号:

实验说明:

本程序的电路结构来自翁增银、

何仰赞主编的《电力系统分析》的例题

实验一节点导纳阵生成和短路电流计算

一、实验目的

根据所给的电力系统,编制短路电流计算程序,通过计算机进行调试,最后完成一个切实可行的电力系统计算应用程序。

通过自己设计电力系统计算程序加深对电力系统分析的理解,同时加强计算机实际应用能力。

二、实验内容

1、编写数据输入、形成导纳阵程序

2、电力系统短路计算实用公式的计算程序及编制和调试

三、实验过程

1、程序代码及说明

%清屏

clear

%读数据

fid=fopen('node5.txt','r');

A=fscanf(fid,'%d',2);

B=fscanf(fid,'%f',[5,A(2,1)]);

fclose(fid);

B=B';

%求节点导纳矩阵

Y=zeros(A(1,1));%形成5X5的0阵

%%%%%====================================================%导纳阵元素计算fora=1:

1:

A(2,1)

m=B(a,1);

n=B(a,2);

ifB(a,5)>0

Y(m,m)=Y(m,m)+1/(B(a,3)+j*B(a,4));

Y(n,n)=Y(n,n)+1/(B(a,3)+j*B(a,4))/(B(a,5)A2);

Y(m,n)=-1/(B(a,3)+j*B(a,4))/B(a,5);

Y(n,m)=Y(m,n);

elseifB(a,5)<0

Y(m,m)=Y(m,m)+1/(B(a,3)+j*B(a,4))-j*B(a,5);

Y(n,n)=Y(n,n)+1/(B(a,3)+j*B(a,4))-j*B(a,5);

Y(m,n)=-1/(B(a,3)+j*B(a,4));

Y(n,m)=Y(m,n);

end

end

%%%%%=======================================================

Y(2,2)=Y(2,2)+j*0.01;

Z=inv(Y);

If=1/Z(3,3);%接金属短路,Zf=0

fori=1:

1:

5

V(1,i)=1-Z(i,3)/Z(3,3);

end

%%%========================================================%计算各支路电流

fora=1:

1:

A(2,1)

m=B(a,1);

n=B(a,2);

ifB(a,5)>0I(m,n)=(B(a,5)*V(1,m)-V(1,n))/(B(a,3)+j*B(a,4));

elseifB(a,5)<0

I(m,n)=(V(1,m)-V(1,n))/(B(a,3)+j*B(a,4));

end

end

%%%=======================================================

fid=fopen('ans.txt','w');fprintf(fid,'Y_matrix\n');

%%%=======================================================%输出导纳阵

fori=1:

1:

5

forj=1:

1:

5

k=Y(i,j);

re=real(k);

fprintf(fid,'%8.4f',re);

im=imag(k);

ifim<0

fprintf(fid,'%8.4fj\t',im);

elseifim>=0

fprintf(fid,'+%8.4fj\t',im);

end

end

fprintf(fid,'\n');

end

%%%==========================================================

%%%==========================================================%输出阻抗阵,导纳阵求逆

fprintf(fid,'Z_matrix\n');

fori=1:

1:

5

forj=1:

1:

5k=Z(i,j);re=real(k);fprintf(fid,'%8.4f',re);im=imag(k);

ifim<0fprintf(fid,'%8.4fj\t',im);

elseifim>=0fprintf(fid,'+%8.4fj\t',im);

end

endfprintf(fid,'\n');

end

%%%=========================================================

%%%=========================================================%打印输出短路电流fprintf(fid,'If=');re=real(If);

fprintf(fid,'%8.4f',re);im=imag(If);

ifim<0fprintf(fid,'%8.4fj\t',im);

elseifim>=0fprintf(fid,'+%8.4fj\t',im);endfprintf(fid,'\nV\n');

%%%========================================================

%%%========================================================%打印输出节点电压

fori=1:

1:

5fprintf(fid,'Note%d:

V%d=',i,i);k=V(1,i);re=real(k);fprintf(fid,'%8.4f',re);im=imag(k);

ifim<0fprintf(fid,'%8.4fj\t',im);

elseifim>=0fprintf(fid,'+%8.4fj\t',im);endfprintf(fid,'\n');

end

%%%

%%%========================================================

%输出打印支路电流

fprintf(fid,'lbr\n');

fori=1:

1:

5

forj=1:

1:

4

k=l(i,j);

re=real(k);

im=imag(k);

if(re~=0||im~=0)

fprintf(fid,'Branch%d--%d:

l%d%d=',i,j,i,j);

fprintf(fid,'%8.4f,re);

ifim<0

fprintf(fid,'%8.4fj\n',im);

elseifim>=0

fprintf(fid,'+%8.4fj\n',im);

end

end

end

end

%%%==========================================================

fclose(fid);%关闭文件附:

'node5.txt'

1

-2

0.0

0.105

L05

2

3

0.024

0.065

0.016

3

q

0.018

0.05

0.013

4

2

0.03

0.08

0.02

5

_q

0-0

0.184

0.S0

2、程序输出结果节点导纳阵:

0.DDfla-9.5238j

100004

$.07D1j

Q.ODOtH-

nooooj

o.oooc*

o.aocoj

3.C00C4

O.OOOOj

0.ODCO

?

D7O3j

9.10B5-33.D90lj

-4.9O9D+

13.5288j

ymgs+

L0.958€j

a.tooc+

D.MOOj

0.OOCQ4-

0.1000]

-4.99B0+

13.53B8J

11.3729-31.

T.3F3舛

□.tcoc+

O.OOOftj

0.QOCLH-

n.DOriQj

7.109C+

in.EKRCj

-a.3?

3SF

177C54j

10.4835-34,528flj

u.tmc-F

S.6612J

n.Qdooj

1.00004

n.tnnijj

n.OQODf

nnrnnj

n.

n.conn-5

1.

节点阻抗阵:

l_jh.itrix

D.0040

-S.282Sj

CL0042

-8.BC70j

-0.J028

-0.033d

-s.asrej

-0.0036

-fl.1954:

d0042

-S.8070J

QL0044

-氏3473j

-0.CIQ29-S.2671J

-0,0030

-工西紂」

-0.0038

-9.鸽BL;

-0.C02B

-6.S25^j

-0,0023

-9.2«71j

0.0067-S,2436j

-o.wio

-p.362(]j

-0,0010

-9.6430j

-0.0034

-E,827Sj

-aoo3s

-9r!

«90j

-0.a010-0.252OJ

0.OOGD

2431j

0.00^]

-0.0036

-0,1064j

-a0033

-0.B651j

-aloio-o+ei30j

O.OJ61

-S.62S6j

0.0054

-9+S4呂巧

短路电流:

If=0.0001+0.1082j

节点电压:

四、实验总结

这是我的第一次上机实验,感觉稍微有点难,主要还是在工具软件一C语言或

者MATLAB的运用上,但是我相信,以后学习中,我会努力掌握的,这是我把理论应用于实际中的必要桥梁!

实验二简单系统的牛顿法潮流计算

一、实验目的

根据所给的电力系统,编制牛顿法潮流计算程序,通过计算机进行调试,最后完成一个

切实可行的电力系统计算应用程序。

通过自己设计电力系统计算程序加深对电力系统分析的理解,同时加强计算机实际应用能力。

二、实验内容

电力系统潮流计算的计算程序设计及编制和调试。

三、程序框图

四、实验过程

1、实验程序及说明clear

%打开输入数据

%读8个数

%得4X4的0阵

fid=fopen('node4.txt','r');

A=fscanf(fid,'%f',8);

B=fscanf(fid,'%f',[5,A(2,1)]);C=fscanf(fid,'%f',[3,(A(1,1)-1)]);

fclose(fid);

B=B';

C=C';

B(2,5)=1/B(2,5);

Y=zeros(A(1,1));

%%%===============================================================

%与前一实验同法求导纳阵fora=1:

1:

A(2,1)m=B(a,1);n=B(a,2);ifB(a,5)>0Y(m,m)=Y(m,m)+1/(B(a,3)+j*B(a,4));

Y(n,n)=Y(n,n)+1/(B(a,3)+j*B(a,4))/(B(a,5)A2);

Y(m,n)=-1/(B(a,3)+j*B(a,4))/B(a,5);Y(n,m)=Y(m,n);

elseifB(a,5)<0

Y(m,m)=Y(m,m)+1/(B(a,3)+j*B(a,4))-j*B(a,5);Y(n,n)=Y(n,n)+1/(B(a,3)+j*B(a,4))-j*B(a,5);Y(m,n)=-1/(B(a,3)+j*B(a,4));Y(n,m)=Y(m,n);

end

endend%%%=================================================================

%%%=================================================================

%节点电压赋初值

Q=zeros(2*A(1,1),1);

fori=1:

1:

(A(1,1)-1)

ifC(i,3)>0

Q(2*i-1,1)=C(i,3);

Q(2*i,1)=0;

else

Q(2*i-1,1)=1;

Q(2*i,1)=0;

end

Q(2*A(3,1)-1,1)=A(4,1);

Q(2*A(3,1),1)=0;

endfid=fopen('answer.txt','w');

fprintf(fid,'====================节点电压V=============================\n');fprintf(fid,'迭代计数\t\tV1=e1+jf1\t\t\t\tV2=e2+jf2\t\t\t\tV3=e3+jf3\t\t\n');

%%%=======================求W阵===================================W=zeros(2*(A(1,1)-1),50);

forx=1:

1:

50%设置迭代次数为50次

fori=1:

1:

A(7,1)

k=C(i,1);

p=0;

q=0;

m=0;

n=0;

forj=1:

1:

A(1,1)

g=real(Y(k,j));

b=imag(Y(k,j));

e=Q(2*j-1,1);

f=Q(2*j,1);

p=p+g*e-b*f;

q=q+g*f+b*e;

m=m+g*e-b*f;

n=n+g*f+b*e;

end

W(2*k,x)=C(k,2)-Q(2*k-1,1)*p-Q(2*k)*q;

W(2*k-1,x)=C(k,3)-Q(2*k)*m+Q(2*k-1,1)*n;

End%%%=========================PQ节点

%%%=========================PV节点

forl=1:

1:

A(8,1)

k=C(l+A(7,1),1);

p=0;

q=0;

m=0;

n=0;

forj=1:

1:

A(1,1)g=real(Y(k,j));b=imag(Y(k,j));e=Q(2*j-1,1);f=Q(2*j,1);p=p+g*e-b*f;q=q+g*f+b*e;

end

W(2*k,x)=C(k,2)-Q(2*k-1,1)*p-Q(2*k)*q;

W(2*k-1,x)=(C(k,3))A2-(Q(2*k-1,1)A2+Q(2*k)A2);

End

%%%================================================================

%%%===============================================================

%比较是否符合条件

Max=0;

fori=1:

1:

2*(A(1,1)-1)

Max=max(abs(W(i,x)),Max);

end

ifMax

break;

end

%%%=================================================================

%%%=================================================================

%求雅克比行列式

fori=1:

1:

A(1,1)-1%===========================================forj=1:

1:

A(1,1)-1

%===========================i~=j

ifi~=j

k=C(i,1);

g=real(Y(k,j));

b=imag(Y(k,j));

e=Q(2*k-1,1);f=Q(2*k,1);J(2*k-1,2*j-1)=-(g*e+b*f);J(2*k-1,2*j)=b*e-g*f;

ifi~=3

J(2*k,2*j)=-J(2*k-1,2*j-1);

J(2*k,2*j-1)=J(2*k-1,2*j);

else

J(2*k,2*j-1)=0;

J(2*k,2*j)=0;

end

end

%===============================i=j=================ifi==j

k=C(i,1);

p=0;

q=0;

m=0;

n=0;

g=real(Y(k,k));b=imag(Y(k,k));

J(2*k-1,2*j-1)=-g*Q(2*i-1,1)-b*Q(2*i,1);

J(2*k-1,2*j)=b*Q(2*i-1,1)-g*Q(2*i,1);

ifk~=3

J(2*k,2*j-1)=b*Q(2*i-1,1)-g*Q(2*i,1);J(2*k,2*j)=g*Q(2*i-1,1)+b*Q(2*i,1);

end

forr=1:

1:

A(1,1)g=real(Y(k,r));b=imag(Y(k,r));e=Q(2*r-1,1);f=Q(2*r,1);p=p+g*e-b*f;q=q+g*f+b*e;

endJ(2*k-1,2*j-1)=-p+J(2*k-1,2*j-1);J(2*k-1,2*j)=-q+J(2*k-1,2*j);ifi~=3

J(2*k,2*j-1)=q+J(2*k,2*j-1);J(2*k,2*j)=-p+J(2*k,2*j);

else

J(2*k,2*j-1)=-2*Q(2*i-1,1);J(2*k,2*j)=-2*Q(2*i,1);

end

end

end

end

%%%==============================================================%%%=================

%解修正方程得修正量Q0

fori=1:

2:

5

J0(i+1,:

)=J(i,:

);

J0(i,:

)=J(i+1,:

);

end

J=J0;

Q0=-inv(J)*W(:

x);

fori=1:

1:

6Q(i,1)=Q(i,1)+Q0(i,1);

End

fprintf(fid,'\t%d\t\t',x);

fori=1:

A(1,1)-1

k=C(i,1);

ifQ(2*k,1)>=0

fprintf(fid,'%8.4f+%8.4fj\t\t',Q(2*k-1,1),Q(2*k,1));

else

fprintf(fid,'%8.4f%8.4fj\t\t',Q(2*k-1,1),Q(2*k,1));

end

end

fprintf(fid,'\n');

end%%%=================================================================

%%%==================================平衡点功率======================

k=A(3,1);

v=0;

j=sqrt(-1);

forb=1:

A(1,1)

m=conj(Y(k,b));

p=Q(2*b-1,1)+Q(2*b,1)*j;

n=conj(p);

v=v+m*n;

endWp=(Q(2*k-1,1)+j*Q(2*k,1))*v;

end

%%%===========================节点电压V===========================%fid=fopen('answer.txt','w');

fprintf(fid,'节点电压V\n');

fori=1:

A(1,1)-1

k=C(i,1);

ifQ(2*k,1)>=0

fprintf(fid,'node%d:

%8.4f+%8.4fj\n',k,Q(2*k-1,1),Q(2*k,1));else

fprintf(fid,'node%d:

%8.4f%8.4fj\n',k,Q(2*k-1,1),Q(2*k,1));end

end

fprintf(fid,'平衡点功率P+jQ=%8.4f+%8.4fj',real(Wp),imag(Wp));

fclose(fid);

附注:

node4.txt%输入数据

4441.050.000015021

1

20,1

0.4

-0.01528

3

10

0.3

1.1

1

40.L2

0.5

-0.01S20

2

40.08

0.4

-CL01413

1

-0.3

-0.18

2

-0,55

—Q.13

3

CL5

L1

2、程序输出结果

迭代计数

V2=e2+j£2

V3=e3+jf3

1

0.093&-0.0088J

0.9763-0.1078j

1.1000+D.12575

2

-O.OOSfij

0.9590-0.1084j

1.0924+0.1289j

3

0.9846-0.0080j

0.95S7-0.1084j

1.09244-0.lSgiOj

节点电压〒

node!

:

0.9846-0.008^3node2:

0.9587-0.1084j

node3:

1.0924+0,12P0;i

平衡点功率P+jQ=0.3679+0.

五、实验总结

本次实验是我把应用理论知识的重要实践,经过实验,我有两点感想,首先,

作为一名工科学生,应该能熟练运用C语言和MATLAB等工具,其次,理论如果不

用于实践,就永远不知道理论是用来干什么的,学到头一直是满脑子的浆糊,所以,以我的切身经历建议,把这门实验放在跟课程平行的时间上进行,这样不仅有利于实

验开展,也有利于学生更加深刻地学习!

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2