牛拉法潮流计算程序

上传人:s****a 文档编号:218371019 上传时间:2023-06-19 格式:DOCX 页数:6 大小:17.92KB
收藏 版权申诉 举报 下载
牛拉法潮流计算程序_第1页
第1页 / 共6页
牛拉法潮流计算程序_第2页
第2页 / 共6页
牛拉法潮流计算程序_第3页
第3页 / 共6页
资源描述:

《牛拉法潮流计算程序》由会员分享,可在线阅读,更多相关《牛拉法潮流计算程序(6页珍藏版)》请在装配图网上搜索。

1、%本程序的功能是用牛顿拉夫逊法进行潮流计算% 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 节点;clear;n=input(请输入节点数:n=);nl=input(请输入支路数:nl=);isb=input(请输入平衡母线节点号:isb=);pr=inpu

2、t(请输入误差精度:pr=);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(nl);% % %for i=1:nl%支路数if B1(i,6)=0%左节点处于 1 侧p=B1(i,1);q=B1(i,2);else%左节点处于K侧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)

3、;%非对角元Y(q,q)=Y(q,q)+1./(B1(i,3)*B1(i,5)A2)+B1(i,4)./2;%对角元 K 侧9Y(p,p)=Y(p,p)+1./B1(i,3)+B1(i,4)./2;%对角元1侧end%求导纳矩阵disp(导纳矩阵Y=);disp(Y)%G=real(Y);B=imag(Y); for i=1:n e(i)=real(B2(i,3); f(i)=imag(B2(i,3);V(i)=B2(i,4);endfor i=1:nS(i)=B2(i,1)-B2(i,2);B(i,i)=B(i,i)+B2(i,5);%分解出导纳阵的实部和虚部%给定各节点初始电压的实部和虚部

4、%PV 节点电压给定模值%给定各节点注入功率%i 节点注入功率 SG-SL%i 节点无功补偿量end%=P=real(S);Q=imag(S);%分解出各节点注入的有功和无功功率ICT1=0;IT2=1;N0=2*n;N=N0+1;a=0; %迭代次数ICT1、a;不满足收敛要求的节点数IT2while IT2=0% N0=2*n雅可比矩阵的阶数;N=N0+1扩展列IT2=0;a=a+1;for i=1:nif i=isb%非平衡节点C(i)=0;D(i)=0;for j1=1:nC(i)=C(i)+G(i,j1)*e(j1)-B(i,j1)*f(j1);%(Gij*ej-Bij*fj)D(i

5、)=D(i)+G(i,j1)*f(j1)+B(i,j1)*e(j1);%(Gij*fj+Bij*ej)endP1=C(i)*e(i)+f(i)*D(i);%节点功率 P 计算 ei 工(Gij*ej-Bij*fj)+fi 工(Gij*fj+Bij*ej)Q1=C(i)*f(i)-e(i)*D(i);%节点功率 Q 计算 fi 工(Gij*ej-Bij*fj)-ei工(Gij*fj+Bij*ej) %求i节点有功和无功功率P,Q的计算值V2=e(i)A2+f(i)A2;% 电压模平方%=以下针对非pv节点来求取功率差及Jacobi矩阵元素=if B2(i,6)=3%非 PV 节点DP=P(i)-

6、P1;%节点有功功率差DQ=Q(i)-Q1;%节点无功功率差%= 以上为除平衡节点外其它节点的功率计算 =%= 求取 Jacobi 矩阵 =for j1=1:nif j1=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/df X3=dQ/deX4=-X1;% X1=dP/de X4=dQ/dfp=2*i-1;q=2*j1-1;J(p,q)=X3;J(p,N)=DQ;m=p+1;% X3=dQ/de J(p,

7、N)=DQ 节点无功功率差J(m,q)=X1;J(m,N)=DP;q=q+1;% X1=dP/de J(m,N)=DP 节点有功功率差J(p,q)=X4;J(m,q)=X2;elseif j1=i&j1=isb% X4=dQ/df X2=dp/df%非平衡节点&对角元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=D(i)+B(i,i)*e(i)-G(i,i)*f(i); % dQ/deX4=-C(i)+G(i,i)*e(i)+B(i,i)*f(i);% dQ/df p=2*i

8、-1;q=2*j1-1;J(p,q)=X3;J(p,N)=DQ;% 扩展列AQ m=p+1;J(m,q)=X1;q=q+1;J(p,q)=X4;J(m,N)=DP;%扩 展列AP J(m,q)=X2;endendelse%=下面是针对PV节点来求取Jacobi矩阵的元素=DP=P(i)-P1;DV=V(i)A2-V2;% PV 节点有功误差% PV 节点电压误差%非平衡节点&非对角元for j1=1:nif j1=isb&j1=iX1=-G(i,j1)*e(i)-B(i,j1)*f(i);% dP/deX2=B(i,j1)*e(i)-G(i,j1)*f(i);% dP/dfX5=0;X6=0;

9、p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV; % PV 节点电压误差 m=p+1;J(m,q)=X2;elseif j1=i&j1=isb%非平衡节点&对角元J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6; % PV 节点有功误差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/df X5=-2*e(i);X6=-2*f(i);p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV; % PV 节点电压误差 m=p+1

10、;J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6; % PV 节点有功误差J(m,q)=X2;end end end end end %= 以 上 为 求 雅 可 比 矩 阵 的 各 个 元 素 及 扩 展 列 的 功 率 差 或 电 压 差for k=3:N0 % N0=2*n (从第三行开始,第一、二行是平衡节点)k1=k+1;N1=N;% N=N0+1 即 N=2*n+1 扩展列或AUfor k2=k1:N1% 从k+1列的Jacobi元素到扩展列的AP、AQ 或AUJ(k,k2)=J(k,k2)./J(k,k);%用K行K列对角元素去除K行K列后的非对角元素进行

11、规格化endJ(k,k)=1;%对角元规格化K行K列对角元素赋1%= 回 代 运 算if k=3% 不是第三行 k 3k4=k-1;for k3=3:k4%用k3行从第三行开始到当前行的前一行k4行消去for k2=k1:N1%k3 行后各行上三角元素J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去运算(当前行 k 列元素消为 0) end %用当前行K2列元素减去当前行k列元素乘以第k行K2列元素J(k3,k)=0; %当前行第k列元素已消为0endif k=N0%若已到最后一行break;end%= 前代运算 = for k3=k1:N0 % 从 k+1 行到 2

12、*n 最后一行for k2=k1:N1% 从k+1列到扩展列消去k+1行后各行下三角元素J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);% 消去运算end %用当前行K2列元素减去当前行k列元素乘以第k行K2列元素J(k3,k)=0; %当前行第k列元素已消为0endelse%是第三行 k=3%= 第三行 k=3 的前代运算for k3=k1:N0%从第四行到 2n 行(最后一行)for k2=k1:N1%从第四列到 2n+1 列(即扩展列)J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去运算(当前行 3 列元素消为 0) end %用当前行K2列

13、元素减去当前行3列元素乘以第三行K2列元素 J(k3,k)=0; %当前行第3列元素已消为0endendend%=上面是用线性变换方式高斯消去法将Jacobi矩阵化成单位矩阵=for k=3:2:N0-1L=(k+1)./2;e(L)=e(L)-J(k,N);%修改节点电压实部k1=k+1;f(L)=f(L)-J(k1,N);%修改节点电压虚部end%修改节点电压for k=3:N0DET=abs(J(k,N);if DET=pr%电压偏差量是否满足要求IT2=IT2+1; %不满足要求的节点数加 1endendICT2(a)=IT2;%不满足要求的节点数ICT1=ICT1+1;%迭代次数en

14、d%用高斯消去法解w=-J*Vdisp(迭代次数:);disp(ICT1);disp(没有达到精度要求的个数:);disp(ICT2);for k=1:nV(k)=sqrt(e(k)A2+f(kF2);%计算各节点电压的模值sida(k)=atan(f(k)./e(k)*180./pi;%计算各节点电压的角度E(k)=e(k)+f(k)*j;%将各节点电压用复数表示end%= 计算各输出量 = disp(各节点的实际电压标幺值E为(节点号从小到大排列):); disp(E);%显示各节点的实际电压标幺值E用复数表示disp();disp(各节点的电压大小V为(节点号从小到大排列):); dis

15、p(V);%显示各节点的电压大小V的模值disp();disp(各节点的电压相角sida为(节点号从小到大排列):); disp(sida);%显示各节点的电压相角for p=1:nC(p)=0;for q=1:nC(p)=C(p)+conj(Y(p,q)*conj(E(q); %计算各节点的注入电流的共轭值endS(p)=E(p)*C(p);%计算各节点的功率 S = 电压 X 注入电流的共轭值end disp(各节点的功率S为(节点号从小到大排列):); disp(S);%显示各节点的注入功率disp();disp(各条支路的首端功率Si为(顺序同您输入B1时一致):);for i=1:n

16、lp=B1(i,1);q=B1(i,2);if B1(i,6)=0Si(p,q)=E(p)*(conj(E(p)*conj(B1(i,4)./2)+(conj(E(p)*B1(i,5). -conj(E(q)*conj(1./(B1(i,3)*B1(i,5);Siz(i)=Si(p,q); elseSi(p,q)=E(p)*(conj(E(p)*conj(B1(i,4)./2)+(conj(E(p)./B1(i,5). -conj(E(q)*conj(1./(B1(i,3)*B1(i,5);Siz(i)=Si(p,q); end disp(Si(p,q); SSi(p,q)=Si(p,q);Z

17、F=S(,num2str(p),num2str(q),)=,num2str(SSi(p,q); disp(ZF);disp();enddisp(各条支路的末端功率Sj为(顺序同您输入B1时一致):);for i=1:nlp=B1(i,1);q=B1(i,2);if B1(i,6)=0Sj(q,p)=E(q)*(conj(E(q)*conj(B1(i,4)./2)+(conj(E(q)./B1(i,5).-conj(E(p)*conj(1./(B1(i,3)*B1(i,5);Sjy(i)=Sj(q,p);elseSj(q,p)=E(q)*(conj(E(q)*conj(B1(i,4)./2)+(

18、conj(E(q)*B1(i,5).-conj(E(p)*conj(1./(B1(i,3)*B1(i,5);Sjy(i)=Sj(q,p);enddisp(Sj(q,p);SSj(q,p)=Sj(q,p);ZF=S(,num2str(q),num2str(p),)=,num2str(SSj(q,p);disp(ZF);disp();enddisp(各条支路的功率损耗DS为(顺序同您输入B1时一致):);for i=1:nlp=B1(i,1);q=B1(i,2);DS(i)=Si(p,q)+Sj(q,p);disp(DS(i);DDS(i)=DS(i);ZF=DS(,num2str(p),num2

19、str(q),)=,num2str(DDS(i);disp(ZF);disp();end figure(1);subplot(1,2,1);plot(V);xlabel(节点号);ylabel(电压标幺值); grid on;subplot(1,2,2); plot(sida);xlabel(节点号);ylabel(电压角度); grid on;figure(2); subplot(2,2,1);P=real(S);Q=imag(S);bar(P);xlabel(节点号);ylabel(节点注入有功); grid on;subplot(2,2,2);bar(Q);xlabel(节点号);ylabel(节点注入无功); grid on;subplot(2,2,3);P1=real(Siz);Q1=imag(Siz);bar(P1);xlabel(支路号);ylabel(支路首端注入有功); grid on;subplot(2,2,4);bar(Q1);xlabel(支路号);ylabel(支路首端注入无功); grid on;

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!