潮流计算matlab_牛顿拉夫逊法法技术.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用matlab潮流计算(牛顿拉夫逊法) %主程序: [dfile,pathname]=uigetfile(ieee14.m,Select Data File); if pathname==0 error(you must select a valid data file) else lfile=length(dfile); % strip off .m eval(dfile(1:lfile-2)); %打开数据文件 end global n; global m; [nb,mb]=size(bus); %节点重新编号 [nl,ml]=size(line); nSW=0; % 平衡节点数目 nPV=0; % PV节点数目 nPQ=0; % PQ节点数目 for i=1:nb, % nb为总节点数 type=bus(i,6); if type==3, nSW=nSW+1; % 统计平衡节点数目 SW(nSW,:)=bus(i,:); elseif type==2, nPV=nPV+1; % 统计PV节点数目 PV(nPV,:)=bus(i,:); else nPQ=nPQ+1; % 统计PQ节点数目 PQ(nPQ,:)=bus(i,:); end end; bus=[PQ;PV;SW]; newbus=[1:nb]; f=bus(:,1); nodenum=[newbus bus(:,1)]; bus(:,1)=newbus; for i=1:nl for j=1:2 for k=1:nb if line(i,j)==nodenum(k,2) line(i,j)=nodenum(k,1); break end end end end Y=y(bus,line); %形成节点导纳矩阵 K=0; %迭代次数初值 Kmax=10; %最大迭代次数 eps1=1.0e-10; eps2=1.0e-10; m=nPQ;n=nb; Um=eye(m,m); myf=fopen(output1.dat,w); for K=1:Kmax for i=1:m for j=1:m if i==j Um(i,j)=bus(i,2); end end end b=dPQ(Y,bus); C=jac(bus,Y); dX=C\b; dx=dX; [nx,mx]=size(dx); for i=1:n-1 %计算相角 bus(i,3)=bus(i,3)-dX(i,1); end B=dx(nx,n:mx)*Um; %计算电压差 bus(1:m,2)=bus(1:m,2)-B; %计算电压值 dx(nx,n:mx)=B; fprintf(myf,--第%d次迭代时雅可比矩阵--,K) fprintf(myf, \n); for i=1:(n+m-1) for j=1:(n+m-1) fprintf(myf,%8.6f, C(i,j)); fprintf(myf, ); end fprintf(myf, \n); end fprintf(myf,--第%d次迭代时dPQ的误差--,K) fprintf(myf, \n); for i=1:(n+m-1) fprintf(myf,%8.6e, b(1,i)); fprintf(myf, \n); end

文档评论(0)

妈妈王子 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档