0123456789100123456时间/s电压/vRC电路的电压响应曲线020406080100120-200-150-100-50050100150200电源电压和电容电压波形图时间/s电压/vusuc实验一MATLAB软件的基本操作及程序的基本结构一、程序流程及算法原理第3小题:第4小题:二、程序源码及仿真结果第3小题程序源码:结果为:clearallclct=(0:0.2:10);u=6*exp(-2*t);plot(t,u,'r*-');xlabel('时间/s');ylabel('电压/v');title('RC电路的电压响应曲线');gridon第4小题程序源码:结果为:mUsm=200;aUsm=(pi/180)*(+90);Usm=mUsm*exp(j*aUsm);R1=22;L=0.05;R2=33;C=100e-6;w=100*pi;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;N=100;dt=T/N;t=0:dt:T;fork=1:101;us(k)=mUsm*cos(w*t(k)+aUsm);uc(k)=mUcm*cos(w*t(k)+aUcm);endplot(us,'r-')holdonplot(uc,'b*')gridontitle('电源电压和电容电压波形图');xlabel('时间/s');ylabel('电压/v');legend('us','uc',4)求Us的幅值和相角:mUsm=200;aUsm=(pi/180)*(+90);并将Us用向量形式表示:Usm=mUsm*exp(j*aUsm)根据电路图利用串联段、并联段的阻抗和分压公式求出Uc的表达式;然后求出Uc的幅值和相角:mUcm=abs(Ucm);aUcm=angle(Ucm)aUcm=angle(Ucm);根据要求设定波形的长度:T=4*2*pi/w(四个周波);采样点数:N=100;采样频率:dt=T/N(两点间隔)输入us(k)和uc(k)的函数表达式并绘制它们的波形图输出结果开机输入端电压表达式添加横纵坐标,标题,并显示网格线,设置波形为红*线设置时间t=0~10,间隔为0.2s输出结果开机求Us的幅值和相角:mUsm=200;aUsm=(pi/180)*(+90);并将Us用向量形式表示:Usm=mUsm*exp(j*aUsm)根据电路图利用串联段、并联段的阻抗和分压公式求出Uc的表达式;然后求出Uc的幅值和相角:mUcm=abs(Ucm);aUcm=angle(Ucm)aUcm=angle(Ucm);根据要求设定波形的长度:T=4*2*pi/w(四个周波);采样点数:N=100;采样频率:dt=T/N(两点间隔)输入us(k)和uc(k)的函数表达式并绘制它们的波形图输出结果开机三、思考题及讨论1、MATLAB软件是什么?有什么特点?答:MATLAB是一种高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程等特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程(.m文件)后再一起运行。特点:1.编程效率高;2.用户使用方便;3.扩充能力强,交互性好;4.移植性和开放性很好;5.是一种直译式的高级语言,比其它程序设计语言更容易;6.高效方便的矩阵和数组运算;7.绘图功能很方便。4、MATLAB的数据类型与其它高级语言相比有何特点?答:MATLAB的特点就是它将矩阵作为基本存储单元。另外MATLAB的工具箱也很丰富,在图像处理、信号处理、小波、人工智能、经济数学等方面的工具箱里的工具、示例非常多,功能非常强大。MATLAB还支持与C++等多种语言的混合编程。5、什么时候用for循环、什么时候用while循环?答:while可以在不知道最大循环次数的情况下使用,在满足条件的时候退出循环;但是for必须指定最大循环次数,到达最大循环次数时就要退出了,在满足条件时也可以退出的。for用于有限次数的循环计算较简洁;while用于满足一定条件的迭代循环较方便。实验二电力系统计算中常用的数值算法及电力网络的数学模型一、程序流程及算法原理第1小题:第3小题:第4小题:导纳矩阵原理:阻抗矩阵原理:因子表原理:因子表中下三角部分的元素就是系数矩阵在消去过程中曾用以进行运算的元素,因此只要把它们保留在原来的位置,并把对角元素取倒数就可以得到因子表的下三角部分。而因子表中上三角部分的元素就是系数矩阵在消去过程完成后的结果。因子法分为前代过程和回代过程。其中下三角元素用来对常数项进行消去(前代)运算,上三角元素用来进行消去回代运算。采用因子表法可避免系数矩阵的重复运算采用I=YU形式的节点电压方程得到节点导纳矩阵Y采用U=ZI形式的回路电流方程得到节点阻抗矩阵Z第5小题:二、程序源码及仿真结果第1小题程序源码:%根据电路图由节点电压法知各节点的电压表达式如下%U1=10%-1/10*U1+(1/10+1/30+1/50)*U2-1/50*U3=0%-1/15*U1-1/50*U2+(1/50+1/15+1/30)U3=0us=input('请输入电压源us=');%us=U1=10A=[100;1/10-1/10-1/50-1/301/50;1/151/50-1/50-1/15-1/30];B=[us00];[nm]=size(A);(+形成因子表程序)disp('矩阵A的因子表为:');disp(A)fori=1:nB(i)=B(i)*A(i,i);(+在因子表的基础上采用按列回带法求解线性方程组的程序)disp('在因子表的基础上采用按列回带法求解线性方程组的解为:X=');disp(B)结果为:第2小题分别输入us=2、4、6、8结果为:NYYNn=nY(i,j)=Y(j,i)Y(p,p)=Y(p,p)+1/z;Y(p,q)=Y(p,q)=-1/zY(p,p)=1/z+B1(4)Y(p,p)=Y(p,p)+1/zY(q,q)=-1/zY(q,p)=-1/zY(q,q)=1/z+B1(4)K1=B1(5);K=B(i,5)Y(p,p)=Y(p,p)+(K1^2-K^2)*(1/z)Y(p,q)=Y(p,q)-(K1-K)*(1/z)Y(q,p)=Y(q,p)-(K1-K)*(1/z)输出结果P=B1(2)Q=B1(1)P=B1(1)Q=B1(2)B1(2)nY(p,q)=0B1(I,5)=B1(5)B1(6)=0?K=k-1开机输入新增支路矩阵B1K=6K=B1(k)K6?K=6?YNYNYNYN第3小题程序源码:n=5;n1=5;B=[120.03i01.050;230.08+0.3i0.5i10;340.015i01.051;250.1+0.35i010;350.04+0.25i0.5i10];X=[10;20;30;40;50];(+形成节点导纳矩阵程序)disp('导纳矩阵Y=');disp(Y)结果为第4小题程序源码:阻抗矩阵n=5;nl=6;B=[010.3i000;120.03i01.050;230.08+0.3i010;340.015i01.051;250.1+0.35i010;350.04+0.25i010];m=0;Z=zeros(n);(+用支路追加法形成节点阻抗矩阵程序)disp('阻抗矩阵Z=');disp(Z)结果为:导纳矩阵n=5;m=5;B=[120.03i01.050;230.08+0.3i010;340.015i01.051;250.1+0.35i010;350.04+0.25i010];X=[10.3i;20;30;40;50];Y=zeros(n);(+形成节点导纳矩阵程序)disp('导纳矩阵Y=:');disp(Y)inv(Y)结果为:对比直接求出的阻抗矩阵和由导纳矩阵求逆间接求出的阻抗矩阵,可以看出结果近似相同,但直接求出的阻抗矩阵比由导纳矩阵求逆间接求出的阻抗矩阵多一行一列零元素。三、思考题及讨论1、高斯消去法与因子表法有何异同?答;因子表法是以高斯消去法为基础求解线性方程组的一种方法,其不同之处在于(以按行消去过程为例):因子表是对系数矩阵和对常数项的消去及规格化分开写,用下三角及对角元素可对常数项进行消去运算,并利用上三角元素则可进行回代运算。高斯消去是通过增广矩阵回代过程即可求出方程组的全部解。2、节点导纳阵与节点阻抗阵之间有何关系,二者之间如何转换?答:节点阻抗矩阵可由导纳矩阵求逆间接求出。导纳矩阵是对称、稀疏矩阵,且能从系统网络接线图直观求出;阻抗矩阵是满矩阵,迭代计算时收敛性能较好,不能从系统网络接线图直观求出。3、网络矩阵的修改函数对电力系统计算有何作用?答:不需要每次去修改因子表,减少了计算量,使计算更加方便。4、追加支路法求网络阻抗阵过程中,支路输入顺序有何要求?答:按编号从小到大依次进行追加。实验三短路电流计算一、程序流程及算法原理第1小题:第2小题:第3小题:二、程序源码及仿真结果第1小题程序源码:NF=1;n=3;nl=5;B=[010.15i010;020.075i010;120.1i010;130.1i010;230.1i010];V0=[1;1;1]D=[30]m=0;Z=zeros(n);V=zeros(n);I=zeros(nl);{+对称故障的计算程序(包含阻抗矩阵形成程序、各短路点电流标幺值程序、各节点电压标幺值程序)}disp(dn);disp(I(D(k,1),D(k,1)))disp('各节点的电压标幺值U为(节点号从小到大排):');fori=1:ndisp(V(i,i));disp('各支路短路电流的标幺值I为(顺序同您输入B时一样):');fori=1:nldisp(I(i,i));结果为开机开机输入数据形成节点阻抗矩阵选择故障点f用式错误!未找到引用源。计算短路电流用式错误!未找到引用源。计算各节点电压用式错误!未找到引用源。计算指定支路的电流输出结果输入数据形成节点阻抗矩阵求出各电源对短路点的转移电抗利用公式求出计算电抗由计算曲线求出短路电流输出结果输入数据形成各序网络的节点阻抗矩阵按故障类型计算附加阻抗、系数选择故障类型和故障地点在故障口开路的状态下计算错误!未找到引用源。,错误!未找到引用源。用式(16.11)和(16.12)计算故障口正、负、零序电流用式(16.7)和(16.12)计算各节点正、负、零序电压用式(16.8)计算各支路的正、负、零序电流计算指定支路的各相电流和指定节点的各相电压输出结果开机第2题程序源码:NF=1;n=3;nl=5;Sb=100;D=[30]vb=[115115115]V0=[1;1;1]B=[010.15i01010011;020.075i01020011;120.1i010002;130.1i010002;230.1i010002]N=input('请输入要调用本程序的次数:N=');m=0;Z=zeros(n);sq3=sqrt(3);s=zeros(N,1);{+用计算曲线计算对称故障三相短路电流程序}plot(s,Id);xlabel('时间(秒)');ylabel('短路电流大小的标么值');title('短路电流曲线');end结果为请输入要调用本程序的次数:N=113以下是短路点各时刻的结果0s时短路点的电流为0.0000-9.8592i0s时各节点的电压标么值为0.45070.535200s时各支路的电流标么值为0.0000-3.6620i0.0000-6.1972i0.0000+0.8451i0.0000-4.5070i0.0000-5.3521i请输入短路后几秒(若要终止本程序请输入-1)s=0等值电源1对短路点的计算电抗Xjs1为0.2731查与计算电抗Xjs对应的电流标么值I=3.872对应的电流标么值,有名值分别为3.87201.9439等值电源2对短路点的