牛顿法潮流计算
潮流计算实例潮流计算实例 潮流例题:根据给定的参数或工程具体要求(如图) ,收集和查阅资料;学习相关软件(软件自选: 本设计选择 Matlab 进行设计) 。 2.在给定的电力网络上画出等值电路图。 3.运用计算机进行潮流计算。 4.编写设计说明书。 一、设计原理一、设计原理 1 1.. 牛顿牛顿- -拉夫逊原理拉夫逊原理 牛顿迭代法是取 x0 之后,在这个基础上,找到比x0 更接近的方程的跟,一步一步迭代,从而找到 更接近方程根的近似跟。牛顿迭代法是求方程根的重要方法之一,其最大优点是在方程f(x) = 0 的单根附 近具有平方收敛,而且该法还可以用来求方程的重根、复根。电力系统潮流计算,一般来说,各个母线所 供负荷的功率是已知的,各个节点电压是未知的(平衡节点外)可以根据网络结构形成节点导纳矩阵,然 后由节点导纳矩阵列写功率方程,由于功率方程里功率是已知的,电压的幅值和相角是未知的,这样潮流 计算的问题就转化为求解非线性方程组的问题了。为了便于用迭代法解方程组,需要将上述功率方程改写 成功率平衡方程,并对功率平衡方程求偏导,得出对应的雅可比矩阵,给未知节点赋电压初值,一般为额 定电压,将初值带入功率平衡方程,得到功率不平衡量,这样由功率不平衡量、雅可比矩阵、节点电压不 1 潮流计算实例潮流计算实例 平衡量(未知的)构成了误差方程,解误差方程,得到节点电压不平衡量,节点电压加上节点电压不平衡 量构成新的节点电压初值,将新的初值带入原来的功率平衡方程,并重新形成雅可比矩阵,然后计算新的 电压不平衡量,这样不断迭代,不断修正,一般迭代三到五次就能收敛。 牛顿—拉夫逊迭代法的一般步骤: (1)形成各节点导纳矩阵Y。 (2)设个节点电压的初始值U 和相角初始值 e 还有迭代次数初值为 0。 (3)计算各个节点的功率不平衡量。 (4)根据收敛条件判断是否满足,若不满足则向下进行。 (5)计算雅可比矩阵中的各元素。 (6)修正方程式个节点电压 (7)利用新值自第(3)步开始进入下一次迭代,直至达到精度退出循环。 (8)计算平衡节点输出功率和各线路功率 2 2.. 网络节点的优化网络节点的优化 1)静态地按最少出线支路数编号 这种方法由称为静态优化法。在编号以前。首先统计电力网络个节点的出线支路数,然后,按 出线支路数有少到多的节点顺序编号。当由 n 个节点的出线支路相同时,则可以按任意次序对这 n 个节 点进行编号。这种编号方法的根据是导纳矩阵中,出线支路数最少的节点所对应的行中非零元素也 2)动态地按增加出线支路数最少编号在上述的方法中,各节点的出线支路数是按原始网络统计出 来的,在编号过程中认为固定不变的,事实上,在节点消去过程中,每消去一个节点以后,与该节点相连 的各节点的出线支路数将发生变化(增加,减少或保持不变)。因此,如果每消去一个节点后,立即修正尚 未编号节点的出线支路数,然后选其中支路数最少的一个节点进行编号,就可以预期得到更好的效果,动 态按最少出线支路数编号方法的特点就是按出线最少原则编号时考虑了消去过程中各节点出线支路数目 的变动情况。 3 3.. MATLABMATLAB 编程应用编程应用 Matlab 是“Matrix Laboratory”的缩写,主要包括:一般数值分析,矩阵运算、数字信号处理、建模、 系统控制、优化和图形显示等应用程序。由于使用 Matlab 编程运算与人进行科学计算的思路和表达方式 完全一致,所以不像学习高级语言那样难于掌握,而且编程效率和计算效率极高,还可在计算机上直接输 出结果和精美的图形拷贝,所以它的确为一高效的科研助手。 二、设计内容二、设计内容 1. 1.设计流程图设计流程图 启动 2 输入原始数据 潮流计算实例潮流计算实例 令迭代次数 count=0 对 PQ 节点计算P i (k).Q i (k)(对 PV 节点计算U i (k) ) 是 P,Q10 KK 5 否 计算雅可比矩阵各元素Hij(k)、Nij(k)、Jij(k)、Lij(k) 计算平衡节点 的功率及线路 功率 输出 解修正方程, 由P i (k).Q i (k)及雅可比矩阵用牛 i 顿-拉夫逊法求各节点的∆e(k)、∆Ui(k)/Ui 计算节点的新电压 e i (k1) e i (k) e i (k) U i (k1)U i (k) U i (k) 增加迭代次数 count=count+1 2. 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); 3 潮流计算实例潮流计算实例 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 4 潮流计算实例潮流计算实例 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