基于MATLAB的潮流计算源程序代码(共8页).docx
《基于MATLAB的潮流计算源程序代码(共8页).docx》由会员分享,可在线阅读,更多相关《基于MATLAB的潮流计算源程序代码(共8页).docx(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上%*电力系统直角坐标系下的牛顿拉夫逊法潮流计算*clearclcload E:dataIEEE014_Node.txtNode=IEEE014_Node;weishu=size(Node);nnum=weishu(1,1); %节点总数 load E:dataIEEE014_Branch.txtbranch=IEEE014_Branch;bwei=size(branch); bnum=bwei(1,1); %支路总数Y=(zeros(nnum);Sj=100;%*节点导纳矩阵*for m=1:bnum; s=branch(m,1); %首节点 e=branch(m,2
2、); %末节点 R=branch(m,3); %支路电阻 X=branch(m,4); %支路电抗 B=branch(m,5); %支路对地电纳 k=branch(m,6); if k=0 %无变压器支路情形 Y(s,e)=-1/(R+j*X); %互导纳 Y(e,s)=Y(s,e); end if k=0 %有变压器支路情形 Y(s,e)=-(1/(R+j*X)*k); Y(e,s)=Y(s,e); Y(s,s)=-(1-k)/(R+j*X)*k2); Y(e,e)=-(k-1)/(R+j*X)*k); %对地导纳 end Y(s,s)=Y(s,s)-j*B/2; Y(e,e)=Y(e,e)
3、-j*B/2; %自导纳的计算情形endfor t=1:nnum; Y(t,t)=-sum(Y(t,:)+Node(t,12)+j*Node(t,13); %求支路自导纳end G=real(Y); %电导 B=imag(Y); %电纳%*节点分类*pq=0; pv=0; blancenode=0;pqnode=zeros(1,nnum);pvnode=zeros(1,nnum);for m=1:nnum; if Node(m,2)=3 blancenode=m; %平衡节点编号 else if Node(m,2)=0 pq=pq+1; pqnode(1,pq)=m; %PQ节点编号 else
4、 if Node(m,2)=2 pv=pv+1; pvnode(1,pv)=m; %PV节点编号 end end endend%*设置电压初值*Uoriginal=zeros(1,nnum); %对各节点电压矩阵初始化for n=1:nnum Uoriginal(1,n)=Node(n,9); %对各点电压赋初值 if Node(n,9)=0; Uoriginal(1,n)=1; %该节点为非PV节点时,将电压值赋为1 endendPresion=input(请输入误差精度要求:Presion=);disp(该电力系统节点数:);disp(nnum);xiumax=0.1;counter=0;
5、while xiumaxPresion %*计算不平衡量*e=real(Uoriginal); %取初始电压的实部f=imag(Uoriginal); %取初始电压的虚部deta=zeros(2*pq+2*pv,1); %构造储存功率变化量的列矩阵n=1; for m=1:pq; Pi=0;Qi=0; for t=1:nnum; Pi=Pi+e(1,pqnode(1,m)*(G(pqnode(1,m),t)*e(1,t)-B(pqnode(1,m),t)*f(1,t)+f(1,pqnode(1,m)*(G(pqnode(1,m),t)*f(1,t)+B(pqnode(1,m),t)*e(1,t
6、);%计算该PQ节点的负荷有功 Qi=Qi+f(1,pqnode(1,m)*(G(pqnode(1,m),t)*e(1,t)-B(pqnode(1,m),t)*f(1,t)-e(1,pqnode(1,m)*(G(pqnode(1,m),t)*f(1,t)+B(pqnode(1,m),t)*e(1,t);%计算该PQ节点的负荷无功 end S1(1,pqnode(1,m)=Pi+j*Qi; P=(Node(pqnode(1,m),7)-Node(pqnode(1,m),5)/Sj-Pi;%计算该PQ节点的实际有功功率 deta(n,1)=P;%在该列向量中储存有功功率 n=n+1; Q=(Nod
7、e(pqnode(1,m),8)-Node(pqnode(1,m),6)/Sj-Qi;%计算该PQ节点的实际无功功率 deta(n,1)=Q;%在该列向量中储存无功功率 n=n+1; endfor m=1:pv; Pv=0; Qv=0; for t=1:nnum; Pv=Pv+e(1,pvnode(1,m)*(G(pvnode(1,m),t)*e(1,t)-B(pvnode(1,m),t)*f(1,t)+f(1,pvnode(1,m)*(G(pvnode(1,m),t)*f(1,t)+B(pvnode(1,m),t)*e(1,t);%计算该PV节点的负荷有功 Ui=e(1,pvnode(1,m
8、)2+f(1,pvnode(1,m)2;%计算该节点的负荷电压值 Qv=Qv+f(1,pqnode(1,m)*(G(pqnode(1,m),t)*e(1,t)-B(pqnode(1,m),t)*f(1,t)-e(1,pqnode(1,m)*(G(pqnode(1,m),t)*f(1,t)+B(pqnode(1,m),t)*e(1,t); end S1(1,pvnode(1,m)=Pv+j*Qv; P=(Node(pvnode(1,m),7)-Node(pvnode(1,m),5)/Sj-Pv; %计算该节点的实际有功功率 deta(n,1)=P; %储存该有功功率 n=n+1; U=Node(
9、pvnode(1,m),3)2-Ui; %计算电压变化量 deta(n,1)=U; %储存该电压变化量 n=n+1;enddeta;cerate=zeros(pq+pv,1); for k=1:pq cerate(k,1)=pqnode(1,k);end for v=1:pv cerate(pq+v,1)=pvnode(1,v);end%*雅克比矩阵* Jacob=ones(2*nnum-2); L=0;J=0;H=0;N=0; R=0;S=0;n=1;k=1; for m=1:pq; %m表示雅克比矩阵中pq节点的行数 for u=1:pq+pv; %u表示雅克比矩阵中pq节点的列数 t=c
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MATLAB 潮流 计算 源程序 代码
限制150内