潮流计算的计算机算法
潮流计算的计算机算法

第四章潮流计算的计算机算法第一节概述潮流计算是电力系统最基本、最常用的计算。
根据系统给定的运行条件、网络接线及元件参数,通过潮流计算可以确定各母线的电压(幅值及相角),各元件中流过的功率、整个系统的功率损耗等。
潮流计算是实现电力系统安全经济发供电的必要手段和重要工作环节。
因此潮流计算在电力系统的规划设计、生产运行、调度管理及科学研究中都有着广泛的应用。
电力系统潮流计算分为离线潮流计算和在线潮流计算。
前者主要用于系统规划设计和安排系统的运行方式,后者则用于正在运行系统的经常监视及实时控制。
本章主要讨论离线潮流计算问题,它的基本算法同样适用于在线潮流计算。
潮流计算在数学上是多元非线性方程组的求解问题,求解的方法有很多种。
自从五十年代计算机应用于电力系统以来,当时求解潮流的方法是以节点导纳矩阵为基础的逐次代入法(导纳法),后来为解决导纳法的收敛性较差的问题,出现了以阻抗矩阵为基础的逐次代入法(阻抗法)。
到六十年代,针对阻抗法占用计算机内存大的问题又出现了分块阻抗法及牛顿-拉夫逊(Newton-Raphson)法。
Newton —Raphson法是数学上解非线形方程式的有效方法,有较好的收敛性。
将N-R法用于潮流计算是以导纳矩阵为基础的,由于利用了导纳矩阵的对称性、稀疏性及节点编号顺序优化等技巧,使N-R法在收敛性、占用内存、计算速度方面的优点都超过了阻抗法,成为六十年代末期以后普遍采用的方法。
同时国内外广泛研究了诸如非线形规划法、直流法、交流法等各种不同的潮流计算方法。
七十年代以来,又涌现出了更新的潮流计算方法。
其中有1974年由B、Stott、O、Alsac 提出的快速分解法以及1978年由岩本伸一等提出的保留非线性的高129速潮流计算法。
其中快速分解法(Fast decoupled load flow)从1975年开始已在国内使用,并习惯称之为PQ分解法。
由于PQ分解法在计算速度上大大超过N-R法,不但能应用于离线潮流计算,而且也能应用于在线潮流计算。
电力系统分析潮流计算的计算机算法

