电力系统潮流计算课程设计—牛顿拉夫逊法的应用课程设计

上传人:桔**** 文档编号:508148234 上传时间:2023-01-18 格式:DOCX 页数:28 大小:53.52KB
返回 下载 相关 举报
电力系统潮流计算课程设计—牛顿拉夫逊法的应用课程设计_第1页
第1页 / 共28页
电力系统潮流计算课程设计—牛顿拉夫逊法的应用课程设计_第2页
第2页 / 共28页
电力系统潮流计算课程设计—牛顿拉夫逊法的应用课程设计_第3页
第3页 / 共28页
电力系统潮流计算课程设计—牛顿拉夫逊法的应用课程设计_第4页
第4页 / 共28页
电力系统潮流计算课程设计—牛顿拉夫逊法的应用课程设计_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《电力系统潮流计算课程设计—牛顿拉夫逊法的应用课程设计》由会员分享,可在线阅读,更多相关《电力系统潮流计算课程设计—牛顿拉夫逊法的应用课程设计(28页珍藏版)》请在金锄头文库上搜索。

1、电力系统潮流计算课程设计牛顿-拉夫逊法的应用学院:电气工程学院 班级:电125学号:1212002047 姓名:王衡佳 教师:张新松 日期:2015.11.15一、课程设计内容简介11. 课程设计课题12. 电力系统潮流计算1二、电力系统潮流计算方式11. 高斯-赛德尔迭代法12. 牛顿-拉夫逊法13. P-Q分解法2三、 程序设计31. 程序设计环境32. 主程序清单33. 程序运行结果221. 课程设计问答232. 个人心得体会23五、参考文献24一、课程设计内容简介1. 课程设计课题设计一个基于高斯赛德尔法或牛顿拉夫逊法的电力系统潮流计算程序,要求 计算IEEE14节点,可采用VC+,M

2、ATLAB或其他工具实现,了解节点导纳矩阵内 各元素的意义和PV节点与PQ节点的区别。2. 电力系统潮流计算电力系统潮流计算是研究电力系统稳态运行运行情形的一种大体电气计算。 它的任务是按照给定的运行条件和网路结构肯定整个系统的运行状态,如各母线 上的电压(幅值及相角)、网络中的功率散布和功率损耗等。电力系统潮流计算 二果是电力系统潮流计算方式1. 高斯-赛德尔迭代法以导纳矩阵为基础,并应用高斯一塞德尔迭代的算法是在电力系统中最先取 得应用的潮流计算方式,目前高斯一塞德尔法已很少利用。将所求方程f(x)=0 改写为x=W(x),不能直接得出方程的根,给一个猜想值x0得:x1二巾(x0),又 可

3、取x1为猜想值,进一步得:X?=伊(明)J反复猜测-达代叮+L =务(哇)+则方程的根尤* = lim毛:盘一tE长处:(1) 原理简单,程序设计十分容易。(2) 导纳矩阵是一个对称且高度稀疏的矩阵,因此占用内存超级节省。(3) 就每次迭代所需的计算量而言,是各类潮流算法中最小的,而且和网络所包 含的节点数成正比关系。缺点:(1) 收敛速度很慢。对病态条件系统,计算往往会发生收敛困难:如节点间相位角差专门大的重 负荷系统、包括有负电抗支路(如某些三绕组变压器或线路串联电容等)的系统、 具有较长的辐射形线路的系统、长线路与短线路接在同一节点上,而且长短线路 的长度比值又专门大的系统。(3)平衡节

4、点所在位置的不同选择,也会影响到收敛性能。2. 牛顿-拉夫逊法牛顿法是数学中求解非线性方程式的典型方式,有较好的收敛性。自从20 世纪60年代中期采用了最佳顺序消去法以后,牛顿法在收敛性、内存要求、计 算速度方面都超过了其他方式,成为直到目前仍被普遍采用的方式。求解= O设 M =改+ &C 贝勺Z气)作变量B.F:一 X耘十性x.氐,求籍惨户方程长处:(1) 收敛速度快,若选择到一个较好的初值,算法将具有平方收敛特性,一般迭 代 45次即能够收敛到一个超级精准的解。而且其迭代次数与所计算网络的规模 大体无关。(2) 具有良好的收敛靠得住性,对于前面提到的对以节点导纳矩阵为基础的高斯 一塞德尔

5、法呈病态的系统,牛顿法均能靠得住地收敛。(3) 牛顿法所需的内存量及每次迭代所需时刻均较前述的高斯一塞德尔法为多, 并与程序设计技能有紧密关系。缺点:牛顿法的靠得住收敛取决于有一个良好的启动初值。若是初值选择不妥,算法有 可能根本不收敛或收敛到一个无法运行的解点上。解决方式:对于正常运行的系统,各节点电压一般均在额定值周围,偏移不会太大,而且各 节点间的相位角差也不大,所以对各节点能够采用统一的电压初值(也称为“平 直电压”),“平直电压”法假定:矿=1# = 就十=1 t=。U = LZEs)如此一般能取得满意的结果。但如果系统因无功紧张或其它原因致使电压质 量很差或有重载线路而节点间角差专

