电力系统分析潮流计算的计算机算法
电力系统分析潮流计算的计算机算法
电⼒系统分析潮流计算的计算机算法潮流计算的计算机算法实验报告姓名:学号:班级:⼀、实验⽬的掌握潮流计算的计算机算法。
熟悉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的编程,虽然在实验的过程中出现了很多的错误,但在⽼师的细⼼指导下,问题都解决啦;计算机为我们省去了⼤量的⼈⼯计算,希望在以后的学习中能接触到更多的软件,学习。
电力系统潮流的计算机算法
, xn ) = 0
f1
(x(0) 1
+
Δx(0) , x(0)
1
2
+
Δx(0) , 2
fi
(x
(0)
1
+
Δx(0) , x(0)Leabharlann 12+
Δx(0) , 2
fn
(x(0) 1
+
Δx(0) , x(0)
1
2
+
Δx(0) , 2
f1
(x1(0)
,
x(0) 2
,
fi
(x1(0)
,
x(0) 2
,
fn
(x1(0)
Δx(n0)
0
=
0
, x(0) + Δx(0) ) = 0
n
n
, x(0)
+
Δx(0) )
=
0
n
n
, x(0) n
+
Δx(0) ) n
=
0
6.2 牛顿-拉夫逊潮流算法 6.2.1 基本原理 (2) n 阶非线性方程组的牛纯法:
① 修正方程:
矩
f1
(
x1(
0)
,
x(0) 2
,
,
x(0) n
)
6.2.3极坐标形式的N-R潮流算法
(1) 修正方程: ② 修正方程:
P H N Δδ
Q K
L
VP-1QΔV
P1 H11
PQn11
H n1 K11
1
Qm Km 1
H1 n1 N11
H n1 n1 K1 n1
N n 11 L1 1
电力系统潮流计算的计算机方法
电力系统潮流计算的计算机方法我折腾了好久电力系统潮流计算的计算机方法,总算找到点门道。
说实话,我一开始也是瞎摸索。
首先呢,我就知道这个潮流计算很重要,因为它能让我们搞清电力系统里各种电压啊、功率这些东西是怎么分布的。
我一开始就看书本上的理论,那些密密麻麻的公式看的我头都大了。
就比如说节点导纳矩阵的构建,妈呀,那些元素计算,感觉就像在走迷宫一样,我总是搞混。
我以前尝试过自己手动用简单的数据去构建这个矩阵,心想这能加深理解。
可一旦数据复杂点,我就错漏百出。
就像搭积木,你以为前面几块搭好了后面就简单,结果一个不小心,整个就垮了。
这时候我才意识到,单纯靠手算是不行的,必须借助计算机。
然后我就开始找计算机语言,最开始试的是Python。
这Python好是好,但对于潮流计算这种需要很多复杂矩阵运算的,感觉还是有点吃力。
我记得我想调用一个库去处理矩阵的乘法,找了半天文档还是搞出各种错误,什么数据类型不匹配啦,维度不对啦,那种挫败感啊。
后来我尝试了Matlab,这就像是打开了一扇新大门。
Matlab处理矩阵那叫一个方便,就跟住在酒店有人给你打扫房间一样轻松。
我先从基础开始,把节点导纳矩阵啊,功率注入向量这些基本的表示出来。
比如说节点导纳矩阵,就像编织一个蜘蛛网似的,每个支路在这个网上怎么体现,对应的导纳值怎么放,我一点点去搞清楚。
有一次我弄错了一个支路的连接关系,在构建矩阵的时候没反映正确。
结果算出来的潮流结果就很离谱,线路上的功率和电压到处都是乱的。
我就知道我肯定错了,然后就像破案一样,一点点重新检查我的输入。
在计算方法上,牛顿- 拉夫逊法我是没少试。
我一开始真的感觉我在跟一个脾气很差的人打交道,稍微有点差池它就停工。
比如说初始值的选择,如果选不好,就像汽车启动没踩对油门,要么不动要么乱冲。
为了找到合适的初始值,我试了好多组类似于经验数值的数据,最后慢慢摸索出在我的这个小电力系统模型里大概什么范围的初始值能让牛顿- 拉夫逊法顺利工作。
电力系统中的潮流计算与优化方法
电力系统中的潮流计算与优化方法潮流计算是电力系统运行和规划中的重要环节,它用于计算电力系统中各节点的电压、相角、有功、无功功率以及线路、变压器等的潮流分布情况。
对电力系统进行潮流计算可以帮助电力系统运行人员了解系统的稳定性、可靠性以及容载能力,也可以为电力系统规划提供数据支持。
本文将介绍电力系统潮流计算的基本方法与优化技术。
一、潮流计算的基本方法1.1 普通潮流计算方法潮流计算的基本方法是牛顿-拉夫逊迭代法(Newton-Raphson Iteration Method)和高尔顿法(Gauss-Seidel Method)。
牛顿-拉夫逊迭代法主要是通过不断迭代求解雅可比矩阵的逆,直到迭代误差小于给定阀值时停止迭代;高尔顿法则是逐一更新所有节点的电压与相角,直至所有节点的迭代误差都小于给定阀值。
1.2 快速潮流计算方法在大型电力系统中,普通的潮流计算方法计算速度较慢。
因此,研究人员提出了一些针对快速潮流计算的方法,如快速牛顿-拉夫逊法(Fast Newton-Raphson Method)和DC潮流计算方法。
快速牛顿-拉夫逊法通过简化牛顿-拉夫逊法的迭代公式,减少计算量,提高计算速度;DC潮流计算方法则是将潮流计算问题转化为一个线性方程组的求解问题,进一步提升计算效率。
二、潮流计算的优化技术2.1 改进的潮流计算算法为了提高潮流计算的准确性和收敛速度,研究人员提出了一些改进的潮流计算算法。
其中,改进的牛顿-拉夫逊法(Improved Newton-Raphson Method)是一种结合牛顿-拉夫逊法和割线法的算法,通过混合使用这两种方法,实现在减小迭代误差的同时加快计算速度。
此外,基于粒子群优化算法(Particle Swarm Optimization)和遗传算法(Genetic Algorithm)的潮流计算算法也得到了广泛研究和应用。
2.2 潮流优化潮流计算不仅可以用于分析电力系统的工作状态,还可以作为优化问题的约束条件。
电力系统潮流计算机算法
电力系统潮流计算机算法电力系统潮流计算是电力系统分析中最基本的一项计算,其目的是确定电力系统中各母线电压的幅值和相角、各元件中的功率以及整个系统的功率损耗等。
随着计算机技术的发展,电力系统潮流计算算法也在不断更新和完善。
以下是电力系统潮流计算的一些常用算法:1. 牛顿-拉夫逊法(Newton-Raphson Method):这是一种求解非线性方程组的方法,应用于电力系统潮流计算中。
该方法在多数情况下没有发散的危险,且收敛性较强,可以大大节约计算时间,因此得到了广泛的应用。
2. 快速迪科法(Fast Decoupled Method):这是一种高效的电力系统潮流计算方法,将电力系统分为几个子系统进行计算,从而提高了计算速度。
3. 最小二乘法(Least Squares Method):这是一种用于求解线性方程组的方法,通过最小化误差平方和来获得最优解。
在电力系统潮流计算中,可用于优化电压幅值和相角。
4. 遗传算法(Genetic Algorithm):这是一种全局优化搜索算法,应用于电力系统潮流计算中,可以解决一些复杂和非线性问题。
5. 粒子群优化算法(Particle Swarm Optimization):这是一种启发式优化算法,通过模拟鸟群觅食行为来寻找最优解。
在电力系统潮流计算中,可用于优化网络参数和运行条件。
6. 模拟退火算法(Simulated Annealing):这是一种全局优化搜索算法,应用于电力系统潮流计算中,可以在较大范围内寻找最优解。
7. 人工神经网络(Artificial Neural Network):这是一种模拟人脑神经网络的计算模型,可用于电力系统潮流计算。
通过训练神经网络,可以实现对电力系统中复杂非线性关系的建模和预测。
以上所述算法在电力系统潮流计算中起着重要作用,为电力系统运行、设计和优化提供了有力支持。
同时,随着计算机技术的不断发展,未来还将出现更多高效、精确的电力系统潮流计算算法。
电力系统潮流计算计算计算法
电力系统潮流计算算法设计及实现潮流计算是电力系统分析中的一种最基本的计算,它的任务是对给定的运行条件确定系统的运行状态,如各母线上的电压(幅值及相角)、网络中的功率分布以及功率损耗等。
建模是用数学的方法建立的数学模型,但它严格依赖于物理系统。
根据电力系统的实际运行条件,按给定的变量不同,一般将节点分为PQ节点,PV节点,平衡节点三种类型。
当这三个节点与潮流计算的约束条件结合起来时,便是潮流计算的数学模型。
PQ节点:有功功率P和无功功率Q是已知的,节点电压(V,δ)是待求量。
通常变电所都是这一类型的节点。
PV节点:有功功率P和电压复制V是已知的,节点的无功功率Q和电压相位δ是待求量。
一般选择有一定无功储备的发电厂和具有可调无功电源设备的变电所作为PV节点。
平衡节点:在潮流分布算出之前,网络中的功率损失是未知的,所以,网络中至少有一个节点的有功功率P不能给定,这个节点承担了系统的有功功率平衡,所以称为平衡节点。
一般选择主调频发电厂为平衡节点。
潮流计算的约束条件是:1、所有的节点电压必须满足:这一约束主要是对PQ节点而言。
2、2、所有电源节点的有功功率和无功功率必须满足:对平衡节点的P和Q以及PV节点的Q按以上条件进行检验。
3、某些节点之间电压的相位差应满足:稳定运行的一个重要条件。
功率方程的非线性雅可比矩阵的特点:●各元素是各节点电压的函数●不是对称矩阵●因为Y =0,所以H =N =J =L =0,另R =S =0,故稀疏两种常见的求解非线性方程的方法:1)高斯-赛德尔迭代法;2)牛顿-拉夫逊迭代法。
高斯-赛德尔迭代法潮流计算1、方程表示:①用高斯-赛德尔计算电力系统潮流首先要将功率方程改写成能收敛的迭代形式;②Q:设系统有n个节点,其中m个PQ节点,n-(m+1)个是PV节点,一个平衡节点,平衡节点不参加迭代;③功率方程改写成:2、求解的步骤:1)上述迭代公式假设n个节点全部为PQ节点。
2)始终等号右边采用第k次迭代结果,当j<i时,采用经(k+1)次迭代后的值,当j>i时,采用第k次迭代结果。
《电力系统分析》第四章 电力系统潮流的计算机算法
1
I1
I3
3
y12
y23
y20
2 I2
+ -
U
2
第四章 电力系统潮流的计算机算法
二、节点阻抗矩阵的节点电压方程
由YB1 ZB 的两边都左乘 YB,1 可得YB1I B U B ,
而
IB
YBU
,则节点电压方程为
B
ZBIB UB
第四章 电力系统潮流的计算机算法
第二节 等值变压器模型及其应用
Q2 QG2 QL2 Q2 (U , ) Q2 (U1,U 2 ,1, 2 )
第四章 电力系统潮流的计算机算法
二、变量的分类
1而、是负无荷法消控耗制的的有,功故、称无为功不功可率控(变P量L、或QL扰)动取变决量于。用一户般,以因
Y33
y30
y13
y23
y35 K 35
1 K35
K
2 35
y35
y30
y13
y23
1
K
2 35
y35
3
y35
K 35
5
j0.25
1
1
0.1 j0.35 0.08 j0.3
1 1 1.052 j0.015
1.585 j65.975
1 K35
K
第三章讨论简单电力网络的潮流分布计算,理解了与 之相关的各种物理现象。对于复杂电力网络的潮流计算, 一般必须借助电子计算机进行。 运用电子计算机,一般要完成以下步骤:
1、建立电力网络的数学模型 2、确定解算方法 3、制定计算流程和编制计算程序 本章将着重讨论前两项,主要阐述在电力系统潮流的 实际计算中常用的、基本的方法。
电力系统潮流计算方法分析
电力系统潮流计算方法分析1.黎曼法是最简单和最直接的计算方法。
该方法直接利用电力系统的基本方程式,即功率平衡方程式和节点电压方程式来计算潮流分布。
然而,黎曼法需要利用复杂的矩阵方程式来解决系统中节点电压的计算,计算量大且计算速度较慢,对大型复杂系统不适用。
2.高斯-赛德尔法是一种迭代法,将电网中的节电清设置为未知数,并采用全局迭代求解。
该方法通过迭代计算不断逼近潮流分布,直到满足系统中所有节点的电压和功率平衡方程为止。
高斯-赛德尔法具有迭代次数多、耗时较长的缺点,但计算稳定可靠,对于小型系统具有较好的适用性。
3.牛顿-拉夫逊法是一种基于牛顿迭代思想的高效潮流计算方法。
该方法通过利用电力系统中的雅可比矩阵,将潮流计算问题转化为解非线性方程组的问题。
牛顿-拉夫逊法的迭代速度和稳定性较高,适用于大型复杂系统的潮流计算。
综上所述,电力系统潮流计算方法可以选择黎曼法、高斯-赛德尔法和牛顿-拉夫逊法等不同的算法进行计算。
选择合适的计算方法应根据系统的规模、复杂度以及计算时间要求来综合考虑。
实际应用中,通常会根据具体情况采用不同的方法进行潮流计算,以获得准确和高效的结果。
同时,随着电力系统的发展和智能化技术的应用,也出现了一些基于机器学习和深度学习的潮流计算方法。
这些方法利用大数据和智能算法,通过学习和分析系统历史数据,能够更好地预测和计算系统潮流分布,提高计算效率和准确性。
这些方法在未来的电力系统潮流计算中具有潜力和广阔的应用前景。
总结起来,电力系统潮流计算是电力系统分析和规划的重要工作,不同的计算方法有不同的优劣势,合理选择计算方法对于准确评估系统稳定性和可靠性至关重要。
随着技术的进步和应用的发展,电力系统潮流计算方法也在不断演化和改进,以满足电力系统智能化和可持续发展的需求。
简单电力系统分析潮流计算
简单电力系统分析潮流计算电力系统潮流计算是电力系统分析中的一项重要任务。
其目的是通过计算各个节点的电压、电流、有功功率、无功功率等参数,来确定系统中各个元件的运行状态和互相之间的相互影响。
本文将介绍电力系统潮流计算的基本原理、计算方法以及应用。
潮流计算的基本原理是基于电力系统的节点电压和支路功率之间的网络方程。
通过对节点电压进行迭代计算,直到满足所有支路功率平衡方程为止,得到系统的运行状态。
潮流计算的基本问题可以表示为以下方程组:P_i = V_i * (G_i * cos(θ_i - θ_j ) + B_i * sin(θ_i -θ_j )) - V_j * (G_i * cos(θ_i - θ_j ) - B_i * sin(θ_i -θ_j )) (1)Q_i = V_i * (G_i * sin(θ_i - θ_j ) - B_i * cos(θ_i -θ_j )) - V_j * (G_i * sin(θ_i - θ_j ) + B_i * cos(θ_i -θ_j )) (2)其中,P_i为节点i的有功功率注入;Q_i为节点i的无功功率注入;V_i和θ_i分别为节点i的电压幅值和相角;V_j和θ_j分别为节点j的电压幅值和相角;G_i和B_i分别为支路i的导纳的实部和虚部。
对于一个电力系统,如果知道了节点注入功率和线路的导纳,就可以通过潮流计算求解出各节点的电压和功率。
这是一种不断迭代的过程,直到系统达到平衡状态。
潮流计算的方法有多种,常见的有高斯-赛德尔迭代法、牛顿-拉夫逊迭代法等。
其中,高斯-赛德尔迭代法是最常用的一种方法。
高斯-赛德尔迭代法的思想是从已知节点开始,逐步更新其他节点的电压值,直到所有节点的电压值收敛为止。
具体步骤如下:1.初始化所有节点电压的初始值;2.根据已知节点的注入功率和节点电压,计算其他节点的电压值;3.判断节点电压是否收敛,如果收敛则结束计算,否则继续迭代;4.更新未收敛节点的电压值,返回步骤2高斯-赛德尔迭代法的优点是简单有效,但其收敛速度较慢。
电力系统分析课件:第4章 电力系统潮流的计算机算法
Yjj Yjj Yjj yij
Yji Yji Yji yij
Y11 Y12 Y1i Y1 j Y1n
Y21 Y22 Y2i Y2 j Y2n
Y i1 Y i2 Y ii Y ij Y in
Y j1 Y j2 Y ji Y jj Y jn
nn
Yn1 Yn2 Yni Ynj Ynn
•
I2
I1 I2
Y11 Y21
0 Y31
Y12 Y22 Y32
Y13 Y23 Y33
UU12 U 3
一般化表示:
节点电压 列向量
n*n阶,阶 数不包括参
考节点
节点注入电 流列向量
I1 I2
Y11 Y21
Ii In
Yi1 Yn1
矩阵向量表示:
Y12 Y22
1) k
4 功率方程
前文已述,若已知: ① 网络的导纳矩阵YB( YB体现了网络的各个参
数) ② 各母线注入电流IB 则:通过节点电压方程求逆:UB YB1I B 即可:求出各节点电压:U i
进而:求得各支路电流: Iij yij (Ui U j )
然而:
在电力系统中,通常已知的不是各节点注入电
Yii Yii Yii yij yij Yjj Yjj Yjj yij yij
Yij Yij Yij yij yij
Yij Yij Yij yij yij
(5)若在原有的i,j节点的变压器的变比由 k 变为 k
结果:相当于在i、j节点之间切除一台变压器变比为 k 的变
ZB
Z i1
Z n1
Z12 Z1i Z1n Y11
Z22
Z2i
Z2n
Y21
Zi 2
(完整)电力系统潮流计算方法分析
电力系统潮流分析—基于牛拉法和保留非线性的随机潮流姓名:***学号:***1 潮流算法简介1.1 常规潮流计算常规的潮流计算是在确定的状态下.即:通过已知运行条件(比如节点功率或网络结构等)得到系统的运行状态(比如所有节点的电压值与相角、所有支路上的功率分布和损耗等)。
常规潮流算法中的一种普遍采用的方法是牛顿-拉夫逊法.当初始值和方程的精确解足够接近时,该方法可以在很短时间内收敛.下面简要介绍该方法。
1.1。
1牛顿拉夫逊方法原理对于非线性代数方程组式(1-1),在待求量x 初次的估计值(0)x 附近,用泰勒级数(忽略二阶和以上的高阶项)表示它,可获得如式(1-2)的线性化变换后的方程组,该方程组被称为修正方程组。
'()f x 是()f x 对于x 的一阶偏导数矩阵,这个矩阵便是重要的雅可比矩阵J 。
12(,,,)01,2,,i n f x x x i n ==(1-1)(0)'(0)(0)()()0f x f x x +∆=(1—2)由修正方程式可求出经过第一次迭代之后的修正量(0)x ∆,并用修正量(0)x ∆与估计值(0)x 之和,表示修正后的估计值(1)x ,表示如下(1—4).(0)'(0)1(0)[()]()x f x f x -∆=-(1—3)(1)(0)(0)x x x =+∆(1-4)重复上述步骤.第k 次的迭代公式为: '()()()()()k k k f x x f x ∆=-(1—5)(1)()()k k k x x x +=+∆(1-6)当采用直角坐标系解决潮流方程,此时待解电压和导纳如下式:i i i ij ij ijV e jf Y G jB =+=+ (1-7)假设系统的网络中一共设有n 个节点,平衡节点的电压是已知的,平衡节点表示如下.n n n V e jf =+(1-8)除了平衡节点以外的所有2(1)n -个节点是需要求解的量。
电力系统分析潮流计算
电力系统分析潮流计算电力系统分析是对电力系统运行状态进行研究、分析和评估的一项重要工作。
其中,潮流计算是电力系统分析的一种重要方法,用于计算电力系统中各节点的电压、功率和电流等参数。
本文将详细介绍电力系统潮流计算的原理、方法和应用。
一、电力系统潮流计算的原理电力系统潮流计算是基于潮流方程的求解,潮流方程是描述电力系统各节点电压和相角之间的关系的一组非线性方程。
潮流方程的基本原理是基于电力系统的等效导纳矩阵和节点电压相位差的关系,通过潮流计算可以得到电力系统各节点的电压和功率等参数。
电力系统潮流方程的一般形式如下:\begin{align*}P_i &= \sum_{j=1}^{n}(V_iV_j(G_{ij}\cos(\theta_i-\theta_j)+B_{ij}\sin(\theta_i-\theta_j))) \\Q_i &= \sum_{j=1}^{n}(V_iV_j(G_{ij}\sin(\theta_i-\theta_j)-B_{ij}\cos(\theta_i-\theta_j)))\end{align*}其中,$n$为节点数,$P_i$和$Q_i$表示第i个节点的有功功率和无功功率。
$V_i$和$\theta_i$表示第i个节点的电压和相角。
$G_{ij}$和$B_{ij}$表示节点i和节点j之间的等效导纳。
二、电力系统潮流计算的方法电力系统潮流计算的方法主要包括直接法、迭代法和牛顿-拉夫逊法等。
1.直接法:直接法是一种适用于小规模电力系统的潮流计算方法,它通过直接求解潮流方程来计算电力系统的潮流。
直接法的计算速度快,但对系统规模有一定的限制。
2.迭代法:迭代法是一种常用的潮流计算方法,通常使用高尔顿法或牛顿法。
迭代法通过迭代求解潮流方程来计算电力系统的潮流。
迭代法相对于直接法来说,可以适用于大规模电力系统,但计算时间较长。
3.牛顿-拉夫逊法:牛顿-拉夫逊法是一种高效的潮流计算方法,它通过求解潮流方程的雅可比矩阵来进行迭代计算,可以有效地提高计算速度。
电力系统潮流计算
f J xT
极坐标下牛顿
P SP P(V , ) P(V , ) f ( x) SP Q ( V , ) Q Q(V , )
( X X ) P
XP
1)阻抗矩阵的变化 设原输电系统网络的节点阻抗矩阵为x ,支路 k 两 端的节点为i、j。这里的支路是指两节点间各线路的 并联,线路是支路中的一个元件。当支路 增加一条 电抗为 的线路(称追加线路)时,形成新的网络。
应用支路追加原理,新网络的节点阻抗矩阵为
极坐标下牛顿法修正方程:
P T Q T
P V T P V V Q Q V V T V
将极坐标Jacobian矩阵中的电压平方项移出矩阵
' VP H ' VQ M
ˆ ˆ UYU S
ˆ (G jB )U Pi jQi U i ij ij j
ji
i 1, 2, N
所有节点的功率平衡方程
Pi jQi (ei jf i ) (Gij jBij )(e j jf j )
ji
(ei jf i )(ai jbi )
问题
什么是潮流计算?
指在给定电力系统网络拓扑、元件参数和发电、负荷参量条件 下,计算有功功率、无功功率及电压在电力网中的分布。
为什么要进行潮流计算?
电力系统潮流计算的结果是电力系统稳定计算和故障分析的基 础。
如何进行潮流计算? 简单电力网络(开式网络、环形网络、两端供电网络) 潮流计算计算机算法(高斯—赛德尔法、牛顿法、P-Q分解法)
电力系统潮流计算算法及其效率分析
电力系统潮流计算算法及其效率分析现代社会已经越来越依赖电力,而电力系统的安全和稳定运行则是社会生产生活的重要保障。
电力系统潮流计算是电力系统运行分析的重要环节,可用于分析电力系统的电压、电流、功率等参数,及时发现和解决电力系统运行中的问题,确保电力系统稳定运行。
本文将介绍电力系统潮流计算的算法及其效率分析。
一、电力系统潮流计算算法电力系统潮流计算的算法可以分为直接潮流计算法和迭代潮流计算法。
1、直接潮流计算法直接潮流计算法又称为Gauss-Seidel法,是一种迭代计算法。
它的基本原理是:从任意起点开始,按照节点位于网络中的拓扑次序,依次计算每一个节点的电压幅值和相角,并将其作为下一个节点的计算依据,如此循环迭代,直到所有节点的电压幅值和相角的变化不再大于预设值为止。
这种算法的计算速度比较快,但由于其每个节点的计算都是基于其前后节点的计算结果,因此对于复杂的电力系统网络,可能存在网络收敛速度慢、计算精度不高等问题。
2、迭代潮流计算法迭代潮流计算法又称为Newton-Raphson法,是一种比较精确的算法。
它的基本原理是:通过对电力系统节点电压幅值和相角的偏导数进行求解,得到节点电压和相角的增量,并将其与原节点电压和相角相加,得到新的节点电压和相角。
这种算法的精度相对较高,适用于复杂电力系统网络,在收敛速度、迭代次数、计算精度等方面都有较好的表现。
但相对而言也计算耗时较长。
二、电力系统潮流计算算法效率分析电力系统潮流计算算法的效率包括计算速度、收敛速度、计算精度等方面。
1、计算速度计算速度是评估算法效率的一个重要指标。
直接潮流计算法的计算速度相对比较快,因其是一种基于迭代计算的算法,每个节点的计算都可同时进行,从而提高了算法的计算速度。
而迭代潮流计算法的计算速度相对比较慢,由于其涉及大量的矩阵运算和非线性迭代,计算时间长,可能会受到计算机内存、硬盘等计算资源的限制。
2、收敛速度收敛速度是评估算法有效性的重要指标。
电力系统中的潮流计算与稳定性分析
电力系统中的潮流计算与稳定性分析潮流计算和稳定性分析是电力系统中不可或缺的两个重要任务,旨在确保电力系统的正常运行和稳定供电。
本文将详细介绍电力系统潮流计算和稳定性分析的概念、原理以及相关算法和方法。
一、潮流计算潮流计算是指确定电力系统中各节点的电压幅值和相角,以及分析电力系统中各功率参数的分配和流动情况的过程。
潮流计算是电力系统规划、运行和控制的基础,其结果用于判断系统电压稳定性、线路等电气设备的负荷能力以及调度运行。
潮流计算的基本原理是基于潮流方程的等式性质,通过节点电压相等和功率平衡等基本方程,建立节点电压和功率之间的方程组,进而求解得到电力系统各节点的电压相角和幅值。
常用的潮流计算算法包括直接法、迭代法和优化法。
直接法是利用克尔方程和雅可比矩阵进行计算,但对于大规模和复杂电力系统,计算量较大。
迭代法是通过不断迭代计算来逼近潮流计算结果,常用的迭代方法有高斯-赛德尔迭代法和牛顿-拉夫逊迭代法。
优化法则是通过优化技术和线性规划方法,将潮流计算问题转化为数学规划问题。
这些算法在实际应用中灵活运用,可以根据系统规模和计算精度进行选择。
二、稳定性分析稳定性分析是指对电力系统在各种异常工况下(如短路故障、负荷扰动等)的动态响应进行研究和评估的过程。
稳定性分析主要包括动力稳定性和电压稳定性两个方面。
动力稳定性是指电力系统在发生扰动后恢复到稳定状态的能力。
常见的动力稳定性问题包括暂态稳定性和稳定性界限等。
暂态稳定性主要研究电力系统在出现大幅度故障后的瞬时响应和恢复过程,如大断面故障后电压振荡的消散。
稳定性界限则是指系统恢复到稳态后,能够承受的最大稳定耐受能力。
电压稳定性是指电力系统在负荷变动或电网扰动等条件下,各节点电压不会超出规定的范围。
需要进行电压稳定性分析的原因是为了确保系统中各部分供电的质量和稳定性。
在稳定性分析中,通常会对发电机励磁系统、电力传输线路和负荷模型等进行建模,然后通过数学模型和仿真技术进行分析和评估。
电力系统三种潮流计算方法的比较
电力系统三种潮流计算方法的比较 一、高斯-赛德尔迭代法:以导纳矩阵为基础,并应用高斯--塞德尔迭代的算法是在电力系统中最早得到应用的潮流计算方法,目前高斯一塞德尔法已很少使用; 将所求方程改写为 不能直接得出方程的根,给一个猜测值 得 又可取x1为猜测值,进一步得:反复猜测 则方程的根 优点:1. 原理简单,程序设计十分容易;2. 导纳矩阵是一个对称且高度稀疏的矩阵,因此占用内存非常节省;3. 就每次迭代所需的计算量而言,是各种潮流算法中最小的,并且和网络所包含的节点数成正比关系;缺点:1. 收敛速度很慢;2. 对病态条件系统,计算往往会发生收敛困难:如节点间相位角差很大的重负荷系统、包含有负电抗支路如某些三绕组变压器或线路串联电容等的系统、具有较长的辐射形线路的系统、长线路与短线路接在同一节点上,而且长短线路的长度比值又很大的系统;3. 平衡节点所在位置的不同选择,也会影响到收敛性能;二、牛顿-拉夫逊法:求解 设 ,则按牛顿二项式展开:当△x 不大,则取线性化仅取一次项则可得修正量对 得:作变量修正: ,求解修正方程 牛顿法是数学中求解非线性方程式的典型方法,有较好的收敛性;自从20世纪60年代中期采用了最佳顺序消去法以后,牛顿法在收敛性、内存要求、计算速度方面都超过了其他方法,成为直到目前仍被广泛采用的方法;优点:1. 收敛速度快,若选择到一个较好的初值,算法将具有平方收敛特性,一般迭代4—5次便可以收敛到一个非常精确的解;而且其迭代次数与所计算网络的规模基本无关;2. 具有良好的收敛可靠性,对于前面提到的对以节点导纳矩阵为基础的高斯一塞德尔法呈病态的系统,牛顿法均能可靠地收敛;3. 牛顿法所需的内存量及每次迭代所需时间均较前述的高斯一塞德尔法为多,并与程序设计技巧有密切关系;缺点:牛顿法的可靠收敛取决于有一个良好的启动初值;如果初值选择不当,算法有可能根本不收敛或收敛到一个无法运行的解点上;()0f x =10()x x ϕ=迭代 0x 21()x x ϕ=1()k k x x ϕ+=()x x ϕ=()0f x =0x x x =+∆1k k k x x x +=+∆解决方法:对于正常运行的系统,各节点电压一般均在额定值附近,偏移不会太大,并且各节点间的相位角差也不大,所以对各节点可以采用统一的电压初值也称为“平直电压”,“平直电压”法假定:︒==0100i i U θ 或 );,...,2,1(0100s i n i f e i i ≠===这样一般能得到满意的结果;但若系统因无功紧张或其它原因导致电压质量很差或有重载线路而节点间角差很大时,仍用上述初始电压就有可能出现问题;可以先用高斯一塞德尔法迭代1-2次;以此迭代结果作为牛顿法的初值,也可以先用直流法潮流求解一次以求得一个较好的角度初值,然后转入牛顿法迭代;三、P-Q 分解法:电力系统中常用的PQ 分解法派生于以极坐标表示的牛顿—拉夫逊法,其基本思想是把节点功率表示为电压向量的极坐标形式,以有功功率误差作为修正电压向量角度的依据,以无功功率误差作为修正电压幅值的依据,把有功和无功分开进行迭代其主要特点是以一个n-1阶和一个m 阶不变的、对称的系数矩阵B ,B '''代替原来的n+m-1阶变化的、不对称的系数矩阵M,以此提高计算速度,降低对计算机贮存容量的要求;P-Q 分解法在计算速度方面有显着的提高,迅速得到了推广;原理:修正方程为:⎥⎥⎦⎤⎢⎢⎣⎡∆∆⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡∆∆V V δL K N H Q P 雅克比矩阵元素的表达如下:a) 当i ≠j 时b) 当i =j 时对修正方程的第一个简化是:上式可分别写成以下两式在一般情况下,线路两端电压的相角差是不大的不超过100~200,因此可以认为δδij ij ij G sin ,1cos ≈B ij因此可得:B V V H ij j i ij = i,j=1,2,…,n-1B V V L ij j i ij = i,j=1,2,…,m经一系列化简得P —Q 分解法的修正方程式: ⎭⎬⎫∆''=∆∆'=∆V B Q B P δ 原P —Q 分解法的修正方程的简化形式为: ⎪⎭⎪⎬⎫∆''=∆∆'=∆V B V Q V B V PδPQ分解法的修正方程式的特点:'、替代原有的系数矩阵J,提高了计算速度, 1.以一个n-1阶和一个m-1阶系数矩阵BB''降低了对贮存容量的要求;'、替代原有的系数矩阵J,显着的提高了计算2.以迭代过程中保持不变的系数矩阵BB''速度;'、替代原有的系数矩阵J,使求逆等运算量和所需的储存容量3.以对称的系数矩阵BB''都大为减少;P-Q分解法两个主要特点:1.降阶在潮流计算的修正方程中利用了有功功率主要与节点电压相位有关,无功功率主要与节点电压幅值有关的特点,实现P-Q分解,使系数矩阵由原来的2N×2N阶降为N×N 阶,N为系统的节点数不包括缓冲节点;2.因子表固定化利用了线路两端电压相位差不大的假定,使修正方程系数矩阵元素变为常数,并且就是节点导纳的虚部;由于以上两个特点,使快速分解法每一次迭代的计算量比牛顿法大大减少;P-Q分解法只具有一次收敛性,因此要求的迭代次数比牛顿法多,但总体上快速分解法的计算速度仍比牛顿法快;快速分解法只适用于高压网的潮流计算,对中、低压网,因线路电阻与电抗的比值大,线路两端电压相位差不大的假定已不成立,用快速分解法计算,会出现不收敛问题;。
电力系统潮流的计算机算法
电力系统潮流的计算机算法电力系统潮流计算是电力系统运行分析和规划的基础,其目的是通过计算和模拟电力系统中各个节点和支路的电压、电流和功率等参数,以确定系统的电力分布状态和稳定性。
电力系统潮流计算是一个复杂且精确度要求较高的问题,需要借助计算机算法进行求解。
电力系统潮流计算的算法可以分为直流潮流算法和交流潮流算法。
直流潮流算法是最简单的一种算法,它假设整个电力系统都是直流的,不存在变压器的短路铜损、电感等问题,只考虑电压降和功率损耗的线性关系。
直流潮流算法的基本原理是节点功率方程的线性化求解,通过迭代计算各个节点的电压和功率。
然而,直流潮流算法的精确度有限,不能计算出交流系统的电流相位和系统的稳定性。
因此,交流潮流算法被广泛应用于实际的电力系统潮流计算中。
交流潮流算法通过将电力系统模型转化为一组非线性方程组,通过迭代计算来求解各个节点的电压相位和幅值,从而得到系统的电流和功率分布。
在交流潮流计算中,最常用的算法是牛顿-拉夫逊(Newton-Raphson)算法和快速潮流(Fast Decoupled)算法。
牛顿-拉夫逊算法是一种基于迭代求解的方法,通过不断更新节点电压和相角的估计值,使得节点功率方程组的误差逼近于零。
快速潮流算法是一种改进的牛顿-拉夫逊算法,通过对电力系统模型进行分解和简化,减少了迭代的计算量和复杂度,提高了算法的收敛速度。
除了牛顿-拉夫逊算法和快速潮流算法,还有一些其他的算法被应用于电力系统潮流计算中,如改进的Gaoc-Newton算法、无功优化算法和光滑化算法等。
这些算法都是根据不同的问题和需求进行改进和优化,用于解决电力系统潮流计算中的各种复杂情况和特殊需求。
例如,无功优化算法可以用于优化电力系统的无功功率分配,光滑化算法可以用于减小潮流计算中的震荡和不稳定性。
综上所述,电力系统潮流计算的算法是一个复杂且多样化的领域,涉及到数学、电力系统、计算机科学等多个学科的知识。
通过不断改进和优化算法,可以提高电力系统潮流计算的准确性、效率和稳定性,为电力系统的运行和规划提供重要的参考依据。
电力系统潮流计算的计算机算法概述
Qi fi j1 Gij e j Bij f j
ei Gij f j Bij e j
j 1
电力系统分析
(19.14)
19.3.2牛顿-拉夫逊法潮流计算
PQ节点的有功功率和无功功率是给定的,第i个节点的给定功率设 为Pis和Qis。假定系统中的第1,2,……,m号节点为PQ节点, 对其中每一个节点可列方程
为PQ机(或PQ给定型发电机)。在潮流计算中,系统大部分 节点属于PQ节点。
电力系统分析
2.PU节点 给出的参数是节点的有功功率P及电压幅值U,待求量为该节 点的无功功率Q及电压向量的相角θ。通常选择有一定无功功率 贮备的发电机母线或者有无功补偿设备的变电所母线作PU节点。 PU节点上的发电机称之为PU机(或PU给定型发电机)。 3.平衡节点
电力系统分析
3.2牛顿-拉夫逊法潮流计算
1.采用直角坐标 结点电压和导纳可表示为:
Yij G ij jBij
Ui
e i
jf i
将上述表示式代入
Pi
jQi
Ui
n
Y ij U
j
的右端,
j 1
展开并分出实部和虚部,便得:
Pi
ei
n
j 1 n
Gij e j
Bij
fj
n
fi Gij f j Bij e j
电力系统潮流计算的计算机算法
重点提示 1概 述 2 潮流计算的基本方程 3 牛顿-拉夫逊法潮流计算 4 PQ分解法潮流计算 小结
电力系统分析
本章提示
节点分类的概念; 潮流计算的基本方程式; 牛顿—拉夫逊法潮流计算的计算机算法; P—Q分解法潮流计算的计算机算法。
电力系统分析
电力系统分析第4章电力系统潮流的计算机算法
图4-1简单电力系统
可得图4-1a各节点净注入功率为
S%1 S%2
S%G1 S%G 2
S%L1
S%3 S%L3
(4-1)
对图4-1b中的等值电路进行化简,将在同一节点上的接地 导纳并联得:
y10 y120 y130
阻抗矩阵是一个满矩阵,这是一个重要的特点。由于网络 结构复杂,直接应用公式(4-17)计算是很困难的。
综上所述,阻抗矩阵具有以下特点: (1)阻抗矩阵是n阶方阵,且Zij=Zji,既为对称矩阵。 (2)在一般情况下,阻抗矩阵无零元素,是满矩阵。矩阵的元 素与节点数的平方成正比,将需要更多的计算机内存容量。 (3)由于阻抗矩阵中的自阻抗Zii一般大于互阻抗Zij,即矩阵的 对角元素大于非对角元素。因此阻抗矩阵具有对角线占优势的性 质,应用于迭代计算时收敛性能较好。 (4)阻抗矩阵不能从系统网络接线图上直观的求出,需要采用 其他办法,如直接对导纳矩阵求逆。
...
Yi1
Yi2
i行 Y 'ii
... Yin
Yij
Yn1 Yn2 ...
Yni
... Ynn
0
0
0
...
Yji
...
0
Yjj
j行
其中,原节点导纳矩阵的对角元素应修正为 Y 'ii Yii yij
新增导纳矩阵元 Yjj yij ,Yij Yji yij 。
电力系统分析教材配套课件
第4章电力系统潮流的计算机算法
4.1 电力网络的数学模型 4.2 高斯——塞德尔法潮流计算 4.3 牛顿-拉夫逊法潮流计算 4.4 P-Q分解法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
潮流计算的计算机算法实验报告:学号:班级:一、实验目的掌握潮流计算的计算机算法。
熟悉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);q=B1(i,2);Y(p,q)=Y(p,q)-1/(B1(i,3)*B1(i,5));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))*imag(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))*imag(B2(j,3)))-real(B2(i,3))*(real(Y(i,j))*imag(B2(j,3))+imag(Y(i,j))* real(B2(j,3)));endendendOrgS;%四:创建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;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;%八:创建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))+i mag(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))+rea l(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;endendendendendk=0;for 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))+i mag(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))+rea l(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)==2j=j+1;B2(i,3)=B2(i,3)+DetaU(2*j,1)+DetaU(2*j-1,1)*sqrt(-1);endendfor 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))*imag(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))*imag(B2(j,3)))-real(B2(i,3))*(real(Y(i,j))*imag(B2(j,3))+imag(Y(i,j))* real(B2(j,3)));endendendOrgS;%创建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(B 2(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);h=0;k=0;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))+i mag(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))+rea l(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))+i mag(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))+rea l(I(h,1));Jacbi(2*h,2*k-1)=2*imag(B2(i,3));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=Times+1; %迭代次数加1endTimes;五、实验流程六、实验结果参数输入:运行结果:七、实验体会通过这次实验,让我第一次接触到了MATLAB,并深切体会到了它的强大之处;潮流计算的计算机算法的实现不仅巩固了我的学过的知识,还让我学到一些MATLAB的编程,虽然在实验的过程中出现了很多的错误,但在老师的细心指导下,问题都解决啦;计算机为我们省去了大量的人工计算,希望在以后的学习中能接触到更多的软件,学习到更多的知识。