电⼒系统分析潮流计算的计算机算法潮流计算的计算机算法实验报告姓名:学号:班级:⼀、实验⽬的掌握潮流计算的计算机算法。
熟悉MATLAB,并掌握MATLAB程序的基本调试⽅法。
⼆、实验准备根据课程内容,熟悉MATLAB软件的使⽤⽅法,⾃⾏学习MATLAB程序的基础语法,并根据所学知识编写潮流计算⽜顿拉夫逊法(或PQ分解法) 的计算程序,⽤相应的算例在MATLAB上进⾏计算、调试和验证。
三、实验要求每⼈⼀组,在实验课时内,⽤MATLAB调试和修改运⾏程序,⽤算例计算输出潮流结果。
四、实验程序clear; %清空内存n=input('请输⼊节点数:n=');n1=input('请输⼊⽀路数:n1=');isb=input('请输⼊平衡节点号:isb=');pr=input('请输⼊误差精度:pr=');B1=input('请输⼊⽀路参数:B1=');B2=input('请输⼊节点参数:B2=');X=input('节点号和对地参数:X=');Y=zeros(n);Times=1;%⼀:创建节点导纳矩阵for i=1:n1if B1(i,6)==0 %不含变压器的⽀路p=B1(i,1);q=B1(i,2);Y(p,q)=Y(p,q)-1/B1(i,3);Y(q,p)=Y(p,q);Y(p,p)=Y(p,p)+1/B1(i,3)+0.5*B1(i,4);Y(q,q)=Y(q,q)+1/B1(i,3)+0.5*B1(i,4);else %含有变压器的⽀路p=B1(i,1);Y(q,p)=Y(p,q);Y(p,p)=Y(p,p)+1/B1(i,3);Y(q,q)=Y(q,q)+1/(B1(i,5)^2*B1(i,3));endendY;%将OrgS、DetaS初始化OrgS=zeros(2*n-2,1);DetaS=zeros(2*n-2,1);%⼆:创建OrgS,⽤于存储初始功率参数h=0;j=0;for i=1:n %对PQ节点的处理if i~=isb&B2(i,6)==2h=h+1;for j=1:nOrgS(2*h-1,1)=OrgS(2*h-1,1)+real(B2(i,3))*(real(Y(i,j))*real(B2(j,3))-imag(Y(i,j ))*Imag(B2(j,3)))+imag(B2(i,3))*(real(Y(i,j))*imag(B2(j,3))+imag(Y(i,j))*real(B2(j,3)));OrgS(2*h,1)=OrgS(2*h,1)+imag(B2(i,3))*(real(Y(i,j))*real(B2(j,3))-imag(Y(i,j))*i mag(B2(j,3)))-real(B2(i,3))* (real(Y(i,j))*imag(B2(j,3))+imag(Y(i,j))*real(B2(j,3)));endendend%三:对PV节点的处理,注意这时不可再将h初始化为0for i=1:nif i~=isb&B2(i,6)==3h=h+1;for j=1:nOrgS(2*h-1,1)=OrgS(2*h-1,1)+real(B2(i,3))*(real(Y(i,j))*real(B2(j,3))-imag(Y(i,j ))*imag(B2(j,3)))+imag(B2(i,3))* (real(Y(i,j))*imag(B2(j,3))+imag(Y(i,j))*real(B2(j,3)));OrgS(2*h,1)=OrgS(2*h,1)+imag(B2(i,3))*(real(Y(i,j))*real(B2(j,3))-imag(Y(i,j))*i mag(B2(j,3)))-real(B2(i,3))* (real(Y(i,j))*imag(B2(j,3))+imag(Y(i,j))*real(B2(j,3)));endend%四:创建PVU ⽤于存储PV节点的初始电压PVU=zeros(n-h-1,1);t=0;for i=1:nif B2(i,6)==3t=t+1;PVU(t,1)=B2(i,3);endendPVU;%五:创建DetaS,⽤于存储有功功率、⽆功功率和电压幅值的不平衡量h=0; for i=1:n %对PQ节点的处理if i~=isb&B2(i,6)==2h=h+1;DetaS(2*h-1,1)=real(B2(i,2))-OrgS(2*h-1,1);DetaS(2*h,1)=imag(B2(i,2))-OrgS(2*h,1);endendt=0;for i=1:n%六:对PV节点的处理,注意这时不可再将h初始化为0if i~=isb&B2(i,6)==3h=h+1;t=t+1;DetaS(2*h-1,1)=real(B2(i,2))-OrgS(2*h-1,1);DetaS(2*h,1)=real(PVU(t,1))^2+imag(PVU(t,1))^2-real(B2(i,3))^2-imag( B2(i,3))^2;endendDetaS;%七:创建I,⽤于存储节点电流参数i=zeros(n-1,1);h=0;h=h+1;I(h,1)=(OrgS(2*h-1,1)-OrgS(2*h,1)*sqrt(-1))/conj(B2(i,3));endendI;%⼋:创建Jacbi(雅可⽐矩阵)Jacbi=zeros(2*n-2);h=0;k=0;for i=1:n %对PQ节点的处理if B2(i,6)==2h=h+1;for j=1:nif j~=isbk=k+1;if i==j %对⾓元素的处理Jacbi(2*h-1,2*k-1)=-imag(Y(i,j))*real(B2(i,3))+real(Y(i,j))*imag(B2(i,3))+imag(I (h,1)); Jacbi(2*h-1,2*k)=real(Y(i,j))*real(B2(i,3))+imag(Y(i,j))*imag(B2(i,3))+real(I(h,1));Jacbi(2*h,2*k-1)=-Jacbi(2*h-1,2*k)+2*real(I(h,1));Jacbi(2*h,2*k)=Jacbi(2*h-1,2*k-1)-2*imag(I(h,1));else %⾮对⾓元素的处理Jacbi(2*h-1,2*k-1)=-imag(Y(i,j))*real(B2(i,3))+real(Y(i,j))*imag(B2(i,3));Jacbi(2*h-1,2*k)=real(Y(i,j))*real(B2(i,3))+imag(Y(i,j))*imag(B2(i,3));Jacbi(2*h,2*k-1)=-Jacbi(2*h-1,2*k);Jacbi(2*h,2*k)=Jacbi(2*h-1,2*k-1);endif k==(n-1) %将⽤于内循环的指针置于初始值,以确保雅可⽐矩阵换⾏k=0;endendendendfor i=1:n %对PV节点的处理if B2(i,6)==3h=h+1;for j=1:nif j~=isbk=k+1;if i==j %对⾓元素的处理Jacbi(2*h-1,2*k-1)=-imag(Y(i,j))*real(B2(i,3))+real(Y(i,j))*imag(B2(i,3))+imag(I (h,1)); Jacbi(2*h-1,2*k)=real(Y(i,j))*real(B2(i,3))+imag(Y(i,j))*imag(B2(i,3))+real(I(h,1)) ; Jacbi(2*h,2*k-1)=2*imag(B2(i,3));Jacbi(2*h,2*k)=2*real(B2(i,3));else %⾮对⾓元素的处理Jacbi(2*h-1,2*k-1)=-imag(Y(i,j))*real(B2(i,3))+real(Y(i,j))*imag(B2(i,3));Jacbi(2*h-1,2*k)=real(Y(i,j))*real(B2(i,3))+imag(Y(i,j))*imag(B2(i,3));Jacbi(2*h,2*k-1)=0;Jacbi(2*h,2*k)=0;endif k==(n-1) %将⽤于内循环的指针置于初始值,以确保雅可⽐矩阵换⾏k=0;endendendendendJacbi;%九:求解修正⽅程,获取节点电压的不平衡量DetaU=zeros(2*n-2,1);DetaU=inv(Jacbi)*DetaS;DetaU;%修正节点电压j=0;for i=1:n %对PQ节点处理if B2(i,6)==2for i=1:n %对PV节点的处理if B2(i,6)==3j=j+1;B2(i,3)=B2(i,3)+DetaU(2*j,1)+DetaU(2*j-1,1)*sqrt(-1);endendB2;%⼗:开始循环**********************************************************************while abs(max(DetaU))>prOrgS=zeros(2*n-2,1); %初始功率参数在迭代过程中是不累加的,所以在这⾥必须将其初始化为零矩阵h=0;j=0;for i=1:nif i~=isb&B2(i,6)==2h=h+1;for j=1:nOrgS(2*h-1,1)=OrgS(2*h-1,1)+real(B2(i,3))*(real(Y(i,j))*real(B2(j,3))-imag(Y(i,j ))*imag(B2(j,3)))+imag(B2(i,3))* (real(Y(i,j))*imag(B2(j,3))+imag(Y(i,j))*real(B2(j,3)));OrgS(2*h,1)=OrgS(2*h,1)+imag(B2(i,3))*(real(Y(i,j))*real(B2(j,3))-imag(Y(i,j))*i mag(B2(j,3)))-real(B2(i,3))* (real(Y(i,j))*imag(B2(j,3))+imag(Y(i,j))*real(B2(j,3)));endendendfor i=1:nif i~=isb&B2(i,6)==3h=h+1;for j=1:nOrgS(2*h-1,1)=OrgS(2*h-1,1)+real(B2(i,3))*(real(Y(i,j))*real(B2(j,3))-imag(Y(i,j ))*imag(B2(j,3)))+imag(B2(i,3))* (real(Y(i,j))*imag(B2(j,3))+imag(Y(i,j))*real(B2(j, 3)));OrgS(2*h,1)=OrgS(2*h,1)+imag(B2(i,3))*(real(Y(i,j))*real(B2(j,3))-imag(Y(i,j))*i mag(B2(j,3)))-real(B2(i,3))* (real(Y(i,j))*imag(B2(j,3))+imag(Y(i,j))*real(B2(j,3)));%创建DetaSh=0;for i=1:nif i~=isb&B2(i,6)==2h=h+1;DetaS(2*h-1,1)=real(B2(i,2))-OrgS(2*h-1,1);DetaS(2*h,1)=imag(B2(i,2))-OrgS(2*h,1);endendt=0;for i=1:nif i~=isb&B2(i,6)==3h=h+1;t=t+1;DetaS(2*h-1,1)=real(B2(i,2))-OrgS(2*h-1,1);DetaS(2*h,1)=real(PVU(t,1))^2+imag(PVU(t,1))^2-real(B2(i,3))^2-imag(B2(i, 3))^2; endendDetaS;%创建Ii=zeros(n-1,1);h=0;for i=1:nif i~=isbh=h+1;I(h,1)=(OrgS(2*h-1,1)-OrgS(2*h,1)*sqrt(-1))/conj(B2(i,3));endendI;%创建JacbiJacbi=zeros(2*n-2);for i=1:nif B2(i,6)==2h=h+1;for j=1:nif j~=isbk=k+1;if i==jJacbi(2*h-1,2*k-1)=-imag(Y(i,j))*real(B2(i,3))+real(Y(i,j))*imag(B2(i,3))+imag(I (h,1)); Jacbi(2*h-1,2*k)=real(Y(i,j))*real(B2(i,3))+imag(Y(i,j))*imag(B2(i,3))+real(I(h,1)) ; Jacbi(2*h,2*k-1)=-Jacbi(2*h-1,2*k)+2*real(I(h,1));Jacbi(2*h,2*k)=Jacbi(2*h-1,2*k-1)-2*imag(I(h,1));elseJacbi(2*h-1,2*k-1)=-imag(Y(i,j))*real(B2(i,3))+real(Y(i,j))*imag(B2(i,3));Jacbi(2*h-1,2*k)=real(Y(i,j))*real(B2(i,3))+imag(Y(i,j))*imag(B2(i,3));Jacbi(2*h,2*k-1)=-Jacbi(2*h-1,2*k);Jacbi(2*h,2*k)=Jacbi(2*h-1,2*k-1);endif k==(n-1)k=0;endendendendendk=0;for i=1:nif B2(i,6)==3h=h+1;for j=1:nif j~=isbk=k+1;if i==jJacbi(2*h-1,2*k-1)=-imag(Y(i,j))*real(B2(i,3))+real(Y(i,j))*imag(B2(i,3))+imag(I (h,1));Jacbi(2*h,2*k)=2*real(B2(i,3));elseJacbi(2*h-1,2*k-1)=-imag(Y(i,j))*real(B2(i,3))+real(Y(i,j))*imag(B2(i,3)); Jacbi(2*h-1,2*k)=real(Y(i,j))*real(B2(i,3))+imag(Y(i,j))*imag(B2(i,3)); Jacbi(2*h,2*k-1)=0;Jacbi(2*h,2*k)=0;endif k==(n-1)k=0;endendendendendJacbi;DetaU=zeros(2*n-2,1);DetaU=inv(Jacbi)*DetaS;DetaU;%修正节点电压j=0;for i=1:nif B2(i,6)==2j=j+1;B2(i,3)=B2(i,3)+DetaU(2*j,1)+DetaU(2*j-1,1)*sqrt(-1);endendfor i=1:nif B2(i,6)==3j=j+1;B2(i,3)=B2(i,3)+DetaU(2*j,1)+DetaU(2*j-1,1)*sqrt(-1);endendB2;Times;五、实验流程六、实验结果参数输⼊:运⾏结果:七、实验体会通过这次实验,让我第⼀次接触到了MATLAB,并深切体会到了它的强⼤之处;潮流计算的计算机算法的实现不仅巩固了我的学过的知识,还让我学到⼀些MATLAB的编程,虽然在实验的过程中出现了很多的错误,但在⽼师的细⼼指导下,问题都解决啦;计算机为我们省去了⼤量的⼈⼯计算,希望在以后的学习中能接触到更多的软件,学习。
潮流的计算机算法ppt课件

2020/3/31
1
带有最优 乘子的牛 顿潮流算
法
牛拉 法
保留非线 性直角坐
标法
保留非线 性直角坐 标快速潮
流法
简
简化
化
满足初 始条件 时为等 效算法
PQ分 解法
定雅克 比牛顿
法
2020/3/31
基本潮流
最优潮流牛顿算法
最优潮流简化梯度 算法
优化潮流
2
算法名称
算法特性
最优乘子法
能够有效地解决病态系统的潮流计算,且 永远不换发散
2020/3/31
3
内容提要
功率方程 牛拉法 P-Q分解法 保留非线性潮流算法 最小化潮流算法 最优潮流 潮流计算中稀疏技术的运用
2020/3/31
4
➢功率方程
电力系统中已知的往往是功率,需要用已知的功率来代替未
知的电流:
S%i
Pi
代入H、L的表达式
i j时
H ij
Pi
j
UiU j (Gij sin ij
Bij cosij )
cosij 1,Gij sinij 0 U iU j Bij
Lij
Pi U j
Uj
UiU j (Gij
sin ij
Bij
cosij )
cosij 1,Gij sinij 0 U iU j Bij
2020/3/31
15
i j时
H ii
Pi
i
Qi
U
2 i
Bii
U
B2
i ii
Lii
Qi
U
2 i
Bii
U
2 i
潮流计算的基本算法及使用方法