6、门大时,仍用上述初始电压就有可能出现问 题。能够先用高斯一塞德尔法迭代1 -2次;以此迭代结果作为牛顿法的初值,也 能够先用直流法潮流求解一次以求得一个较好的角度初值,然后转入牛顿法迭 代。3. P-Q分解法电力系统中常常利用的P-Q分解法派生于以极坐标表示的牛顿-拉夫逊法, 其大体思想是把节点功率表示为电压向量的极坐标形式,以有功功率误差作为修 正电压向量角度的依据,以无功功率误差作为修正电压幅值的依据,把有功和无 功分开进行迭代其主要特点是以一个(n-1)阶和一个m阶不变的、对称的系数 矩阵B,B代替原来的(n+m-1)阶转变的、不对称的系数矩阵M,以此提高计算 速度,降低对运算机贮存容量

7、的要求。P-Q分解法在计算速度方面有显著的提高,三速取彳得了推序设本计程设计中不采用此方式,因此再也不过量赘述。1. 程序设计环境(1) 采用方式:牛顿-拉夫逊法(2) 设计工具:VC+6.0程序(3) 运行环境:win8 64位操作系统2. 主程序清单#include #include #include #include #include #include #include #include const double CalculateError=0.00001;/概 念计算收敛条件static int AllNodeNumber;/节点总数static int BranchNumber;/

8、支 路总数static int GroundNumber;/接 地支路总数class BUSpublic:int OldNumber;/旧的节点编号int NodeType;/节点类型(0pq节点,2pv节点,3平衡节点)double LoadP;/负荷有功double LoadQ;/负荷无功double GenP;/发电机有功double GenQ;/发电机无功double VoltageVal;/电压幅值double VoltageAngle;/电压相角double NodeP;/节点净有功double NodeQ;/节点净无功double NodeE;/电压 e 分量double Nod

9、eF;/电压 f 分量BUS():OldNumber(0),NodeType(0),LoadP(0),LoadQ(0),GenP(0),GenQ(0),VoltageVal(1.0),VoltageAngle(0.0),NodeP(0.0),NodeQ(0.0),NodeE(1.0),NodeF(0.0);class BRANCHpublic:int Nodel;/节点 i 侧int NodeJ;/节点 j 侧int Circuit;/判断是不是是双回路(0单回路,1双回路)double R;/支路电阻double X;/支路电抗double Y;/线路变压器变比或接地导纳BBRANCH():

10、NodeI(0),NodeJ(0),Circuit(1),R(0.0),X(0.0),Y(0.0);class Yii/存导纳矩阵对角元素public:double G,B;Yii():G(0.0),B(0.0);class Yij/存导纳矩阵非对角元素和列号public:double G,B;int j;Yij():G(0),B(0),j(0);class GROUND/存接地支路数据public:int Node;double G;double B;class CURRENT/存支路电流public:double E,F;class POWER/存支路功率public:double P1,

11、Q1;double P2,Q2;class POWERFLOWpublic:double maxerror;char *FileName, *ResultName;void InputData();/读入系统数据void Tinny2();/半动态节点优化编号void FormY();/形成节点导纳矩阵void FormJ();/形成雅克比矩阵(边形成边消去)void branchpower();/计算支路功率void outputdata();/输出潮流计算结果 ifstream input;ofstream output;POWERFLOW();POWERFLOW();private:in

12、t *NewNumber;/按新号顺序存旧号int *OldNewNumber;/按旧号顺序存新号BUS *bus;BRANCH *branch;GROUND *ground;CURRENT *I;/迭代后计算的各支路的电流POWER *power;/各支路功率 double BaseS;Yii *yii;Yij *yij;int *seq;/导纳矩阵各行非对角元素首地址int *sum;/导纳矩阵各行非对角元素个数double *a;/电流分量double *b;/电流分量double *groundpower;/接 地支路功率int count;/记录迭代次数;POWERFLOW:POWE

13、RFLOW()FileName=NULL;ResultName=NULL;NewNumber=NULL;bus=NULL;branch=NULL;ground=NULL;BaseS=0;count=0;POWERFLOW:POWERFLOW()delete NewNumber;delete OldNewNumber;delete bus;delete branch;delete I;delete power;delete yii;delete yij;delete seq;delete sum;delete a;delete b;void POWERFLOW:InputData()/读入数据input.open(FileName,ios:nocreate);inputBaseS;if(!input)cout数据文件有问题!请检查!”AllNodeNumber;bus= new BUSAllNodeNumber;for(int i=0;ibusi.OldNumberbusi.NodeTypebusi.LoadPbusi.LoadQbusi.GenPbusi.GenQbusi.VoltageAnglebusi.V

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号