牛顿法潮流计算综述
- 格式:doc
- 大小:266.00 KB
- 文档页数:9
潮流计算的主要方法
最近几年,随着计算机仿真技术和复杂系统全面发展,潮流计算也受到越来越多的重视。
潮流计算是研究不同电力网络的物理特性和操作规律的一项重要工作。
针对潮流计算的主要方法,总结如下:
一、基于动力学的方法
1. 碰撞模型:根据动力学方法,计算电力系统的运行稳定性。
基于动力学的碰撞模型能够快速而精确地预测两个潮流的变化情况。
2. 时变快速收敛:在碰撞模型的基础上,为快速求解电力系统潮流,提出了时变快速收敛算法。
可以更快地获得潮流解。
二、基于牛顿迭代法的方法
1.牛顿迭代潮流计算方法:根据牛顿迭代法,采用迭代算法,求解电力系统潮流运行状态。
2. 功率流计算方法:计算机基于牛顿迭代法,快速求解节点电能的功率流公式。
可以有效的缩短潮流计算的时间,提高计算效率。
三、基于模糊聚类算法的方法
1. 基于模糊聚类的潮流计算方法:采用模糊聚类算法,对潮流计算进行多维度分析,可以得出最优的潮流结果。
2. 基于模糊划分的多目标模糊控制:根据模糊聚类理论,对潮流算法进行最佳控制,以满足电力网不同优化目标。
四、基于期望最大化的方法
1、基于粒子群优化的潮流计算方法:采用粒子群优化算法,将电力网潮流计算定义为多目标最优化问题,以期望最大化来求解潮流值,提高计算效率。
2、基于遗传算法的潮流计算方法:遗传算法利用进化过程来搜索全局最优解,使用遗传变异原则来改变候选解,以期望最大化来求解潮流计算问题。
牛顿-拉夫逊法在潮流计算中的应用简介牛顿迭代法又称为牛顿-拉夫逊方法,它是牛顿在17世纪提出的一种在实数域和复数域上近似求解方程的方法。
多数方程不存在求根公式,因此求精确根非常困难,甚至不可能,从而寻找方程的近似根就显得特别重要。
方法使用函数f(x)的泰勒级数的前面几项来寻找方程f(x) = 0的根。
牛顿迭代法是求方程根的重要方法之一,其最大优点是在方程f(x) = 0的单根附近具有平方收敛,而且该法还可以用来求方程的重根、复根。
由于便于编写程序用计算机求解,应用较广。
下面以一元非线性代数方程的求解为例,来说明牛顿-拉夫逊法的基本思想。
设欲求解的非线性代数方程为f(x)=o设方程的真实解为x*,则必有f(x*)=0。
用牛顿-拉夫逊法求方程真实解x*的步骤如下:首先选取余割合适的初始估值x°作为方程f(x)=0的解,若恰巧有f(x°)=0,则方程的真实解即为x*= x°若f(x°)≠0,则做下一步。
取x¹=x°+Δx°为第一次的修正估值,则f(x¹)=f(x°+Δx°)其中Δx°为初始估值的增量,即Δx°=x¹-x°。
设函数f(x)具有任意阶导数,即可将上式在x°的邻域展开为泰勒级数,即:f(x¹)=f(x°+Δx°)=f(x°)+f'(x°)Δx°+[f''(x°)(Δx°)2]/2+…若所取的|Δx°|足够小,则含(Δx°)²的项及其余的一切高阶项均可略去,并使其等于零,即:f(x¹)≈f(x°)+f'(x°)Δx°=0Δx°=-f(x°)/f'(x°)x¹= x°-f(x°)/f'(x°)可见,只要f'(x°)≠0,即可根据上式求出第一次的修正估值x¹,若恰巧有f(x¹)=0,则方程的真实解即为x*=x¹。
牛顿拉夫逊法潮流计算牛顿-拉夫逊法(Newton-Raphson method)是一种用于求解非线性方程的数值方法。
它通过迭代逼近根的方式,将非线性方程转化为一系列的线性方程来求解。
在电力系统中,潮流计算用于确定电力网中节点的电压幅值和相角。
潮流计算是电力系统分析的重要基础,可以用于计算电力系统的潮流分布、功率损耗、节点电压稳定度等参数,为电力系统的规划、运行和控制提供参考依据。
牛顿-拉夫逊法是一种常用的潮流计算方法,它的基本思想是通过不断迭代来逼近电网的潮流分布,直到满足一定的收敛条件。
下面将对牛顿-拉夫逊法的具体步骤进行详细介绍。
首先,我们需要建立电力网络的节点潮流方程,即功率方程。
对于每一个节点i,其节点功率方程可以表示为:Pi - Vi * (sum(Gij * cos(θi - θj)) - sum(Bij * sin(θi -θj))) = 0Qi - Vi * (sum(Gij * sin(θi - θj)) + sum(Bij * cos(θi -θj))) = 0其中,Pi和Qi分别为节点i的有功功率和无功功率,Vi和θi分别为节点i的电压幅值和相角,Gij和Bij分别为节点i和节点j之间的导纳和电纳。
接下来,我们需要对每个节点的电压幅值和相角进行初始化。
一般情况下,可以将电压幅值设置为1,相角设置为0。
然后,我们可以开始进行迭代计算。
在每一轮迭代中,我们需要计算每个节点的雅可比矩阵和功率残差,然后更新电压幅值和相角。
雅可比矩阵可以通过对节点功率方程进行求导得到,具体如下:dPi/dVi = -sum(Vj * (Gij * sin(θi - θj) + Bij * cos(θi - θj)))dPi/dθi = sum(Vj * (Gij * Vi * cos(θi - θj) - Bij * Vi * sin(θi - θj)))dQi/dVi = sum(Vj * (Gij * cos(θi - θj) - Bij * sin(θi - θj)))dQi/dθi = sum(Vj * (Gij * Vi * sin(θi - θj) + Bij * Vi * cos(θi - θj)))功率残差可以通过将节点功率方程代入得到,如下:RPi = Pi - Vi * (sum(Gij * cos(θi - θj)) - sum(Bij *sin(θi - θj)))RQi = Qi - Vi * (sum(Gij * sin(θi - θj)) + sum(Bij *cos(θi - θj)))最后,我们可以使用牛顿-拉夫逊法的迭代公式来更新电压幅值和相角,具体如下:Vi(new) = Vi(old) + ΔViθi(new) = θi(old) + Δθi其中,ΔVi和Δθi分别为通过求解线性方程组得到的电压幅值和相角的增量。
牛顿-拉夫逊潮流计算学生:李敏2007109522指导老师:李咸善潮流计算原理:节点分为三类,PQ 节点,PV 节点,平衡节点,每个节点涉及4个量:P(i),Q(i),U(i),Q(i)根据各节点的功率,电压列写平衡方程,组成多维非线性方程,用数学方法(牛顿拉夫逊)将方程组转化为线性的,可以解方程组。
在牛顿法中通过节点给定值可求得PQ 节点和pv 节点的电压相位和PQ 节点的电压有效值U(i),及PV 节点的Q(i),便可求得所有节点的参量,实现整个系统参数的明了化。
牛顿拉夫逊的基本原理数学表述如下:�牛顿-拉夫逊法计算潮流�由线路参数得出节点导纳矩阵Y �功率方程:(cos sin )1,2,3,,(sin cos )Gi Li i j ij ij ij ij j i GiLi i j ij ij ij ij j i P P U U G B i n Q Q U U G B θθθθ∈∈⎧−=+⎪⎪=⋅⋅⋅⎨⎪−=−⎪⎩∑∑其中iji jθθθ=−雅可比矩阵各元素的表达式(sin cos )(cos sin )()ij i j ij ij ij ij ij i j ij ij ij ij ij ij ijij H U U G B N U U G B j i M N L Hθθθθ=−−⎧⎪=−+⎪≠⎨=−⎪⎪=⎩22(sin cos )(cos sin )2(cos sin )(sin cos )2ii i j ij ij ij ij j ij iii i j ij ij ij ij i ii j ij i ii i j ij ij ij ij j i j iii i j ij ij ij ij i iij i j i H U U G B N U U G B U G M U U G B L U U G B U B θθθθθθθθ∈≠∈≠∈≠∈≠⎧=−⎪⎪⎪=−+−⎪⎪⎨=−+⎪⎪⎪=−−+⎪⎪⎩∑∑∑∑用MATLAB 语言编程调试心得体会:李老师布置这个课外题已经很长时间了,一直没有静下心来做,因为前阵子在忙着学习cad 考试耽搁了一些时间,所以没有及时的完成,这个任务我很妥了一段时间,觉得只有一点C 语言基础想自己动手编一个潮流程序还是很困难的,所以就一直没有开始。
摘要本文,首先简单介绍了基于在MALAB中行潮流计算的原理、意义,然后用具体的实例,简单介绍了如何利用MALAB去进行电力系统中的潮流计算。
众所周知,电力系统潮流计算是研究电力系统稳态运行情况的一种计算,它根据给定的运行条件及系统接线情况确定整个电力系统各部分的运行状态:各线的电压、各元件中流过的功率、系统的功率损耗等等。
在电力系统规划的设计和现有电力系统运行方式的研究中,都需要利用潮流计算来定量地分析比较供电方案或运行方式的合理性、可靠性和经济性。
此外,在进行电力系统静态及暂态稳定计算时,要利用潮流计算的结果作为其计算的基础;一些故障分析以及优化计算也需要有相应的潮流计算作配合;潮流计算往往成为上述计算程序的一个重要组成部分。
以上这些,主要是在系统规划设计及运行方式安排中的应用,属于离线计算范畴。
牛顿-拉夫逊法在电力系统潮流计算的常用算法之一,它收敛性好,迭代次数少.本文介绍了电力系统潮流计算机辅助分析的基本知识及潮流计算牛顿-拉夫逊法,最后介绍了利用MTALAB程序运行的结果。
关键词:电力系统潮流计算,牛顿-拉夫逊法,MATLABABSTRACTThis article first introduces the flow calculation based on the principle of MALAB Bank of China,meaning, and then use specific examples,a brief introduction, how to use MALAB to the flow calculation in power systems。
As we all know, is the study of power flow calculation of power system steady-state operation of a calculation,which according to the given operating conditions and system wiring the entire power system to determine the operational status of each part:the bus voltage flowing through the components power, system power loss and so on. In power system planning power system design and operation mode of the current study, are required to quantitatively calculated using the trend analysis and comparison of the program or run mode power supply reasonable, reliability and economy.In addition, during the power system static and transient stability calculation, the results of calculation to take advantage of the trend as its basis of calculation;number of fault analysis and optimization also requires a corresponding flow calculation for cooperation;power flow calculation program often become the an important part. These,mainly in the way of system design and operation arrangements in the application areas are off—line calculation。
牛顿拉夫逊法潮流计算牛顿拉夫逊法是计算电力系统中电流、电压的常用方法之一,也称为牛顿-拉夫逊-里特法或简称为NR法。
资深的电力系统工程师一定对这个方法非常熟悉,但是对于刚刚接触电力系统的人来说,可能会对此感到迷惑。
本文将为大家简单介绍牛顿拉夫逊法的基本步骤,帮助大家更好地理解和使用。
在介绍牛顿拉夫逊法之前,我们需要先了解一些电力系统的基本概念。
电力系统由许多发电厂、输电线路、变电站和用户组成,其中输电线路和变电站是将电能长距离输送和转换的设备。
电力系统中的发电机、负荷和输电线路都具有电阻和电抗,它们之间的复杂相互作用决定了电力系统中的电流和电压。
牛顿拉夫逊法用于计算电力系统节点之间的电流和电压。
节点是指电力系统中有电流和电压变化的点,例如发电机和变电站。
在计算电力系统节点的电流和电压时,我们需要使用一些基本的公式和原理,比如克希荷夫定律和欧姆定律。
下面是牛顿拉夫逊法的基本步骤:1. 确定电力系统中的节点和口纳负荷在计算电力系统的电流和电压之前,我们需要先确定电力系统中所有的节点和负载。
这通常是由电网规划人员完成的。
2. 初始化电力系统中的电流和电压在计算过程中,我们需要先给电力系统中的节点和口纳负荷赋初值。
此时,我们需要假设所有节点的电压相同,即电力系统处于平衡状态。
3. 建立节点电流和电压的方程组建立节点电流和电压的方程组并对其进行求解是计算电力系统电流和电压的关键步骤。
利用克希荷夫定律和欧姆定律,可以得到关于节点电流和电压的一系列方程,这个方程组的解即为电力系统的电流和电压。
4. 更新节点电流和电压求解得到电力系统的电流和电压之后,我们需要更新节点电流和电压的值。
更新后的节点电流和电压将作为下一次计算的初值。
5. 判断计算结果收敛在使用牛顿拉夫逊法计算电力系统电流和电压时,我们需要判断计算结果是否收敛。
如果计算结果没有收敛,即结果不稳定或不趋于一个确定的值,那么我们需要重新建立方程组并进行求解。
牛顿拉斐逊法潮流计算牛顿拉夫逊法(Newton-Raphson method)是一种数值计算方法,用于解非线性方程。
其原理是通过迭代来逼近方程的根。
在电力系统中,牛顿拉夫逊法常用于求解潮流计算问题。
潮流计算是电力系统调度运行和规划的基础工作,其目的是确定电力系统各节点的电压幅值和相角,以及各支线上的功率和无功功率。
通过潮流计算可以有效地评估电力系统的稳定性和运行状态,并为电力系统的调度和规划提供参考依据。
牛顿拉夫逊法的核心思想是通过接近方程的根来求解非线性方程。
其基本步骤如下:1.初始化:选取一个初始点作为方程的近似解,通常选择电力系统的平衡状态作为初值。
2.构造雅可比矩阵:根据潮流方程的特点,建立牛顿拉夫逊法的雅可比矩阵。
雅可比矩阵描述了非线性方程的导数关系,用于迭代计算过程中的线性化。
3.迭代计算:利用雅可比矩阵和当前解向量,构建迭代格式,并计算得到新的解向量。
迭代格式中,包括牛顿方程和拉夫逊方程。
牛顿方程用于计算不平衡功率的校正量,而拉夫逊方程用于计算不平衡电压的校正量。
4.收敛判断:判断迭代计算得到的新解是否满足收敛条件。
通常使用误差向量的范数作为判断依据。
如果误差向量的范数小于预先设定的阈值,即可认为迭代已经收敛。
5.循环迭代:如果迭代计算得到的新解不满足收敛条件,继续进行迭代计算,直到达到收敛条件为止。
牛顿拉夫逊法的优点是收敛速度较快,尤其适用于求解非线性方程的问题。
然而,该方法也存在一些缺点。
首先,牛顿拉夫逊法需要提供一个合适的初始点,如果初始点选择不当,可能会导致迭代过程发散。
其次,构造雅可比矩阵和计算迭代格式的过程较为复杂,需要一定的数学基础和计算能力。
在电力系统潮流计算中,牛顿拉夫逊法广泛应用于求解节点电压和支路功率的平衡方程。
通过牛顿拉夫逊法,可以准确地计算出系统各节点的电压幅值和相角,指导电网的调度运营和规划工作。
总之,牛顿拉夫逊法是一种重要的数值计算方法,特别适用于求解非线性方程。
潮流例题:根据给定的参数或工程具体要求(如图),收集和查阅资料;学习相关软件(软件自选:本设计选择Matlab进行设计)。
2.在给定的电力网络上画出等值电路图。
3.运用计算机进行潮流计算。
4.编写设计说明书。
一、设计原理
1.牛顿-拉夫逊原理
牛顿迭代法是取x0 之后,在这个基础上,找到比x0 更接近的方程的跟,一步一步迭代,从而找到更接近方程根的近似跟。
牛顿迭代法是求方程根的重要方法之一,其最大优点是在方程f(x) = 0 的单根附近具有平方收敛,而且该法还可以用来求方程的重根、复根。
电力系统潮流计算,一般来说,各个母线所供负荷的功率是已知的,各个节点电压是未知的(平衡节点外)可以根据网络结构形成节点导纳矩阵,然后由节点导纳矩阵列写功率方程,由于功率方程里功率是已知的,电压的幅值和相角是未知的,这样潮流计算的问题就转化为求解非线性方程组的问题了。
为了便于用迭代法解方程组,需要将上述功率方程改写成功率平衡方程,并对功率平衡方程求偏导,得出对应的雅可比矩阵,给未知节点赋电压初值,一般为额定电压,将初值带入功率平衡方程,得到功率不平衡量,这样由功率不平衡量、雅可比矩阵、节点电压不
平衡量(未知的)构成了误差方程,解误差方程,得到节点电压不平衡量,节点电压加上节点电压不平衡量构成新的节点电压初值,将新的初值带入原来的功率平衡方程,并重新形成雅可比矩阵,然后计算新的电压不平衡量,这样不断迭代,不断修正,一般迭代三到五次就能收敛。
牛顿—拉夫逊迭代法的一般步骤:
(1)形成各节点导纳矩阵Y。
(2)设个节点电压的初始值U和相角初始值e 还有迭代次数初值为0。
(3)计算各个节点的功率不平衡量。
(4)根据收敛条件判断是否满足,若不满足则向下进行。
(5)计算雅可比矩阵中的各元素。
(6)修正方程式个节点电压
(7)利用新值自第(3)步开始进入下一次迭代,直至达到精度退出循环。
(8)计算平衡节点输出功率和各线路功率
2.网络节点的优化
1)静态地按最少出线支路数编号
这种方法由称为静态优化法。
在编号以前。
首先统计电力网络个节点的出线支路数,然后,按出线支路数有少到多的节点顺序编号。
当由n 个节点的出线支路相同时,则可以按任意次序对这n 个节点进行编号。
这种编号方法的根据是导纳矩阵中,出线支路数最少的节点所对应的行中非零元素也2)动态地按增加出线支路数最少编号在上述的方法中,各节点的出线支路数是按原始网络统计出来的,在编号过程中认为固定不变的,事实上,在节点消去过程中,每消去一个节点以后,与该节点相连的各节点的出线支路数将发生变化(增加,减少或保持不变)。
因此,如果每消去一个节点后,立即修正尚未编号节点的出线支路数,然后选其中支路数最少的一个节点进行编号,就可以预期得到更好的效果,动态按最少出线支路数编号方法的特点就是按出线最少原则编号时考虑了消去过程中各节点出线支路数目的变动情况。
3.MATLAB编程应用
Matlab 是“Matrix Laboratory”的缩写,主要包括:一般数值分析,矩阵运算、数字信号处理、建模、系统控制、优化和图形显示等应用程序。
由于使用Matlab 编程运算与人进行科学计算的思路和表达方式完全一致,所以不像学习高级语言那样难于掌握,而且编程效率和计算效率极高,还可在计算机上直接输出结果和精美的图形拷贝,所以它的确为一高效的科研助手。
二、设计内容
1.设计流程图
2.程序
clear;clc
%重新编号,把原题中的节点1,2,3,4,5重新依次编号为5,1,2,3,4,其中1-4号为PQ节点,5号为平衡节点
y=0;
%输入原始数据,求节点导纳矩阵
y (1,2)=1/(0.06+0.18i); y (1,3)=1/(0.06+0.18i); y (1,4)=1/(0.04+0.12i);
y(1,5)=1/(0.02+0.06i);
y(2,3)=1/(0.01+0.03i);y(2,5)=1/(0.08+0.24i);
y(3,4)=1/(0.08+0.24i);
y(4,5)=0;
for i=1:5
for j=i:5
y(j,i)=y(i,j);
end
end
Y=0;
%求互导纳
for i=1:5
for j=1:5
if i~=j
Y(i,j)=-y(i,j);
end
end
end
%求自导纳
for i=1:5
Y(i,i)=sum(y(i,:));
end
Y %Y 为导纳矩阵
G=real(Y);
B=imag(Y);
%原始节点功率
S(1)=0.2+0.2i;
S(2)=-0.45-0.15i;
S(3)=-0.4-0.05i;
S(4)=-0.6-0.1i;
S(5)=0;
P=real(S);
Q=imag(S);
%赋初值
U=ones(1,5);U(5)=1.06;
e=zeros(1,5);
ox=ones(8,1);fx=ones(8,1);
count=0 %计算迭代次数
while max(fx)>1e-5
for i=1:4
for j=1:4
H(i,j)=0;N(i,j)=0;M(i,j)=0;L(i,j)=0;oP(i)=0;oQ(i)=0;
end
end
for i=1:4
for j=1:5
oP(i)=oP(i)-U(i)*U(j)*(G(i,j)*cos(e(i)-e(j))+B(i,j)*sin(e(i)-e(j)));
oQ(i)=oQ(i)-U(i)*U(j)*(G(i,j)*sin(e(i)-e(j))-B(i,j)*cos(e(i)-e(j)));
end
oP(i)=oP(i)+P(i); oQ(i)=oQ(i)+Q(i);
end
fx=[oP,oQ]';
%求雅克比矩阵
%当i~=j时候求H,N,M,L 如下:
for i=1:4
for j=1:4
if i~=j H(i,j)=-U(i)*U(j)*(G(i,j)*sin(e(i)-e(j))-B(i,j)*cos(e(i)-e(j)));
N(i,j)=-U(i)*U(j)*(G(i,j)*cos(e(i)-e(j))+B(i,j)*sin(e(i)-e(j)));
L(i,j)=H(i,j);
M(i,j)=-N(i,j);
end
end
end
H,N,M,L
%当i=j 时H,N,M,L如下:
for i=1:4
for j=1:5
if i~=j
H(i,i)=H(i,i)+U(i)*U(j)*(G(i,j)*sin(e(i)-e(j))-B(i, j)*cos (e(i)-e(j))); N(i,i)=N(i,i)-U(i)*U(j)*(G(i, j)*cos(e(i)-e(j))+B(i,j)*sin(e(i)-e(j)));
M(i,i)=M(i,i)-U(i)*U(j)*(G(i,j)*cos(e(i)-e(j))+B(i,j)*sin(e(i)-e(j)));
L(i,i)=L(i,i)-U(i)*U(j)*(G(i,j)*sin(e(i)-e(j))-B(i,j)*cos(e(i)-e(j)));
end
end
N(i,i)=N(i,i)-2*(U(i))^2*G(i,i);
L(i,i)=L(i,i)+2*(U(i))^2*B(i,i);
end
J=[H,N;M,L] %J 为雅克比矩阵
ox=-((inv(J))*fx);
for i=1:4
oe(i)=ox(i); oU(i)=ox(i+4)*U(i);
end
for i=1:4
e(i)=e(i)+oe(i); U(i)=U(i)+oU(i);
end
count=count+1;
end
ox,U,e,count
%求节点注入的净功率
i=5;
for j=1:5
P(i)=U(i)*U(j)*(G(i,j)*cos(e(i)-e(j))+B(i,j)*sin(e(i)-e(j)))+P(i);
Q(i)=U(i)*U(j)*(G(i,j)*sin(e(i)-e(j))-B(i,j)*cos(e(i)-e(j)))+Q(i);
end
S(5)=P(5)+Q(5)*sqrt(-1);
S
%求节点注入电流
I=Y*U'
3.运行结果
Y值:
迭代过程:
电压值:
平衡节点注入功率及电流:。