潮流计算的基本算法及使用方法Company number:【0089WT-8898YT-W8CCB-BUUT-202108】潮流计算的基本算法及使用方法一、 潮流计算的基本算法1.牛顿-拉夫逊法1.1 概述牛顿-拉夫逊法是目前求解非线性方程最好的一种方法。
这种方法的特点就是把对非线性方程的求解过程变成反复对相应的线性方程求解的过程,通常称为逐次线性化过程,就是牛顿-拉夫逊法的核心。
牛顿-拉夫逊法的基本原理是在解的某一邻域内的某一初始点出发,沿着该点的一阶偏导数——雅可比矩阵,朝减小方程的残差的方向前进一步,在新的点上再计算残差和雅可矩阵继续前进,重复这一过程直到残差达到收敛标准,即得到了非线性方程组的解。
因为越靠近解,偏导数的方向越准,收敛速度也越快,所以牛顿法具有二阶收敛特性。
而所谓“某一邻域”是指雅可比方向均指向解的范围,否则可能走向非线性函数的其它极值点,一般来说潮流由平电压即各母线电压(相角为0,幅值为1)启动即在此邻域内。
1.2 一般概念对于非线性代数方程组即 ()0,,,21=n i x x x f ()n i ,2,1= (1-1)在待求量x 的某一个初始计算值()0x 附件,将上式展开泰勒级数并略去二阶及以上的高阶项,得到如下的线性化的方程组()()()()()0000=∆'+x x f x f (1-2)上式称之为牛顿法的修正方程式。
由此可以求得第一次迭代的修正量()()()[]()()0100x f x f x -'-=∆ (1-3)将()0x ∆和()0x 相加,得到变量的第一次改进值()1x 。
接着再从()1x 出发,重复上述计算过程。
因此从一定的初值()0x 出发,应用牛顿法求解的迭代格式为()()()()()k k k x f x x f -=∆' (1-4)()()()k k k x x x ∆+=+1 (1-5)上两式中:()x f '是函数()x f 对于变量x 的一阶偏导数矩阵,即雅可比矩阵J ;k 为迭代次数。
潮流计算的基本算法及使用方法

