电力系统计算机辅助分析试验报告Word文件下载.doc
《电力系统计算机辅助分析试验报告Word文件下载.doc》由会员分享,可在线阅读,更多相关《电力系统计算机辅助分析试验报告Word文件下载.doc(23页珍藏版)》请在冰点文库上搜索。
注意画图时使用标题,横纵坐标及网格线等命令。
3.
%%%%%%%%%%%%%%%%%
clear,clc,close
mUsm=200;
%的幅值
aUsm=(pi/180)*(+90);
%的相角
Usm=mUsm*exp(j*aUsm);
%用于计算
w=100*pi;
r1=22;
l=0.05;
r2=33;
c=0.0001;
z1=r1+j*w*l;
z2=r2/(j*w*c*r2+1);
Ucm=Usm*z2/(z1+z2);
mUcm=abs(Ucm)%求幅值
aUcm=angle(Ucm)%求相角
T=4*2*pi/w;
%用w表示,T表示四个周波
N=100;
%画图的点数
dt=T/N;
%两点间隔,即采样频率
dt:
T;
fork=1:
101%画波形
us(k)=mUsm*cos(w*t(k)+aUsm);
uc(k)=mUcm*cos(w*t(k)+aUcm);
end
plot(t,us,t,uc)%注意区分两条曲线的线型和颜色
gridon
title('
'
)
xlabel('
'
fontsize'
16)%fontsize’,16表示横坐标的字体大小为16
ylabel('
legend('
us'
uc'
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
一、讨论
1、MATLAB软件是什么?
有什么特点?
答:
Matlab是一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。
用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程(M文件)后再一起运行。
特点:
1.编程效率高,2.用户使用方便,3.扩充能力强,交互性好,4.移植性和开放性很好,5.语句简单,内涵丰富,6.高效方便的矩阵和数组运算,7.方便的绘图功能。
3.如何获得命令或函数的帮助文档?
答:
MATLAB的各个函数,不管是内建函数、M文件函数、还是MEX文件函数等,一般它们都有M文件的使用帮助和函数功能说明,各个工具箱通常情况下也具有一个与工具箱名相间的M文件用来说明工具箱的构成内容等,在MATLAB命令窗口中,可以通过指令来获取这些纯文本的帮助信息。
通常能够起到帮助作用,获取帮助信息的指令有help、lookfor、which、doc、get、type等。
实验二 电力系统计算中常用的数值算法及电力网络的数学模型
1、用因子表法求解电路方程中的节点电压;
A=[1/10+1/15-1/10-1/15-1
-1/101/10+1/50+1/30-1/500
-1/15-1/501/15+1/50+1/300
1000];
B=[00010];
[n,m]=size(A);
fori=1:
n
A(i,i)=1/A(i,i);
forj=i+1:
A(i,j)=A(i,j)*A(i,i);
end
fork=i+1:
forj=i+1:
A(k,j)=A(k,j)-A(k,i)*A(i,j);
end
disp('
矩阵A的因子表为:
);
disp(A)
B(i)=B(i)*A(i,i);
B(j)=B(j)-A(j,i)*B(i);
fori=n-1:
-1:
1
2
B(j-1)=B(j-1)-A(j-1,i+1)*B(i+1);
在因子表的基础上求解线性方程组的解为:
x='
disp(B)
2、将图2.1中的电压源分别改为2V、4V、6V、8V时,用因子表进行求解,体会该算法带来的益处;
①电压源改为2V
②电压源改为4V
③电压源改为6V
④电压源改为8V
3、上机验证课本例17.6-17.7的计算结果;
①例17.6
②例17.7
4、设计系统变更时修改导纳矩阵的函数(参考课本P.323),并调试通过,给出导纳矩阵修正函数的调用规则及其主要的实现代码。
%n=input('
请输入节点数:
n='
%nl=input('
请输入支路数:
nl='
%B=input('
请输入由支路参数形成的矩阵:
B='
%X=input('
请输入由节点号及其对地阻抗形成的矩阵:
X='
n=4;
nl=4;
B=[120.08+0.4i010;
230.1+0.4i010;
340.3i010;
130.12+0.5i010];
X=[10;
20;
30;
40]
Y=zeros(n);
ifX(i,2)~=0;
p=X(i,1);
Y(p,p)=1./X(i,2);
end
nl
ifB(i,6)==0
p=B(i,1);
q=B(i,2);
else
p=B(i,2);
q=B(i,1);
Y(p,q)=Y(p,q)-1./(B(i,3)*B(i,5));
Y(q,p)=Y(p,q);
Y(q,q)=Y(q,q)+1./(B(i,3)*B(i,5)^2)+B(i,4)./2;
Y(p,p)=Y(p,p)+1./B(i,3)+B(i,4)./2;
disp('
导纳矩阵Y=:
disp(Y)
B1=input('
请输入追加支路参数形成的矩阵:
B1='
%B1=[340.3i01.20];
%B1=[120.3i010];
%B1=[140.3i010];
%B1=[350.3i010];
z=B1(3);
%ifB1(6)==0
%p=B1
(1);
q=B1
(2);
%else
%p=B1
(2);
q=B1
(1);
%end
p=B1
(1);
ifB1(6)==1
B1(5)=1/(B1(5));
ifB1
(2)>
Y(p,p)=Y(p,p)+1/z;
Y(p,q)=-1/z;
Y(q,p)=-1/z;
Y(q,q)=(1/z)+B1(4);
ifY(p,q)==0
Y(p,p)=Y(p,p)+1/z;
Y(q,q)=Y(q,q)+1/z;
Y(p,q)=-1/z;
ifY(p,q)~=0&
&
B1
(2)<
=n
fori=1:
ifB(i,1)==B1
(1)&
B(i,2)==B1
(2)
ifB(i,5)==B1(5)
Y(p,p)=Y(p,p)+1/z;
Y(p,q)=Y(p,q)-1/z;
Y(q,p)=Y(q,p)-1/z;
else
K1=B1(5);
K=B(i,5);
Y(p,p)=Y(p,p)+(K1^2-K^2)*(1/z);
Y(q,q)=Y(q,q);
Y(p,q)=Y(p,q)-(K1-K)*(1/z);
Y(q,p)=Y(q,p)-(K1-K)*(1/z);
end
end
ifB1
(2)<
n=n;
Y1=zeros(n);
forj=1:
n
Y1(i,j)=Y(i,j);
end
ifB1
(2)>
n=n+1;
新的导纳矩阵Y1='
disp(Y1);
仿真结果:
X=
10
20
30
40
0.9346-4.2949i-0.4808+2.4038i-0.4539+1.8911i0
-0.4808+2.4038i1.0690-4.7568i-0.5882+2.3529i0
-0.4539+1.8911i-0.5882+2.3529i1.0421-7.5773i0+3.3333i
000+3.3333i0-3.3333i
B1=[340.3i01.20];
新的导纳矩阵Y1=
-0.4539+1.8911i-0.5882+2.3529i1.0421-9.0440i0+4.0000i
000+4.0000i0-3.3333i
思考题:
1、高斯消去法与因子表法有何异同?
因子表法是以高斯消去法为基础求解线性方程组的一种方法,当线性方程组的系数矩阵不变,而常数项发生变化时,采用因子表法可避免系数矩阵的重复运算。
因子表法首先要建立因子表,然后用因子表对常数项进行消去、回代,从而求出线性方程组的解。
2、节点导纳阵与节点阻抗阵之间有何关系,二者之间如何转换?
电力系统的网络方程式一般都用节点方程式表示,节点方程有导纳型和阻抗型两种。
节点导纳矩阵具有对称、稀疏、可以根据网络接线图直接写出、易于修改的特点;
节点阻抗矩阵是节点导纳矩阵的逆阵,它具有对称、满阵的特点,它不能由网络接线图直接写出,通常由支路追加法形成。
实验三 短路电流计算
合并课本第18章例程。
即要求实现计算指定节点各种故障条件下,各支路的故障电流分布情况。
其中对于实用算法,可只提供计算电抗。
尽量使用先前实验中已封装好的函数。
2.用新程序验证第18章的各例题。
(注意短路电流曲线绘制时,至少包含5~7个点)
W=3;
switchW
case1
clc
clearall
NF=1
fori1=1:
NF
clear;
n1=3
n2=3
n0=3
nl1=5
nl2=5
nl0=5
Lf=1%单相接地短路为1横向故障为0
f=3
If=0
zf=0
zg=0
B1=[010.15i010;
020.075i010;
120.1i010;
130.1i010;
230.1i010]
B2=[010.15i010;
B0=[010.05i010;
020.025i010;
120.2i010;
130.2i010;
230.2i010]
A1=[111;
1-1./2-i*sqrt(3)/2-1./2+i*sqrt(3)/2;
1-1./2+i*sqrt(3)/2-1./2-i*sqrt(3)/2]
Vcs=[1;
1;
1]
Z1=zeros(n1);
Z2=zeros(n2);
Z0=zeros(n0);
Y1=zeros(n1);
Y2=zeros(n2);
Y0=zeros(n0);
V1=zeros(n1,1);
V2=zeros(n2,1);
V0=zeros(n0,1);
I1=zeros(nl1,1);
I2=zeros(nl2,1);
I0=zeros(nl0,1);
form1=1:
3
m=0;
ifm1==1
nl=nl1;
B=B1;
Z=Z1;
n=n1;
elseifm1==2
nl=nl2;
B=B2;
Z=Z2;
n=n2;
elseifm1==3
nl=nl0;
B=B0;
Z=Z0;
n=n0;
Z=zeros(n);
V=zeros(n);
I=zeros(nl);
fork1=1:
p=B(k1,1);
q=B(k1,2);
ifB(k1,6)==0
k=1./B(k1,5);
elsek=B(k1,5);
ifp==0
ifq>
m%追加接地树支
Z(q,q)=B(k1,3);
m=m+1;
else%追加接地连支
m
Z(i,m+1)=-Z(i,q);
Z(m+1,i)=-Z(q,i);
Z(m+1,m+1)=Z(q,q)+B(k1,3);
forj=1:
Z(i,j)=Z(i,j)-Z(i,m+1)*Z(m+1,j)./Z(m+1,m+1);
Z(i,m+1)=0
m+1
Z(m+1,i)=0
elseifq>
m%追加不接地树支
Z(i,q)=Z(i,p)*k;
Z(q,i)=Z(p,i)*k;
Z(q,q)=k^2*Z(p,p)+k^2*B(k1,3);
else
m%追加不接地连支
Z(i,m+1)=k*Z(i,p)-Z(i,q);
Z(m+1,i)=k*Z(p,i)-Z(q,i);
Z(m+1,m+1)=k^2*Z(p,p)+Z(q,q)-2*k*Z(p,q)+k^2*B(k1,3);
m
Z(i,m+1)=0;
Z(m+1,i)=0;
Z1=Z;
Z2=Z;
Z0=Z;
end%以上程序求出正,负,零序对应的阻抗阵
ifIf==0%求出横向故障的阻抗阵
Z1(f,f)=Z1(f,f);
Z2(f,f)=Z2(f,f);
Z0(f,f)=Z0(f,f);
else%求出纵向故障的阻抗阵
Z1(f,f)=Z1(f,f)+Z1(1,1)-2*Z1(f,1);
Z2(f,f)=Z2(f,f)+Z2(1,1)-2*Z2(f,1);
Z0(f,f)=Z0(f,f)+Z0(1,1)-2*Z0(f,1);
end%-----------------故障点自阻抗--------------------------------
ifLf==1%求出正负零序短路节点的电流标幺值
Z4=Z2(f,f)+Z0(f,f)+3*zf;
k2=1;
;
k0=1;
I1(f)=Vcs(f)./(Z1(f,f)+Z4);
I2(f)=k2*I1(f);
I0(f)=k0*I1(f);
a1=I1(f);
a2=I2(f);
a0=I0(f);
elseifLf==2%两相短路
Z4=Z2(f,f)+2*zf;
k2=-1;
k0=0;
elseifLf==3%两相接地短路
Z4=zf+(Z2(f,f)+zf)*(Z0(f,f)+zf+3*zg)./(Z2(f,f)+Z0(f,f)+2*zf+3*zg);
k2=-(Z0(f,f)+zf+3*zg)./(Z2(f,f)+Z0(f,f)+2*zf+3*zg);
k0=-(Z2(f,f)+zf)./(Z2(f,f)+Z0(f,f)+2*zf+3*zg);
elseifLf==4%单相断线
Z4=zf+(Z2(f,f)+zf)*(Z0(f,f)+zf)./(Z2(f,f)+Z0(f,f)+2*zf);
k2=-(Z0(f,f)+zf)./(Z2(f,f)+Z0(f,f)+2*zf);
k0=-(Z2(f,f)+zf)./(Z2(f,f)+Z0(f,f)+2*zf);
elseifLf==5%两相断线
故障点处的正序电流标幺值为:
disp(a1);
故障点处的负序电流标幺值为:
disp(a2);
故障点处的零序电流标幺值为:
disp(a0);
n1%求出各节点的电压标幺值
V1(i)=Vcs(i)-I1(f)*Z1(i,f);
%正序
n2
V2(i)=-I2(f)*Z2(i,f);
%负序
n0
V0(i)=-I0(f)*Z0(i,f);
%零序
各节点的正序电压标幺值(节点号从小到大排):
disp(V1);
各节点的负序电压标幺值(节点号从小到大排):
disp(V2);
各节点的零序电压标幺值(节点号从小到大排):
disp(V0);
3