1、程序smfaut(zdata,Zb,)用来计算三相对称故障,程序要求输入ata和s两个矩阵,第三个参数V是可选的。如果V不存在,程序将默认故障前所有的节点电压标幺值为.0,如果变量存在,那么V包括节点编号和复数电压值。电压向量V也可以由潮流计算程序自动生成。当syfult程序运行时,用户要输入故障节点编号和故障阻抗,运行可得到总的故障电流,节点电压幅值以及故障情况下的线路电流。在三相短路计算中,zild 和mfat程序,bildpi和ymat程序都可以进行计算,下面是三相短路计算使用的程序代码:(1)b.程序代码:function Zs=zbuld(lindaa)nl =linedata(:,
2、);nr indaa(:,); R = lnat(:,);X= lneat(:,4);nbr=nth(liedta(:,1);nbu max(ma(n), a(r);for 1:br iR(k)= inf |X(k) =in R(k)= 9999999; ()= 999999;无穷 else, endend ZB R+j*;u = zeros(bus, nbu);tee=0;%从参考总线0上添加一个分支 or I = 1: tee(I) ; if nl(I) = 0 | nr(I) 0 ifnl(I) = 0 n=r(I); lseif n()= 0 n= (I); if as(Zbu(,)
3、=0 us(n,)= ZB(I);tee1; w ese Zus(n,n)= Zb(n,n)Z(I)/(Zbs(n,)+ZB(I); end ntr() = ; else,d en% 添加一个新总线分支到现有总线上whilree nbu or n = 1:bus n =; f abs(Zbus(n,n) = 0 forI = 1: f nadd = ; f n(I) = n (I)= n if (I) = n n(I); elif r(I) = n k =nl(I); end if abs(Zbus(k,k)=0 f m= 1:nbus i = n Zb(m,n) = Zbs(m,k); Zb
4、us(,m) = Zbus(m,); ele, end ed Zbs(n,n) =bus(k,k) + (I);re=e+1; n =; tee(I) = ; else,end else, end le, nd d els, nded %增加两个原有总线间的支路阻抗 frn = :us for I :b if ntee(I)= f (I) =n | nr(I) = n if l()= n =nr(I); elsif (I)=n k = l(); end D = Zbus(n,n) Zb(k,k)ZB(I) - *Zbs(n,k); orjj = :nus AP=Zbu(jj,) - Zbs(j
5、j,k); fo kk = 1:nbs T=Zus(,kk)- Zbus(k, k); LZ(jj,k) = AAT/D; e end bu - DEL; ntre(I) = 2; ese,nd ee,end ennd(2)Zbuilpi.m程序代码:% This prgam form th cople bs mpanematix y themto% f bulding algorhm.Bus zerois takena reerence.%This pgram s coatiblewtpower fowa.fncion Zbus, lieaa =zbuildpi(lnedta, gendat
6、, lod)n=length(geat(:,1);nlg=genat(:nrg=gendata(:,2);z ndta(:,2) +*ged(:,3);n linedata(:,1);nr = ineata(: R linata(:,3); liedat(:,);nenth(ineda(: nbus ax(mx(nl), ma(n);nc = leh(lid(1,:);for=1:nbr if R(k) nf |X(k) = inf (k) 99999; (k) 9999999; else,enddifnc 4C = inedat(:,5); for : yc(n)= 0; c(n) =0;
7、nrc() = n; for k : if n() = n | nr(k)=n yc() = y(n) + *BC(k); lse, nd end edelsfnc=4yc=zeros(1, nbr);endcnlc; rc=nrc; =y.;B = R + j*X;ixist(ylod) =1 yld a; c=yc yload;ele, nm= 0;or =1: abs(yc(n)=0 m=m1; nlcc() = lc(); rc(m) nr(n); zc(m) 1/yc(n); else, ednlc=lcc nrccrcc; zczc.;n=lg; nlcc; nl; nr =nr;
8、 nrcc; nr;B = zg;zc;ZB;lneat= rreal(B) imag(Z);nb= engh(n);Zbus zr(nu, nbus);tee=; %从参考总线0上添加一个分支 frI 1:nb tre(I) =; if nl(I)= | n()= 0 if nl(I) = n = nr(I); elseif n()= 0 = nl(I); end if as(Zs(n, ) = 0 s(n,n) = Z(I);tee=ee+1; els Zbu(n,n) =Zb(n,)*B(I)/(Zbus(n,n)+ ZB(I); ed ee(I) = 2; e,en nd%添加一个新总线分支到现有总线上whi r nbus for n = 1: nad ;
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1