潮流计算的基本算法及使用方法一、 潮流计算的基本算法1. 牛顿-拉夫逊法1.1 概述牛顿-拉夫逊法是目前求解非线性方程最好的一种方法;这种方法的特点就是把对非线性方程的求解过程变成反复对相应的线性方程求解的过程,通常称为逐次线性化过程,就是牛顿-拉夫逊法的核心;牛顿-拉夫逊法的基本原理是在解的某一邻域内的某一初始点出发,沿着该点的一阶偏导数——雅可比矩阵,朝减小方程的残差的方向前进一步,在新的点上再计算残差和雅可矩阵继续前进,重复这一过程直到残差达到收敛标准,即得到了非线性方程组的解;因为越靠近解,偏导数的方向越准,收敛速度也越快,所以牛顿法具有二阶收敛特性;而所谓“某一邻域”是指雅可比方向均指向解的范围,否则可能走向非线性函数的其它极值点,一般来说潮流由平电压即各母线电压相角为0,幅值为1启动即在此邻域内; 1.2 一般概念对于非线性代数方程组即 ()0,,,21=n i x x x f ()n i ,2,1= 1-1在待求量x 的某一个初始计算值()0x 附件,将上式展开泰勒级数并略去二阶及以上的高阶项,得到如下的线性化的方程组()()()()()0000=∆'+x x f x f 1-2上式称之为牛顿法的修正方程式;由此可以求得第一次迭代的修正量()()()[]()()0100x f x f x -'-=∆ 1-3将()0x ∆和()0x 相加,得到变量的第一次改进值()1x ;接着再从()1x 出发,重复上述计算过程;因此从一定的初值()0x 出发,应用牛顿法求解的迭代格式为()()()()()k k k x f x x f -=∆' 1-4()()()k k k x x x ∆+=+1 1-5上两式中:()x f '是函数()x f 对于变量x 的一阶偏导数矩阵,即雅可比矩阵J ;k 为迭代次数;由式1-4和式子1-5可见,牛顿法的核心便是反复形成求解修正方程式;牛顿法当初始估计值()0x 和方程的精确解足够接近时,收敛速度非常快,具有平方收敛特性;1.3 潮流计算的修正方程运用牛顿-拉夫逊法计算潮流分布时,首先要找出描述电力系统的非线性方程;这里仍从节点电压方程入手,设电力系统导纳矩阵已知,则系统中某节点i 节点电压方程为从而得∑=**••=nj j ij i i U Y U S 1进而有()01=-+*=*•∑j n j ij i i i U Y U jQ P1-6式1-6中,左边第一项为给定的节点注入功率,第二项为由节点电压求得的节点注入功率;他们二者之差就是节点功率的不平衡量;现在有待解决的问题就是各节点功率的不平衡量都趋近于零时,各节点电压应具有的价值;由此可见,如将式1-6作为牛顿-拉夫逊中的非线性函数()0=X F ,其中节点电压就相当于变量X ;建立了这种对应关系,就可列出修正方程式,并迭代求解;但由于节点电压可有两种表示方式——以直角做表或者极坐标表示,因而列出的迭代方程相应地也有两种,下面分别讨论;1.3.1 直角坐标表示的修正方程节点电压以直角坐标表示时,令i i i jf e U +=•、j j j jf e U +=•,且将导纳矩阵中元素表示为ij ij ij jB G Y +=,则式1-7改变为 ()()()()01=--+-+∑=nj j j ij ij i i i i jf e jB G jf e jQ P1-7再将实部和虚部分开,可得()()[]()()[]⎪⎪⎭⎪⎪⎬⎫=+---=++--∑∑==0011nj j ij j ij i j ij j ij i i nj j ij j ij i j ij j ij i i e B f G e f B e G f Q e B f G f f B e G e P 1-8这就是直角坐标下的功率方程;可见,一个节点列出了有功和无功两个方程;对于PQ 节点1,,21-=m i ,,给定量为节点注入功率,记为i P '、i Q ',则由式2-8可得功率的不平衡量,作为非线性方程()()[]()()[]⎪⎪⎭⎪⎪⎬⎫+---'=∆++--'=∆∑∑==nj j ij j ij i j ij j ij i i i nj j ij j ij i j ij j ij i i i e B f G e f B e G f Q Q e B f G f f B e G e P P 11 1-9式中i P ∆、i Q ∆——分别表示第i 节点的有功功率的不平衡量和无功功率的不平衡量;对于PV 节点n m m i ,,2,1 ++=,给定量为节点注入有功功率及电压数值,记为i P '、i U ',因此,可以利用有功功率的不平衡量和电压的不平衡量表示出非线性方程,即有()()[]()⎪⎭⎪⎬⎫+-'=∆++--'=∆∑=22221i i i i nj j ij j ij i j ij j ij i i i f e U U e B f G f f B e G e P P1-10式中i U ∆为电压的不平衡量;对于平衡节点m i =,因为电压数值及相位角给定,所以S s S jf e U +=•也确定,不需要参加迭代求节点电压;因此,对于n 个节点的系统只能列出()12-n 个方程,其中有功功率方程()1-n 个,无功功率方程()1-m 个,电压方程()m n -个;将式1-9、式1-10 非线性方程联立,称为n 个节点系统的非线性方程组,且按泰勒级数在()0i f 、()0i e m i n i ≠=,,,2,1 展开,并略去高次项,得到以矩阵形式表示的修正方程如下⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡∆∆∆∆∆∆∆∆⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡∆∆∆∆∆∆∆∆n n p p nn nnnpnpn n n n nn nn np np n n n n pn pn pp pp p p p p pn pn pp pp p p p p n n p p n n p p n n p p n n p p n n pp e f e f e f e f S R S R S R S R N H N H N H N H S R S R S R S R N H N H N H N H L J L J L J L J N H N H N H N H L J L J L J L J N H N H N H N H U P U P Q P Q P 22112211221122112211222222222121222222222121111112121111111112121111222211 1-11 上式中雅可比矩阵的各个元素则分别为 将1-11写成缩写形式[]⎥⎦⎤⎢⎣⎡∆∆=⎥⎦⎤⎢⎣⎡∆∆⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡∆∆∆e f e f S RL J N HU Q P J 2 1-12 对雅可比矩阵各元素可做如下讨论:当i j ≠时,对于特定的j ,只有该特定点的i f 和i e 是变量,于是雅可比矩阵中各非对角元素表示为当i j =时,雅可比矩阵中各对角元素的表示式为由上述表达式可知,直角坐标的雅可比矩阵有以下特点:1) 雅可比矩阵是()12-n 阶方阵,由于ji ij H H ≠、ji ij N N ≠等等,所以它是一个不对称的方阵;2) 雅可比矩阵中诸元素是节点电压的函数,在迭代过程中随电压的变化而不断地改变;3) 雅可比矩阵的非对角元素与节点导纳矩阵B Y 中对应的非对角元素有关,当B Y 中的ij Y 为零时,雅可比矩阵中相应的ij H 、ij N 、ij J 、ij L 也都为零,因此,雅可比矩阵也是一个稀疏矩阵;1.3.2 极坐标表示的修正方程在牛顿-拉夫逊计算中,选择功率方程∑=**•=-+nj j ij i i i U Y U jQ P 10作为非线性函数方程,把式中电压向量表示为极坐标形式 则节点功率方程变为 将上式分解成实部和虚部这就是功率方程的极坐标形式,由此可得到描述电力系统的非线性方程;对于PQ 节点,给定了()()⎪⎪⎭⎪⎪⎬⎫--'=+-'=∆∑∑==nj ij ij ij ij j i i i nj ij ij ij ij j i i i B G U U Q Q B G U U P P 11cos sin sin cos δδδδ ()121-=m i 、、 1-13对于PV 节点,给定了i P '、i U ',而i Q '未知,式1-13中i Q ∆将失去作用,于是PV 节点仅保留i P ∆方程,以求得电压的相位角;1-14对于平衡节点,同样因为s U 、s δ已知,不参加迭代计算;将式1-13、式1-14联立,且按泰勒级数展开,并略去高次项后,得出矩阵形式的修正方程⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡∆∆∆∆∆∆⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡∆∆∆∆∆∆n p nnnpn n n n pn pp p p p p n p n p n p n p n p U UU U H H N H N H H H N H N H L J L J L J N H N H N H L J L J L J H H N H N H P P Q P Q P δδδδ 22211122112211222121212122212121211112121111111212111122111-15雅可比矩阵终,对PV 节点,仍可写出两个方程的形式,但其中的元素以零元素代替,从而显示了雅可比矩阵的高度稀疏性;式中电压幅值的修正量采用U U ∆的形式,并没有什么特殊意义,仅是为了雅可比矩阵中各元素具有相似的表达式; 雅可比矩阵的各元素如下 将式1-15写成缩写形式⎥⎥⎦⎤⎢⎢⎣⎡∆∆⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡∆∆U U L J N HQ P δ1-16以上得到了两种坐标系下的修正方程,这是牛顿-拉夫逊潮流计算中需要反复迭代求解的基本方程式;2. 快速分解法2.1 概述快速分解法的基本思想是:把节点功率表示为电压向量的极坐标方程式,抓主要矛盾,以有功功率误差作为修正电压向量角度的依据,以无功功率误差作为修正电压幅值的依据,把有功功率和无功功率的迭代分开来进行;快速分解法根据电力系统实际运行状态的物理特点,对牛顿-拉夫逊法潮流计算的数学模型进行合理的简化;2.2 基本公式在交流高压电网中,输电线路的电抗要比电阻大得多,系统中母线有功功率的变化主要受电压相位的影响,无功功率的变化主要受母线电压幅值变化的影响;在修正方程式的系数矩阵中,偏导数δ∂∆∂Q 和V P ∂∆∂的数值相对于偏导数V Q ∂∆∂和δ∂∆∂P是相当小的,作为简化的第一步,可以将方程式2-1中的子块N 和K 略去不计,即认为它们的元素都等于零;这样,m n +-1阶的方程式便分解为一个1-n 阶和一个m 阶的方程式,即将式2-1简化为式2-2和式2-3;⎥⎦⎤⎢⎣⎡∆∆⎥⎦⎤⎢⎣⎡-=⎥⎦⎤⎢⎣⎡∆∆-V V L K N H Q P 1D δ 2-1 δ∆-=∆H P 2-2V LV Q 1D ∆-=∆- 2-3上述的简化大大地节省了计算机的内存和解题时间,但是矩阵H 和L 的元素都是节点电压幅值和相角差的函数,其数值在迭代过程中是不断变化的;因此,快速分解法潮流计算的第二个简化,也是最关键的一步简化就在于把系数矩阵H 和L 简化成在迭代过程中不变的常数对称矩阵;在一般情况下,线路两端电压的相角差是不大的通常不超过 10~ 20因此可以认为1cos ≈ij δ , ij ij ij B G <<δsin 2-4此外,与系统各节点无功功率相适应的导纳LDi B 必远小于该节点自导纳的虚部,即ii iiLDi B V Q B <<=2 或 ii i i B V Q 2<< 考虑到上面的关系,矩阵H 和L 的元素的表达式便被简化为ij j i ij B V V H = i,j=1,2,…,n -1 2-5 ij j i ij B V V L = i,j=1,2,…,m 2-6⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=------------11,1122,1111,1111,222222121211,1121211111n n n n n n n n n n n n V B V V B V V B V V B V V B V VB V V B V V B V V B VH 2-7⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=m mm m m m m m m m m m V B V V B V V B V V B V V B V V B V V B V V B V V B V221122222212121121211111L 2-8将式2-7和式2-8分别代入式2-2和2-3,便得到:用11-D V 和12-D V 分别左乘以上两式便得简化了的修正方程式,可展开写成:⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡∆∆∆⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-=⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡∆∆∆--------=-1122111,12,11,11,222211,11211112211δδδn n n n n n n n n n V V V B B B B B B B B B V P V P V P2-9⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡∆∆∆⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-=⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡∆∆∆m mm m m m m m m V V V B B B B B B B B B V Q V Q V Q212122221112112211 2-10 式2-9和式2-10就是快速分解法潮流计算的修正方程式,其中系数矩阵都是由节点导纳矩阵的虚部构成,只是阶次不同,矩阵B '为1-n 阶,不含平衡节点对应的行和列,矩阵B ''为m 阶,不含平衡节点和PV 节点对应的行和列;()∑=+-=-=∆nj ij ij ij ij j i is i is i B G V V P P P P 1δsin δcos 2-11∑=+-=-=∆nj ij ij ij ij j i is i is i B G V V Q Q Q Q 1)δcos δsin ( 2-12修正方程式2-9和2-10与功率误差方程式2-11和2-12构成了快速分解法迭代的基本计算公式; 2.3 快速分解法的特点快速分解法与牛顿法潮流计算的主要差别表现在它们的修正方程上;快速分解法通过对电力系统具体特点的分析,对牛顿法修正方程式的雅克比矩阵进行了有效的简化和改进,得到式2-9、式2-10所示的修正方程式;这两组方程式和牛顿法的修正方程相比主要有三个特点:a 快速分解法的修正方程式用两个n 阶线性方程组代替了一个n 2阶线方程组;b 快速分解法的修正方程式中系数矩阵的所有元素在迭代过程中维持常数不变;c 快速分解法的修正方程式中系数矩阵是对称矩阵;这些特点在提高计算速度和减少内存方面的作用是很明显的:首先,因为修正方程式的系数矩阵是导纳矩阵的虚部,因此在迭代过程中不必像牛顿法那样每次都要重新计算雅克比矩阵,这样不仅减少了运算量,而且也大大简化了程序;其次,由于系数矩阵在迭代过程中维持不变,因此在求解修正方程式时,不必每次都对系数矩阵进行消去运算,只需要在进入迭代过程以前,将系数矩阵用三角分解形成因子表,然后反复利用因子表对不同的常数项V P /∆或V Q /∆进行消去和回代运算,就可以迅速求得修正量,从而显着提高了迭代速度;第三,由于对称矩阵三角分解后,其上三角矩阵和下三角矩阵有非常简单的关系,所以在计算机中可以只存储上三角矩阵或下三角矩阵,从而也进一步节约了内存;快速分解法所采用的一系列简化假定只影响了修正方程的结构,也就是说只影响了迭代过程,但未影响最终结果;因为快速分解法和牛顿法都采用同样的数学模型,最后计算功率误差和判断收敛条件都是严格按照精确公式进行的,所以快速分解法和牛顿法一样都可以达到很高的精确度;为了改善快速分解法的收敛特性,修正方程的系数矩阵B '与B ''一般并不简单的是电力系统导纳矩阵的虚部,下面讨论一下B '与B ''的构成;B '与B ''的阶数是不同的,B '为 1-n 阶,B ''低于1-n 阶;因为式2-10不包含于PV 节点有关的项,所以,如果系统有r 个PV 节点,则B ''应为1--r n 阶;式2-9以有功功率误差为依据修正电压向量的角度,式2-10以无功功率误差依据修正电压幅值;为了加速收敛,使它们能够更有效地进行修正,可以考虑在B '中尽量去掉那些与有功功率及电压向量角度无关或影响较小的因素,而在B ''中尽量去掉与无功功率及电压幅值影响较小的因素;所以,我们以电力系统导纳矩阵的虚部作为B '和B ''时,可以在B '去掉充电电容和变压器变比的影响,在B ''中去掉输电线路电阻对B ''的影响;B '和B ''的非对角元素和对角元素可分别按式2-13和2-14计算:22ijijij ijxr x B +-=' ∑∈+='ij ijijij iixr x B 22ij x B 1-='' ∑∈-=''i j i ijb x B 01式2-13中ij r 和ij x 分别为支路ij 的电阻和感抗,式2-14中0i b 为节点i 接地支路的电纳;快速分解法改变了牛顿法迭代公式的结构,因此就改变了迭代过程的收敛性;牛顿法在迭代开始时收敛得较慢,当收敛到一定程度后,它的收敛速度非常之快,而快速分解法几乎是按同一速度收敛的,快速分解法每次迭代的计算量很小,因此快速分解法的计算速度比牛顿法有明显的提高;二、 潮流计算的使用方法1. 初始方式准备对任何潮流模拟操作计算,总是在某一个初始的运行方式上进行;这种初始方式可以是状态估计提供的实时运行方式,也可以是以往保存的历史运行方式;2. 调度操作模拟在准备好的初始潮流断面上,可以继续修改方式,模拟预想的潮流运行方式,再进行详细的潮流分析;模拟操作包括:1)开关刀闸变位模拟2)发电机功率调整3)负荷功率设置4)发电机分接头设置5)线路停运、投入6)变压器停运、投入7)母线停运、投入8)厂站停运、投入3.运行参数维护潮流计算参数画面上可以设置算法、收敛判据、迭代次数、单/多平衡机等运行参数;平衡发电机是电气岛内的电压相角参考点,当采用“单平衡机”模式时,电网的不平衡功率包括发电、负荷和网损都将由设定平衡机吸收;当采用“多平衡机”模式时,电网的不平衡功率将由多台发电机负责平衡,多台发电机之间的不平衡功率分配方式包括容量、系数和平均三种方式;选择容量时将根据发电机的可调容量分配,选择系数时根据人工设置的系数按比例分配,选择平均时则平均分配不平衡功率;在分配过程中,确保发电机的出力在最大出力和最小出力范围内;发电机参数中可以设置发电机的调节特性,包括节点类型平衡节点、PQ 节点、PV节点等,对于PV节点可以设定控制机端电压还是高压侧母线电压以及控制的目标电压值,对于按指定系数参与有功调节的机组可以设置比例系数;4.计算结果分析潮流计算结束后,计算结果分析包括:1)潮流计算状态2)电气岛、迭代信息3)潮流计算结果4)设备越限和重载监视5)运行信息5.误差统计在潮流模拟计算完成后,如果现场很快发生了模拟的动作,可以从统计每个测点模拟计算值和实际量测值相比的误差,并统计出全网平均误差,统计方法遵循实用化考核细则;在表格中全部列出所有测点的SCADA量测值、潮流模拟计算值、考核基准值以及测点误差等内容;如果只关心部分厂站的误差情况,局部误差统计中选择好需要关心的厂站,局部误差统计程序会过滤掉没有选中的厂站,只列出选中厂站的所有设备的误差统计情况;如果想要保存当前误差统计的运行断面,可以保存误差断面,将当前的断面以及误差统计结果一起保存起来;误差统计历史记录包含所有保存的误差断面,内容包括统计时间、平均误差、执行用户、值班主机、断面名称以及操作信息等内容;。
潮流算法——精选推荐

