资源描述:
《matlab潮流计算》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、精品文档6欢迎下载。精品文档附录16欢迎下载。精品文档6欢迎下载。精品文档使用牛顿拉夫逊法进行潮流计算的Matlab程序代码%牛拉法计算潮流程序%--%B1矩阵:1、支路首端号;2、末端号;3、支路阻抗;4、支路对地电纳%5、支路的变比;6、支路首端处于K侧为1,1侧为0%B2矩阵:1、该节点发电机功率;2、该节点负荷功率;3、节点电压初始值%4、PV节点电压V的给定值;5、节点所接的无功补偿设备的容量%6、节点分类标号:1为平衡节点(应为1号节点);2为PQ节点;3为PV节点;%clearall;forma
2、tlong;n=input('请输入节点数:nodes=');nl=input('请输入支路数:lines=');isb=input('请输入平衡母线节点号:balance=');pr=input('请输入误差精度:precision=');B1=input('请输入由各支路参数形成的矩阵:B1=');B2=input('请输入各节点参数形成的矩阵:B2=');Y=zeros(n);e=zeros(1,n);f=zeros(1,n);V=zeros(1,n);sida=zeros(1,n);S1=zeros(n
3、l);%%支路数%左节点处于1侧左节点处于K侧fori=1:nlifB1(i,6)==0p=B1(i,1);q=B1(i,2);else%p=B1(i,2);q=B1(i,1);endY(p,q)=Y(p,q)-1./(B1(i,3)B1(i,5));%非对角元Y(q,p)=Y(p,q);%非对角元Y(q,q尸Y(q,q)+1./(B1(i,3)B1(i,542)+B1(i,4);%寸角元K侧Y(p,p)=Y(p,p)+1./B1(i,3)+B1(i,4);%对角元1侧end%求导纳矩阵disp('导纳矩阵Y=
4、');disp(Y)%%分解出导纳阵的实部和虚部%给定各节点初始电压的实部和虚部G=real(Y);B=imag(Y);fori=1:n6欢迎下载。精品文档e(i)=real(B2(i,3));f(i)=imag(B2(i,3));V(i)=B2(i,4);endfori=1:nS(i)=B2(i,1)-B2(i,2);B(i,i)=B(i,i)+B2(i,5);end%PV?点电压给定模值%给定各节点注入功率%i节点注入功率SG-SL%i节点无功补偿量%P=real(S);Q=imag(S);%分解出各节点注
5、入的有功和无功功率ICT1=0;IT2=1;N0=2n;N=N0+1;a=0;%whileIT2~=0%N0=2nIT2=0;a=a+1;迭代次数ICT1、a;不满足收敛要求的节点数雅可比矩阵的阶数;N=N0+1扩展列IT2fori=1:nifi~=isb%非平衡节点C(i)=0;D(i)=0;forj1=1:nC(i尸C(i)+G(i,j1)e(j1)-B(i,j1)f(j1);%NGijej-Bijfj)D(i尸D(i)+G(i,j1)f(j1)+B(i,j1)e(j1);%2(Gijfj+Bijej)en
6、dP1=C(i)e(i)+f(i)D(i);%节点功率P计算ei2(Gijej-Bijfj)+fi(Gijfj+Bijej)Q1=C(i)f(i)-e(i)D(i);%节点功率Q计算fi2(Gijej-Bijfj)-ei(Gijfj+Bijej)%求i节点有功和无功功率P',Q'的计算值V2=e(i)A2+f(i)A2;帆压模平方%以下针对非PV节点来求取功率差及Jacobi矩阵元素ifB2(i,6)~=3DP=P(i)-P1;DQ=Q(i)-Q1;%%以上为除平衡节点外其它节点的功率计算%非PV节点%节点有功
7、功率差节点无功功率差%求取Jacobi矩阵forj1=1:nifj1~=isb&j1~=i%非平衡节点&非对角元X1=-G(i,j1)e(i)-B(i,j1)f(i);%dP/de=-dQ/dfX2=B(i,j1)e(i)-G(i,j1)f(i);%dP/df=dQ/deX3=X2;%X2=dp/dfX3=dQ/deX4=-X1;%X1=dP/deX4=dQ/dfp=2i-1;q=2j1-1;J(p,q)=X3;J(p,N)=DQ;m=p+1;%X3=dQ/deJ(p,N)=DQ节点无功功率差J(m,q)=X1
8、;J(m,N)=DP;q=q+1;%X1=dP/deJ(m,N)=DP节点有功功率差6欢迎下载。精品文档J(p,q)=X4;J(m,q)=X2;%X4=dQ/dfX2=dp/dfelseifj1==i&j1~=isb%非平衡节点&对角元X1=-C(i)-G(i,i)e(i)-B(i,i)f(i);%dP/deX2=-D(i)+B(i,i)e(i)-G(i,i)f(i);%dP/dfX3