配电网的前推回推法潮流计算的计算机算法一、用途潮流计算是电力系统非常重要的分析计算,用以研究系统规划和运行中提出的各种问题。
对规划中的电力系统,通过潮流计算可以检验所提出的电力系统规划方案能否满足各种运行方式的要求:对运行中的电力系统,通过潮流计算可以预知各种负荷变化和网络结构的改变会不会危机系统的安全,系统中所有母线的电压是否在允许的范围以内,系统中各种元件(线路、变压器等)是否会出现过负荷,以及可能出现过负荷时应事先采取哪些预防措施等。
潮流计算是电力系统分析最基本的计算。
除他自身的重要作用之外,潮流计算还是网损计算、静态安全分析、暂态稳定计算、小干扰静态稳定计算、短路计算、静态和动态等值计算的基础。
二、技术特点在辐射状配电网的潮流计算中,采用基于支路电流或支路功率的前推回推法进行潮流计算,其中在寻找节点的计算顺序时采用关于节点邻接表的广度优先搜索方法,或者其他更加简洁的方法。
1、原理配电网潮流有很多算法,主要包括牛顿法、快速解耦法、Z法、bus 回路阻抗法和前推回推法,其中前推回推法具有更大的优势,更适于求解配电网的潮流计算。
它具有编程简单、数值稳定性好、计算效率高等优点。
辐射型配电网的接线方式可以分为辐射式、链式、干线式三种网络。
辐射型配电网潮流计算有如下特点:(1)辐射型配电网支路数一定小于节点数。
因此,网络节点导纳矩阵稀疏度很高。
(2)低压配电网由于线路电阻较大,一般不满足R<<X,因此在配电网中采用P-Q解耦法进行网络潮流计算难以收敛;由于配电网络直接面向用户,所以网络节点众多,如采用传统的潮流算法(牛顿拉夫逊法、快速解耦法)会导致导纳矩阵非常庞大,处理的工作量较大,占用的资源也较多。
(3)对于末端负荷节点前的支路电流就只是由于末端运算负荷功率产生的,所以可以直接用于末端支路的电流,依次往前推。
因此,可以采用前推回推法进行网络潮流计算。
前推回推法有基于支路电流和基于支路功率两种形式。
潮流计算的主要方法

潮流计算的主要方法
最近几年,随着计算机仿真技术和复杂系统全面发展,潮流计算也受到越来越多的重视。
潮流计算是研究不同电力网络的物理特性和操作规律的一项重要工作。
针对潮流计算的主要方法,总结如下:
一、基于动力学的方法
1. 碰撞模型:根据动力学方法,计算电力系统的运行稳定性。
基于动力学的碰撞模型能够快速而精确地预测两个潮流的变化情况。
2. 时变快速收敛:在碰撞模型的基础上,为快速求解电力系统潮流,提出了时变快速收敛算法。
可以更快地获得潮流解。
二、基于牛顿迭代法的方法
1.牛顿迭代潮流计算方法:根据牛顿迭代法,采用迭代算法,求解电力系统潮流运行状态。
2. 功率流计算方法:计算机基于牛顿迭代法,快速求解节点电能的功率流公式。
可以有效的缩短潮流计算的时间,提高计算效率。
三、基于模糊聚类算法的方法
1. 基于模糊聚类的潮流计算方法:采用模糊聚类算法,对潮流计算进行多维度分析,可以得出最优的潮流结果。
2. 基于模糊划分的多目标模糊控制:根据模糊聚类理论,对潮流算法进行最佳控制,以满足电力网不同优化目标。
四、基于期望最大化的方法
1、基于粒子群优化的潮流计算方法:采用粒子群优化算法,将电力网潮流计算定义为多目标最优化问题,以期望最大化来求解潮流值,提高计算效率。
2、基于遗传算法的潮流计算方法:遗传算法利用进化过程来搜索全局最优解,使用遗传变异原则来改变候选解,以期望最大化来求解潮流计算问题。
潮流计算的计算机方法

一、潮流计算的计算机方法对于复杂网络的潮流计算,一般必须借助电子计算机进行。
其计算步骤是:建立电力网络的数学模型,确定计算方法、制定框图和编制程序。
本章重点介绍前两部分,并着重阐述在电力系统潮流实际计算中常用的、基本的方法。
1,电力网络的数学模型电力网络的数学模型指的是将网络有关参数相变量及其相互关系归纳起来所组成的.可以反映网络性能的数学方程式组。
也就是对电力系统的运行状态、变量和网络参数之间相互关系的—种数学描述。
电力网络的数学模型有节点电压方程和回路电流方程等,前者在电力系统潮流计算中广泛采用。
节点电压方程又分为以节点导纳矩阵表示的节点电压方程和以节点阻抗矩阵表示的节点电压方程。
(1)节点导纳矩阵在电路理论课中。
已讲过了用节点导纳矩阵表示的节点电压方程:对于n个节点的网络其展开为:上式中,I是节点注入电流的列向量。
在电力系统计算中,节点注入电流可理解为节点电源电流与负荷电流之和,并规定电源向网络节点的注人电流为正。
那么,只有负荷节点的注入电流为负,而仅起联络作用的联络节点的注入电流为零。
U是节点电压的列向量。
网络中有接地支路时,通常以大地作参考点,节点电压就是各节点的对地电压。
并规定地节点的编号为0。
y是一个n×n阶节点导纳矩阵,其阶数n就等于网络中除参考节点外的节点数。
物理意义:节点i单位电压,其余节点接地,此时各节点向网络注入的电流就是节点i 的自导纳和其余节点的与节点i之间的互导纳。
特点:对称矩阵,稀疏矩阵,对角占优(2) 节点阻抗矩阵对导纳阵求逆,得:其中称为节点阻抗矩阵,是节点导纳矩阵的逆阵。
物理意义:节点i注入单位电流,其余节点不注入电流,此时各节点的电压就是节点i 的自阻抗和其余节点的与节点i之间的互阻抗。
特点:满阵,对称,对角占优2,功率方程、变量和节点分类(1)功率方程已知的是节点的注入功率,因此,需要重新列写方程: **==B B B B B U S I U Y其展开式为: i i i nj j ij U jQ P U Y ~1-=∑= 所以:∑=**=+nj jij i i i U Y U jQ P 1 展开写成极坐标方程的形式:)cos sin ()sin cos (11ij ij ij ij n j j i i ij ij ij ij n j j i i B G U U Q B G U U P δδδδ-=+=∑∑==所以节点的功率方程为:)cos sin ()sin cos (11ij ij ij ij n j j i di Gi i ij ij ij ij nj j i di Gi i B G U U Q Q Q B G U U P P P δδδδ---=∆+--=∆∑∑==(2) 变量分类负荷消耗的有功、无功功率取决于用户,因而是无法控制的,故称为不可控变量或扰动变量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
高等电力系统分析(潮流计算的计算机算法)PQ分解法潮流计算(IEEE14)目录一、MATLAB源程序二、对支路参数(B1)、节点参数(B2)的说明三、带入数据,运行结果一、MATLAB源程序clearclose alln=input('请输入节点数:n=');n1=input('请输入支路数:n1=');isb=input('请输入平衡节点号:isb=');pr=input('请输入误差精度:pr=');B1=input('请输入支路参数:B1=');B2=input('请输入节点参数:B2=');n2=input('请输入PQ节点个数:n2=');Y=zeros(n);for i=1:n1p=B1(i,1);q=B1(i,2);Y(p,q)=Y(p,q)-1/(B1(i,3)+B1(i,4)*1j); %非对角元Y(q,p)=Y(p,q);Y(p,p)=Y(p,p)+1/(B1(i,3)+B1(i,4)*1j)+B1(i,6)*1j; %对角元 Y(q,q)=Y(q,q)+1/(B1(i,3)+B1(i,4)*1j)+B1(i,6)*1j;enddisp('导纳矩阵Y=');disp(Y)%---------------------------------------------%---------------下面是求P,Q,V,O矩阵---------------V=zeros(1,n);O=zeros(1,n);P=zeros(1,n);Q=zeros(1,n);G=real(Y);B=imag(Y);for i=1:nP(i)=B2(i,3);Q(i)=B2(i,4);V(i)=B2(i,5);O(i)=B2(i,6);endB3=B(1:n-1,1:n-1); %不含平衡节点,由节点导纳虚部构成B4=B(1:n2,1:n2); %所有PQ节点%----------------------------------------------%---------------下面是求ΔP,ΔQ矩阵---------------DX=0;ICT=1;Mp=1;Mq=1;while ICT~=0m1=1;m2=1;for i=1:nif i~=isbC(i)=0;D(i)=0;for j1=1:nC(i)=C(i)+V(i)*V(j1)*(G(i,j1)*cos(O(i)-O(j1))+B(i,j1)*sin(O(i)-O( j1)));D(i)=D(i)+V(i)*V(j1)*(G(i,j1)*sin(O(i)-O(j1))-B(i,j1)*cos(O(i)-O( j1)));endDP(m1)=P(i)-C(i);m1=m1+1;if B2(i,2)==1DQ(m2)=Q(i)-D(i);m2=m2+1;endendendm1=m1-1; %所有节点数m2=m2-1; %PQ节点数DPQ=[DP';DQ']; %求DP,DQV1=V(:,1:m1);V2=diag(V1);V3=inv(V2); %对V矩阵求逆H=V3*DP'; %ΔP/VK=-inv(B3)*H; %-ΔP/V/B3deltO=V3*K; %Δ角=-ΔP/V/V/B3max1=max(abs(DP));for i=1:m1if max1<prMp=0;elseO(i)=O(i)+deltO(i)';Mq=1;endendV4=V(:,1:m2);V5=diag(V4);V6=inv(V5);L=V6*DQ';N=-inv(B4)*L;deltV=N; %ΔV=-ΔQ/V/Bmax2=max(abs(DQ));for i=1:m2if max2<prMq=0;elseif B2(i,2)==1;V(i)=V(i)+deltV(i)';Mp=1;endendendif Mp==0&&Mq==0ICT=0;elseICT=1;endDX=DX+1;end%-------------------------------------------%----------------迭代结束,开始输出结果----------------disp('----------------------------------------------'); disp('迭代次数为:');disp(DX);for i=1:nE(i)=V(i)*cos(O(i))+1j*V(i)*sin(O(i));o(i)= 180*angle(E(i))/pi;enddisp('---------------------------------------------'); disp('修正后各节点电压标么值为(节点号从小到大排列):');disp(V);disp('---------------------------------------------'); disp('修正后各节点电压相角为(节点号从小到大排列):');disp(o);%------------计算各个节点的功率----------------------disp('----------------------------------------------'); disp('各节点的功率为:');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);enddisp(S);%------------计算各支路的功率----------------------for i=1:n1p=B1(i,1);q=B1(i,2);Si(p,q)=E(p)*(conj(E(p))*conj(Y(p,p)-Y(p,q))+(conj(E(p))-conj(E(q )))*conj(Y(p,q)));disp('----------------------------------------------');disp('各条支路的首端功率为:');disp(Si(p,q));Si(q,p)=E(q)*(conj(E(q))*conj(Y(q,q)-Y(p,q))+(conj(E(q))-conj(E(p )))*conj(Y(p,q)));disp('----------------------------------------------');disp('各条支路的末端功率为:');disp(Si(q,p));DS(i)=Si(p,q)+Si(q,p);disp('----------------------------------------------');disp('各条支路的功率损耗为:');disp(DS(i));end%----------------计算平衡节点功率-------------Sp=0;for i=1:nSp=Sp+V(n)*conj(Y(n,i))*conj(V(i));enddisp('----------------------------------------------');disp('平衡节点功率为:');disp(Sp);二、对支路参数(B1)、节点参数(B2)的说明1.节点数:142.支路数:203.支路矩阵B1的各支路参数:起点编号,终点编号,电阻,电抗,电导,电纳[1 2 0.01335 0.04211 0 0 ;1 3 0 0.20912 0 0 ;1 4 0 0.55618 0 0 ;1 10 0.05811 0.17632 0 0.034 ;1 11 0.06701 0.17103 0 0.0128 ;2 10 0.05695 0.17388 0 0.0346 ;2 12 0 0.25202 0 0 ;2 14 0.05403 0.22304 0 0.0492 ;3 4 0 0.11001 0 0 ;3 13 0 0.17615 0 0 ;4 5 0.03181 0.0845 0 0 ;4 9 0.12711 0.27038 0 0 ;5 6 0.08205 0.19207 0 0 ;6 12 0.09498 0.1989 0 0 ;7 8 0.22092 0.19988 0 0 ;7 12 0.12291 0.25581 0 0 ;8 9 0.17093 0.34802 0 0 ;8 12 0.06615 0.13027 0 0 ;10 11 0.04699 0.19797 0 0.0438 ;10 14 0.01938 0.05917 0 0.0528 ;]4. 节点参数矩阵B2的各节点参数:(对应的每一列为)节点编号,类型,注入有功,注入无功,电压幅值,电压相位其中节点类型:1=PQ节点,2=PV节点,0=平衡节点[1 1 -0.478 0.039 1 0;2 1 -0.076 -0.016 1 0;3 1 0 0 1 0;4 1 -0.295 -0.166 1 0;5 1 -0.09 -0.058 1 0;6 1 -0.035 -0.018 1 0;7 1 -0.061 -0.016 1 0;8 1 -0.135 -0.058 1 0;9 1 -0.149 -0.05 1 0;10 2 0.183 0 1.045 0;11 2 -0.942 0 1.01 0;12 2 -0.112 0.047 1.7 0;13 2 0 0.174 1.9 0;14 0 0 0 1.06 0;]三、带入数据,运行结果>> clearclose alln=input('请输入节点数:n=');n1=input('请输入支路数:n1=');isb=input('请输入平衡节点号:isb=');pr=input('请输入误差精度:pr=');B1=input('请输入支路参数:B1=');B2=input('请输入节点参数:B2=');n2=input('请输入PQ节点个数:n2=');Y=zeros(n);for i=1:n1p=B1(i,1);q=B1(i,2);Y(p,q)=Y(p,q)-1/(B1(i,3)+B1(i,4)*1j); %非对角元Y(q,p)=Y(p,q);Y(p,p)=Y(p,p)+1/(B1(i,3)+B1(i,4)*1j)+B1(i,6)*1j; %对角元Y(q,q)=Y(q,q)+1/(B1(i,3)+B1(i,4)*1j)+B1(i,6)*1j;enddisp('导纳矩阵Y=');disp(Y)%---------------------------------------------%---------------下面是求P,Q,V,O矩阵---------------V=zeros(1,n);O=zeros(1,n);P=zeros(1,n);Q=zeros(1,n);G=real(Y);B=imag(Y);for i=1:nP(i)=B2(i,3);Q(i)=B2(i,4);V(i)=B2(i,5);O(i)=B2(i,6);endB3=B(1:n-1,1:n-1); %不含平衡节点,由节点导纳虚部构成B4=B(1:n2,1:n2); %所有PQ节点%----------------------------------------------精品文库%---------------下面是求ΔP,ΔQ矩阵---------------DX=0;ICT=1;Mp=1;Mq=1;while ICT~=0m1=1;m2=1;for i=1:nif i~=isbC(i)=0;D(i)=0;for j1=1:nC(i)=C(i)+V(i)*V(j1)*(G(i,j1)*cos(O(i)-O(j1))+B(i,j1)*sin(O(i)-O(j1)));D(i)=D(i)+V(i)*V(j1)*(G(i,j1)*sin(O(i)-O(j1))-B(i,j1)*cos(O(i)-O(j1)));endDP(m1)=P(i)-C(i);m1=m1+1;if B2(i,2)==1DQ(m2)=Q(i)-D(i);m2=m2+1;endendendm1=m1-1; %所有节点数m2=m2-1; %PQ节点数DPQ=[DP';DQ']; %求DP,DQV1=V(:,1:m1);V2=diag(V1);V3=inv(V2); %对V矩阵求逆H=V3*DP'; %ΔP/VK=-inv(B3)*H; %-ΔP/V/B3deltO=V3*K; %Δ角=-ΔP/V/V/B3max1=max(abs(DP));for i=1:m1if max1<prMp=0;elseO(i)=O(i)+deltO(i)';Mq=1;endendV4=V(:,1:m2);V5=diag(V4);V6=inv(V5);L=V6*DQ';N=-inv(B4)*L;精品文库deltV=N; %ΔV=-ΔQ/V/Bmax2=max(abs(DQ));for i=1:m2if max2<prMq=0;elseif B2(i,2)==1;V(i)=V(i)+deltV(i)';Mp=1;endendendif Mp==0&&Mq==0ICT=0;elseICT=1;endDX=DX+1;end%-------------------------------------------%----------------迭代结束,开始输出结果----------------disp('----------------------------------------------');disp('迭代次数为:');disp(DX);for i=1:nE(i)=V(i)*cos(O(i))+1j*V(i)*sin(O(i));o(i)= 180*angle(E(i))/pi;enddisp('---------------------------------------------');disp('修正后各节点电压标么值为(节点号从小到大排列):');disp(V);disp('---------------------------------------------');disp('修正后各节点电压相角为(节点号从小到大排列):');disp(o);%------------计算各个节点的功率----------------------disp('----------------------------------------------');disp('各节点的功率为:');for p=1:nC(p)=0;for q=1:nC(p)=C(p)+conj(Y(p,q)*conj(E(q)));end精品文库S(p)=E(p)*C(p);enddisp(S);%------------计算各支路的功率----------------------for i=1:n1p=B1(i,1);q=B1(i,2);Si(p,q)=E(p)*(conj(E(p))*conj(Y(p,p)-Y(p,q))+(conj(E(p))-conj(E(q)))*conj(Y(p,q)));disp('----------------------------------------------');disp('各条支路的首端功率为:');disp(Si(p,q));Si(q,p)=E(q)*(conj(E(q))*conj(Y(q,q)-Y(p,q))+(conj(E(q))-conj(E(p)))*conj(Y(p,q)));disp('----------------------------------------------');disp('各条支路的末端功率为:');disp(Si(q,p));DS(i)=Si(p,q)+Si(q,p);disp('----------------------------------------------');disp('各条支路的功率损耗为:');disp(DS(i));end%----------------计算平衡节点功率-------------Sp=0;for i=1:nSp=Sp+V(n)*conj(Y(n,i))*conj(V(i));enddisp('----------------------------------------------');disp('平衡节点功率为:');disp(Sp);请输入节点数:n=14请输入支路数:n1=20请输入平衡节点号:isb=14请输入误差精度:pr=0.00001请输入支路参数:B1=[1 2 0.01335 0.04211 0 0 ;1 3 0 0.20912 0 0 ;1 4 0 0.55618 0 0 ;1 10 0.05811 0.17632 0 0.034 ;1 11 0.06701 0.17103 0 0.0128 ;2 10 0.05695 0.17388 0 0.0346 ;2 12 0 0.25202 0 0 ;2 14 0.05403 0.22304 0 0.0492 ;3 4 0 0.11001 0 0 ;3 13 0 0.17615 0 0 ;4 5 0.03181 0.0845 0 0 ;4 9 0.12711 0.27038 0 0 ;5 6 0.08205 0.19207 0 0 ;6 12 0.09498 0.1989 0 0 ;7 8 0.22092 0.19988 0 0 ;7 12 0.12291 0.25581 0 0 ;8 9 0.17093 0.34802 0 0 ;8 12 0.06615 0.13027 0 0 ;10 11 0.04699 0.19797 0 0.0438 ;10 14 0.01938 0.05917 0 0.0528 ;]请输入节点参数:B2=[1 1 -0.478 0.039 1 0;2 1 -0.076 -0.016 1 0;3 1 0 0 1 0;4 1 -0.295 -0.166 1 0;5 1 -0.09 -0.058 1 0;6 1 -0.035 -0.018 1 0;7 1 -0.061 -0.016 1 0;8 1 -0.135 -0.058 1 0;9 1 -0.149 -0.05 1 0;10 2 0.183 0 1.045 0;11 2 -0.942 0 1.01 0;12 2 -0.112 0.047 1.7 0;13 2 0 0.174 1.9 0;14 0 0 0 1.06 0;]请输入PQ节点个数:n2=9导纳矩阵Y=Columns 1 through 510.5130 -38.2963i -6.8410 +21.5786i 0.0000 + 4.7819i 0.0000 + 1.7980i 0.0000 + 0.0000i-6.8410 +21.5786i 9.5680 -34.8916i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 4.7819i 0.0000 + 0.0000i 0.0000 -19.5490i 0.0000 + 9.0901i 0.0000 + 0.0000i0.0000 + 1.7980i 0.0000 + 0.0000i 0.0000 + 9.0901i 5.3261 -24.2825i -3.9020 +10.3654i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i -3.9020 +10.3654i 5.7829 -14.7683i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i -1.8809 + 4.4029i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i -1.4240 + 3.0291i 0.0000 + 0.0000i-1.6860 + 5.1158i -1.7011 + 5.1939i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i-1.9860 + 5.0688i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 3.9679i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 5.6770i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i -1.0259 + 4.2350i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000iColumns 6 through 100.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i -1.6860 + 5.1158i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i -1.7011 + 5.1939i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i -1.4240 + 3.0291i 0.0000 + 0.0000i-1.8809 + 4.4029i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i3.8359 - 8.4970i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i 4.0150 - 5.4279i -2.4890 + 2.2520i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i -2.4890 + 2.2520i 6.7249 -10.6697i -1.1370 + 2.3150i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 0.0000i -1.1370 + 2.3150i 2.5610 - 5.3440i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 9.5213 -30.1895i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i -1.1350 + 4.7819i-1.9550 + 4.0941i -1.5260 + 3.1760i -3.0989 + 6.1028i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i -4.9991精品文库+15.2631iColumns 11 through 14-1.9860 + 5.0688i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 3.9679i 0.0000 + 0.0000i -1.0259 + 4.2350i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 5.6770i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i -1.9550 + 4.0941i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i -1.5260 + 3.1760i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i -3.0989 + 6.1028i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i-1.1350 + 4.7819i 0.0000 + 0.0000i 0.0000 + 0.0000i -4.9991 +15.2631i3.1210 - 9.7941i 0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i 6.5799 -17.3407i 0.0000 + 0.0000i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 - 5.6770i 0.0000 + 0.0000i0.0000 + 0.0000i 0.0000 + 0.0000i 0.0000 + 0.0000i 6.0250 -19.3961i----------------------------------------------迭代次数为:42---------------------------------------------修正后各节点电压标么值为(节点号从小到大排列):Columns 1 through 101.2128 1.2148 1.5627 1.5364 1.5602 1.6264 1.6792 1.6654 1.5809 1.0450Columns 11 through 141.0100 1.7000 1.9000 1.0600---------------------------------------------修正后各节点电压相角为(节点号从小到大排列):Columns 1 through 10-13.1377 -11.9998 -14.4540 -15.0006 -15.3011 -15.7590 -16.4954 -16.3362 -16.0220 -5.2081Columns 11 through 14-12.1568 -16.1918 -14.4540 0精品文库----------------------------------------------各节点的功率为:Columns 1 through 51.4718 - 1.8800i 0.9041 - 1.1423i 0.0000 - 0.0000i -0.1314 + 0.1399i -0.0475 - 0.0646iColumns 6 through 10-0.0300 + 0.0035i 0.0039 - 0.1228i -0.0656 - 0.0724i -0.0352 - 0.1437i -1.5950 - 1.3905iColumns 11 through 14-0.4870 - 1.2396i 3.2005 + 3.0414i 1.7586 + 3.1847i -2.7057 + 0.3992i----------------------------------------------各条支路的首端功率为:26.1711 +87.9128i----------------------------------------------各条支路的末端功率为:23.5667 +83.4812i----------------------------------------------各条支路的功率损耗为:4.9738e+01 + 1.7139e+02i----------------------------------------------各条支路的首端功率为:15.2545 +65.3872i----------------------------------------------各条支路的末端功率为:0.2082 +56.8008i----------------------------------------------各条支路的功率损耗为:1.5463e+01 + 1.2219e+02i----------------------------------------------各条支路的首端功率为:15.3538 +59.6752i---------------------------------------------- 各条支路的末端功率为:12.6813 +60.6685i---------------------------------------------- 各条支路的功率损耗为:2.8035e+01 + 1.2034e+02i---------------------------------------------- 各条支路的首端功率为:18.4735 +62.4536i---------------------------------------------- 各条支路的末端功率为:11.6194 +39.6840i---------------------------------------------- 各条支路的功率损耗为:3.0093e+01 + 1.0214e+02i---------------------------------------------- 各条支路的首端功率为:18.0012 +62.4930i---------------------------------------------- 各条支路的末端功率为:5.5097 +16.2405i---------------------------------------------- 各条支路的功率损耗为:23.5109 +78.7335i---------------------------------------------- 各条支路的首端功率为:17.0452 +57.7870i---------------------------------------------- 各条支路的末端功率为:11.7622 +39.7706i---------------------------------------------- 各条支路的功率损耗为:28.8075 +97.5576i---------------------------------------------- 各条支路的首端功率为:13.5220 +59.6677i---------------------------------------------- 各条支路的末端功率为:19.6150 +58.2875i---------------------------------------------- 各条支路的功率损耗为:3.3137e+01 + 1.1796e+02i---------------------------------------------- 各条支路的首端功率为:16.5471 +56.5546i---------------------------------------------- 各条支路的末端功率为:6.9281 +27.4025i---------------------------------------------- 各条支路的功率损耗为:23.4752 +83.9571i---------------------------------------------- 各条支路的首端功率为:-0.2082 +69.5644i---------------------------------------------- 各条支路的末端功率为:12.7806 +79.1441i---------------------------------------------- 各条支路的功率损耗为:1.2572e+01 + 1.4871e+02i---------------------------------------------- 各条支路的首端功率为:0.0000 +64.5962i---------------------------------------------- 各条支路的末端功率为:-0.0000 +37.3498i---------------------------------------------- 各条支路的功率损耗为:-1.7764e-15 + 1.0195e+02i---------------------------------------------- 各条支路的首端功率为:21.7957 +82.2160i---------------------------------------------- 各条支路的末端功率为:23.5612 +60.7482i---------------------------------------------- 各条支路的功率损耗为:4.5357e+01 + 1.4296e+02i---------------------------------------------- 各条支路的首端功率为:15.8994 +64.7377i---------------------------------------------- 各条支路的末端功率为:9.9896 +20.6498i---------------------------------------------- 各条支路的功率损耗为:25.8891 +85.3875i---------------------------------------------- 各条支路的首端功率为:18.7607 +47.1609i---------------------------------------------- 各条支路的末端功率为:15.0088 +33.6107i---------------------------------------------- 各条支路的功率损耗为:33.7695 +80.7716i---------------------------------------------- 各条支路的首端功率为:15.4666 +33.8366i---------------------------------------------- 各条支路的末端功率为:24.5068 +61.3933i---------------------------------------------- 各条支路的功率损耗为:39.9734 +95.2299i---------------------------------------------- 各条支路的首端功率为:18.2997 +21.5842i---------------------------------------------- 各条支路的末端功率为:25.5956 +35.9107i---------------------------------------------- 各条支路的功率损耗为:43.8954 +57.4949i---------------------------------------------- 各条支路的首端功率为:15.7256 +24.3488i---------------------------------------------- 各条支路的末端功率为:23.3240 +59.2040i---------------------------------------------- 各条支路的功率损耗为:39.0496 +83.5528i---------------------------------------------- 各条支路的首端功率为:21.6792 +35.6719i---------------------------------------------- 各条支路的末端功率为:9.3603 +19.4667i---------------------------------------------- 各条支路的功率损耗为:31.0395 +55.1385i精品文库----------------------------------------------各条支路的首端功率为:27.4696 +46.8495i----------------------------------------------各条支路的末端功率为:27.7461 +67.4149i----------------------------------------------各条支路的功率损耗为:5.5216e+01 + 1.1426e+02i----------------------------------------------各条支路的首端功率为:10.9761 +38.1226i----------------------------------------------各条支路的末端功率为:4.9835 +14.8560i----------------------------------------------各条支路的功率损耗为:15.9596 +52.9785i----------------------------------------------各条支路的首端功率为:17.4469 +49.3022i----------------------------------------------各条支路的末端功率为:10.7497 +39.1332i----------------------------------------------各条支路的功率损耗为:28.1966 +88.4354i----------------------------------------------平衡节点功率为:-0.0889 - 0.5670i欢迎下载21。