潮流计算设计(共26页).doc
精选优质文档-倾情为你奉上毕业设计(论文)题 目 配电网潮流计算与程序设计完成日期年月日目录1绪论4 1.1潮流计算的目的和意义4 1.2潮流计算的发展4 1.3本文的主要工作62 配电网络模型6 2.1线路模型6 2.2变压器的模型9 2.3 负荷模型133基于前推回代法的潮流计算144基于matlab的程序设计15 4.1 MATLAB简介15 4.2 程序设计16 4.3 算例205 总结24配电网潮流计算与程序设计摘要:在电力系统的正常运行中,随着用电负荷的变化和系统运行方式的改变,网络中的损耗也将发生变化。要严格保证所有的用户在任何时刻都有额定的电压是不可能的,因此系统运行中个节点出现电压的偏移是不可避免的。为了保证电力系统的稳定运行,要进行潮流调节。Abstract: In the normal operation of the power system, with the change of power load and the change of system operation mode, the network losses will also change. To strictly ensure that all users at any time have a rated voltage is impossible, so the node appears in the operation of the system voltage deviation is inevitable. In order to guarantee the stable operation of power system, must carry on the trend of the regulation.关键词: 电网潮流计算 前推后代法 MATLABKeywords: Power flow calculation Push the offspring before MATLAB前言电力是以电能作为动力的能源。发明于19世纪70 年代,电力的发明和应用掀起了第二次工业化高潮。成为人类历史18世纪以来,世界发生的三次科技革命之一,从此科技改变了人们的生活。既是是当今的互联网时代我们仍然对电力有着持续增长的需求,因为我们发明了电脑、家电等更多使用电力的产品。不可否认新技术的不断出现使得电力成为人们的必需品。20世纪出现的大规模电力系统是人类工程科学史上最重要的成就之一,是由发电、输电、变电、配电和用电等环节组成的电力生产与消费系统。它的功能是将自然界的一次能源通过发电动力装置转化成电能,再经输电、变电和配电将电能供应到各用户。为实现这一功能,电力系统在各个环节和不同层次还具有相应的信息与控制系统,对电能的生产过程进行测量、调节、控制、保护、通信和调度,以保证用户获得安全、经济、优质的电能。电力工业发展初期,电能是直接在用户附近的发电站(或称发电厂)中生产的,各发电站孤立运行。随着工农业生产和城市的发展,电能的需要量迅速增加,而热能资源和水能资源丰富的地区又往往远离用电比较集中的城市和工矿区,为了解决这个矛盾,就需要在动力资源丰富的地区建立大型发电站,然后将电能远距离输送给电力用户。同时,为了提高供电的可靠性以及资源利用的综合经济性,又把许多分散的各种形式的发电站,通过送电线路和变电所联系起来。这种由发电机、升压和降压变电所,送电线路以及用电设备有机连接起来的整体,即称为电力系统。随着电力系统及在线应用的发展,计算机网络已经形成,为电力系统的潮流计算提供了物质基础。电力系统潮流计算是电力系统分析计算中最基本的内容,也是电力系统运行及设计中必不可少的工具。根据系统给定的运行条件、网络接线及元件参数,通过潮流计算可以确定各母线电压的幅值及相角、各元件中流过的功率、整个系统的功率损耗等。潮流计算是实现电力系统安全经济发供电的必要手段和重要工作环节,因此潮流计算在电力系统的规划设计、生产运行、调度管理及科学研究中都有着广泛的应用。它的发展主要围绕这样几个方面:计算方法的收敛性、可靠性;计算速度的快速性;对计算机存储容量的要求以及计算的方便、灵活等。现代电力系统提出了“灵活交流输电和新型直流输电”的概念。灵活交流输电技术是指运用固态电子器件与现代自动控制技术对交流电网的电压、相位角、阻抗、功率以及电路的通断进行实时闭环控制,从而提高高压输电线路的诉讼能力和电力系统的稳态水平。新型直流输电技术是指应用现电力电子技术的最新成果,改善和简化变流站的造价等。运营方式管理中,潮流是确定电网运行方式的基本出发点:在规划领域,需要进行潮流分析验证规划方案的合理性;在实时运行环境,调度员潮流提供了电网在预想操作预想下的电网的潮流分布以及校验运行的可靠性。在电力系统调度运行的多个领域都涉及到电网潮流计算。潮流是确定电力网咯运行状态的基本因素,潮流问题是研究电力系统稳态问题的基础和前提。1 绪论1.1潮流计算的目的和意义电力系统潮流计算是研究电力系统稳态运行情况的一种基本电气计算。它的目的是根据给定的运行条件和网路结构确定整个系统的运行状态,如各母线上的电压(幅值及相角)、网络中的功率分布以及功率损耗等。电力系统潮流计算的结果是电力系统稳定计算和故障分析的基础。潮流计算在电网中具有重要意义: (1)在电网规划阶段,通过潮流计算,合理规划电源容量及接入点,合理规划网架,选择无功补偿方案,满足规划水平的大、小方式下潮流交换控制、调峰、调相、调压的要求。(2)在编制年运行方式时,在预计负荷增长及新设备投运基础上,选择典型方式进行潮流计算,发现电网中薄弱环节,供调度员日常调度控制参考,并对规划、基建部门提出改进网架结构,加快基建进度的建议。(3)正常检修及特殊运行方式下的潮流计算,用于日运行方式的编制,指导发电厂开机方式,有功、无功调整方案及负荷调整方案,满足线路、变压器热稳定要求及电压质量要求。(4)预想事故、设备退出运行对静态安全的影响分析及作出预想的运行方式调整方案。总结为在电力系统运行方式和规划方案的研究中,都需要进行潮流计算以比较运行方式或规划供电方案的可行性、可靠性和经济性。同时,为了实时监控电力系统的运行状态,也需要进行大量而快速的潮流计算。因此,潮流计算是电力系统中应用最广泛、最基本和最重要的一种电气运算。1.2潮流计算的发展史利用电子计算机进行潮流计算从20世纪50年代中期就已经开始。此后,潮流计算曾采用了各种不同的方法,这些方法的发展主要是围绕着对潮流计算的一些基本要求进行的。对潮流计算的要求可以归纳为下面几点:(1)算法的可靠性或收敛性(2)计算速度和内存占用量(3)计算的方便性和灵活性电力系统潮流计算属于稳态分析范畴,不涉及系统元件的动态特性和过渡过程。因此其数学模型不包含微分方程,是一组高阶非线性方程。非线性代数方程组的解法离不开迭代,因此,潮流计算方法首先要求它是能可靠的收敛,并给出正确答案。随着电力系统规模的不断扩大,潮流问题的方程式阶数越来越高,目前已达到几千阶甚至上万阶,对这样规模的方程式并不是采用任何数学方法都能保证给出正确答案的。这种情况促使电力系统的研究人员不断寻求新的更可靠的计算方法。在用数字计算机求解电力系统潮流问题的开始阶段,人们普遍采用以节点导纳矩阵为基础的高斯-赛德尔迭代法(一下简称导纳法)。这个方法的原理比较简单,要求的数字计算机的内存量也比较小,适应当时的电子数字计算机制作水平和电力系统理论水平,于是电力系统计算人员转向以阻抗矩阵为主的逐次代入法(以下简称阻抗法)。20世纪60年代初,数字计算机已经发展到第二代,计算机的内存和计算速度发生了很大的飞跃,从而为阻抗法的采用创造了条件。阻抗矩阵是满矩阵,阻抗法要求计算机储存表征系统接线和参数的阻抗矩阵。这就需要较大的内存量。而且阻抗法每迭代一次都要求顺次取阻抗矩阵中的每一个元素进行计算,因此,每次迭代的计算量很大。阻抗法改善了电力系统潮流计算问题的收敛性,解决了导纳法无法解决的一些系统的潮流计算,在当时获得了广泛的应用,曾为我国电力系统设计、运行和研究作出了很大的贡献。但是,阻抗法的主要缺点就是占用计算机的内存很大,每次迭代的计算量很大。当系统不断扩大时,这些缺点就更加突出。为了克服阻抗法在内存和速度方面的缺点,后来发展了以阻抗矩阵为基础的分块阻抗法。这个方法把一个大系统分割为几个小的地区系统,在计算机内只需存储各个地区系统的阻抗矩阵及它们之间的联络线的阻抗,这样不仅大幅度的节省了内存容量,同时也提高了计算速度。克服阻抗法缺点的另一途径是采用牛顿-拉夫逊法(以下简称牛顿法)。牛顿法是数学中求解非线性方程式的典型方法,有较好的收敛性。解决电力系统潮流计算问题是以导纳矩阵为基础的,因此,只要在迭代过程中尽可能保持方程式系数矩阵的稀疏性,就可以大大提高牛顿潮流程序的计算效率。自从20世纪60年代中期采用了最佳顺序消去法以后,牛顿法在收敛性、内存要求、计算速度方面都超过了阻抗法,成为直到目前仍被广泛采用的方法。在牛顿法的基础上,根据电力系统的特点,抓住主要矛盾,对纯数学的牛顿法进行了改造,得到了P-Q分解法。P-Q分解法在计算速度方面有显著的提高,迅速得到了推广。牛顿法的特点是将非线性方程线性化。20世纪70年代后期,有人提出采用更精确的模型,即将泰勒级数的高阶项也包括进来,希望以此提高算法的性能,这便产生了保留非线性的潮流算法。另外,为了解决病态潮流计算,出现了将潮流计算表示为一个无约束非线性规划问题的模型,即非线性规划潮流算法。近20多年来,潮流算法的研究仍然非常活跃,但是大多数研究都是围绕改进牛顿法和P-Q分解法进行的。此外,随着人工智能理论的发展,遗传算法、模糊算法也逐渐被引入潮流计算。但是,到目前为止这些新的模型和算法还不能取代牛顿法和P-Q分解法的地位。由于电力系统规模的不断扩大,对计算速度的要求不断提高,计算机的并行计算技术也将在潮流计算中得到广泛的应用,成为重要的研究领域。1.3本文的主要工作(1)熟悉电力系统潮流计算(前推后代法)的相关理论。 (2)运用所学专业知识,提出一种合理的潮流计算算法。 (3)熟悉MATLAB软件的使用,并根据算法编程 (4)对照典型系统,对程序有效性进行验证2 配电网络模型图2-1 电力线路的单相等值电路图配电网中基本元件很多,如变压器、线路、电容器、调相机、电容器等等,配电网中基本元件很多,如变压器、线路、电容器、调相机、电容器等等,本章主要介绍线路模型、变压器模型以及负荷模型。122.1线路模型电力系统中线路模型就是以电阻、电抗、电纳、电导来表示的它们的等值电路。按式 求得单位长度导线的电阻、电抗、电纳、电导后,就可作最原始的电力线路等值电路。以单相等值电路代表三相虽已经简化了不少计算,但由于电力线路的长度往往有数十乃至数百公里,如将每公里的电阻、电抗、电纳、电导都一一绘于图上,所得的等值电路仍十分复杂。何况,严格说来,电力线路的参数是十分均匀分布的,即使是极短的一段线路,都有相应大小的电阻、电抗、电纳、电导。换言之即使如此复杂的等值电路,也不能认为精确。但好在电力线路一般不长,需分析的又往往只是它们的端点状况两端电压、电流、功率,通常可不考虑线路的这种分布参数,只是在个别情况下才要用双曲函数研究具有均匀分布参数特性的线路。以下,先讨论一般线路的等值电路。所谓一般线路,指中等及中等以下长度线路。对架空线路,这长度大约为300km;对电缆线路,大约为100km。线路长度不超过这些数值时,可不考虑它们的分布参数特性,而只用将线路参数简单地集中起来的电路表示。在以下的讨论中,R(),X(),G(S),B(S)分别表示全线路每相的总电阻、电抗、电纳、电导。显然线路长度为l(km)时 (2-1)一般线路中,又有短线路和中等长度线路之分。 图2-2 短线路的等值电路图Z所谓短线路,是指长度不超过100km的架空线路。线路电压不高时,这种线路导纳B的影响一般不大,可略去。从而,这种线路的等值电路最简单。只有一串联的总电抗,如图2-2所示。 显然,如果电缆线路不长,电纳的影响不大时,也可采用这种等值电路。由图2-2可得 (2-2)将式(2-2)与电路理论课程中介绍过的两端口或四端网络方程式 (2-3)相比较,可得这种等值电路的通用常数A、B、C、D (2-4)所谓中等长度电路,是指长度在100km 300km之间的架空线路和不超过100km的电缆线路。这种线路的电纳B一般不能略去。这种线路的等值电路有二种形等值电路和T形等值电路,如图2-3(a)(b)所示。其中,通常是形等值电路。在形等值电路中,除串联的线路总阻抗外,还将线路的总导纳分为两半,分别并联在线路的始末端。在T形等值电路中,线路的总导纳集中在中间,而线路的总阻抗则分为两半,分别串联在它的两侧。因此,这两种电路都是近似的等值电路,而且,相互间并不等值,即它们不能用-Y变换公式相互变换。由图2-3(a)可得,流过串联阻抗Z的电流为,从而 (2-5)流入始端导纳的电流为,从而 (2-6)由此又可得 (2-7)将式(2-7)与式(2-3)相比较,可得这种等值电路的通用常数 (2-8)Z/2 Z/2ZY (a) (b)(a) 形等值电路(b) T形等值电路图2-3 中等长线路的等值电路图相似的可以到图2-3(b)所示等值电路的通用常数 (2-9)2.2变压器的模型(1)双绕组变压器的参数和数学模型由于变压器短路损耗近似等于额定电流流过变压器时高低压绕组中的总铜耗,即而铜耗与电阻之间有如下的关系 可得式中,、以V、VA为单位,以W为单位。如改以kV,改以MVA为单位,则可得 (2-10)式中 变压器高低压侧绕组的总阻抗(); 变压器的短路损耗(kW); 变压器的额定容量(MVA); 变压器的额定电压(kV);在电力系统计算中,求取变压器电抗的方法和电机学课程中介绍的略有不同。由于大容量变压器的阻抗中以电抗为主,亦即变压器的电抗和阻抗数值上接近相等,可大致认为变压器的短路电压百分值%与变压器的电抗有如下关系%从而 (2-11)式中 变压器高低压侧绕组的总电抗(); %变压器的短路电压百分值; 、的代表意义与上面相同。变压器的励磁支路有两种表示方式,即以阻抗表示和以导纳表示。前者在电机学课程中常用,后者则在电力系统计算中常用。它们分别示于图2-4(a)(b)。而与之对应的空载运行时的电压、电流相量图则示于图2-5(a)(b)。 变压器励磁支路一导纳表示时,其对应的是变压器的铁耗。因变压器的铁耗近似与变压器的空载损耗相等,电导也可于空载损耗相对应。而由图2-4(b)可见,两者之间有如下关系 (2-12)式中 变压器的电导(S); 变压器的空载损耗(kW); 变压器的额定电压(kV)(a)励磁支路以阻抗表示时(b)励磁支路以导纳表示图2-4 双绕组变压器的等值电路图由图2-5(b)可见,变压器空载电流中流经电纳的部分占很大的比重,从而,它和空载在电流在数值上接近相等,可以代替求取变压器的电纳。亦即,由于 (2-13)而 (2-14)而得 (2-15)将代入,最后得 (2-16)式中 变压器的电纳(S); 变压器的空载电流百分数; 、的代表意义与(2-10)同。求得变压器的阻抗、导纳后,即可作变压器的等值电路。变压器的等值电路有两种,即形等值电路和T形等值电路。在电力系统计算中,通常用形等值电路,且将励磁支路接在电源侧。这种等值电路就如图2-4(b)所示。(2) 三绕组变压器的参数和数学模型计算三绕组变压器各绕组阻抗的方法虽与计算双绕组变压器的方法没有本质的区别,但是由于三绕组变压器各绕组的容量比有不同组合,而各绕组在铁芯上的排列又有不同方式,计算时需注意。 三绕组变压器按三个绕组容量比的不同有三种不同的类型.第种为100/100/100,即三个绕组的容量都等于变压器的额定容量;第种100/100/50,即第三绕组的容量仅为变压器额定容量的 50%;第种为100/50/100,即第二绕组的容量仅为变压器额定容量的50%。目前已在系统中使用的三绕组变压器,从制造厂收集到的往往是它的三个绕组两两作短路实验时测得的短路损耗。如该变压器属第一类型,可由提供的短路损耗、直接按下式求取各绕组的短路损耗 (2-17)然后按与双绕组变压器相似的公式计算各绕组电阻 (2-18)如该变压器属第、第种类型,则制造厂提供的短路损耗数据是一对绕组中容量较小的一方达到它本身的额定容量,即时的值。这时,应首先将各绕组间的短路损耗数据归算为额定电流的值,在运用上列公式求取各绕组的短路损耗和电阻。例如,对100/50/100类型变压器,制造厂提供的短路损耗、都是第二绕组中流过它本身的额定电流,即二分之一变压器额定电流时测得的数据。因此,应首先将它们归算到对应于变压器的额定电流 (2-19)然后再按式(2-17)(2-18)计算。求取三绕组变压器导纳的方法和求取双绕组变压器导纳的方法相同。2.3 负荷模型在电力系统的稳态分析中,负荷的数学模型最简单,就是以给定的有功功率和无功功率表示。只有在对计算精度要求较高时,才需计及负荷的静态特性。负荷的静态特性可以用函数或多项式表示,如静态电压特性可为也可为:式中 在额定电压下的有功功率、无功功率负荷; P、Q电压偏离额定值时的有功功率、无功功率负荷;待定的系数,它们的数值可通过拟合相应的特性曲线而得。一般可将与节点有关的负荷模型描述为 (2-23)式中,U为节点实际电压;为节点参考电压。如果式(3.23)中,S为恒功率负荷;如果,S为恒电流负荷;如果,S为恒阻抗负荷。为了讨论方便,假定S为恒阻抗负荷,则有 (2-24)因此,可以将节点的恒阻抗表示为 (2-25)式中为节点的电压。一般认为节点负荷为恒功率的,对于运行在正常工作条件下的配电系统,其节点电压变化幅度在5%以内,可以认为节点电压是恒定的,此时恒功率负荷可以作为恒阻抗负荷来处理。3基于前推回代法的潮流计算已知配电网的始端电压和末端负荷,以馈线为基本计算单位。最初假设全网电压都为额定电压,根据负荷功率由末端向始端逐段推算,仅计算各元件中的功率损耗而不计算节点电压,求得各支路上的电流和功率损耗,并据此获得始端功率,这是回代过程;再根据给定的始端电压和求得的始端功率,由始端向末端逐段推算电压降落,求得各节点电压,这是前推过程。如此重复上述过程,直至各个节点的功率偏差满足允许条件为止。前推回代法基于支路电流进行,首先假定各节点的电压幅值为1,幅角为0,具体计算步骤为:(1)从第一层节点开始,根据基尔霍夫电流定律,求支路上的电流: (3-1)式中,是节点 j 的功率,是节点 j 的电压。(2)从第二层开始逐层计算非末梢节点的注入电流,根据基尔霍夫电流定律应等于(1-1)式与该节点流出电流之和: (3-2)(3)由步骤1)和2)可求出所有支路的支电流,再利用已知的根节点电压,从根节点向后顺次求得各个负荷节点的电压 (3-3)其中i为父节点,j为子节点,Z为i、j间支路的阻抗。(4)计算各节点的电压幅值修正量: (3-4)(5)计算节点电压修正量的最大值;(6)判别收敛条件: (3-5)其中k为迭代次数,若最大电压修正量小于阈值,则跳出循环,输出电压计算结果;否则重复步骤(1)(6),直到满足(1-5)式的条件为止。(7)在得到各个节点的电压电流后,就可以计算线路潮流S: (3-6)总之,(3-1)(3-3)式为一组递归方程,对树进行前向遍历,从树的末梢节点出发,利用已知的负荷功率,逐一计算(3-1)(3-2)式,即可求得根节点处的电流,再从根节点出发,对树进行后向遍历,用(3-3)式可求各节点电压。这样就完成一次前推后代的计算,迭代重复进行,直至满足收敛标准为止。4 基于matlab的程序设计4.1 MATLAB简介MATLAB,是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。MATLAB是矩阵实验室(Matrix,Laboratory)的简称,和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C+,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。在科学研究和工程应用中,往往要进行大量的数学计算,其中包括矩阵运算。这些运算一般来说难以用手工精确和快捷地进行,而要借助计算机编制相应的程序做近似计算。目前流行用Basic、Fortran和c语言编制计算程序,,既需要对有关算法有深刻的了解,还需要熟练地掌握所用语言的语法及编程技巧。对多数科学工作者而言,同时具备这两方面技能有一定困难。通常,编制程序也是繁杂的,不仅消耗人力与物力,而且影响工作进程和效率。为克服上述困难,美国Mathwork公司于1967年推出了“Matrix,Laboratory”(缩写为Matlab)软件包,并不断更新和扩充。MATLAB产品族可以用来进行以下各种工作:数值分析数值和符号计算工程与科学绘图控制系统的设计与仿真数字图像处理数字信号处理通讯系统设计与仿真财务与金融工程MATLAB的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用MATLAB函数集)扩展了MATLAB环境,以解决这些应用领域内特定类型的问题。MATLAB可进行以下运算:(1)与常数的运算常数与矩阵的运算即是同该矩阵的每一元素进行计算。但需注意进行数除时,常数通常只能做除量。基本函数运算中,矩阵的函数运算是矩阵预算中最实用的部分,常用的主要有以下几个: det(a) 求矩阵a的行列式 eig(a) 求矩阵a的特征值 inv(a)或a(-1) 求矩阵a的逆矩阵 rank(a) 求矩阵a的秩 trace(a) 求矩阵a的迹(对角线元素之和) 我们进行工程计算时常常遇到矩阵对应元素之间的运算。这种运算不同于前面讲的数学运算,为有所区别,我们称之为数组运算。(2)基本数学运算 数组的加、减与矩阵的加、减运算完全相同。而乘除法运算有相当大的区别,数组的乘除法是指两同维数组对应元素之间的乘除法,它们的运算符为“.*”和“./”或“.。”前面讲过常数与矩阵的除法运算中常数只能做除数。在数组运算中有了“对应关系”的规定,数组与常数之间的除法运算没有任何限制。 另外,矩阵的数组运算中还有幂运算(运算符.)、指数运算(exp)、对数运算(log)、和开方运算(sqrt)、等,有了“对应元素”的规定,数组的运算实质上就是针对数组内部的每个元素进行的。矩阵的幂运算与数组的幂运算有很大的区别。(3)逻辑关系运算逻辑运算是MATLAB中数组运算所特有的一种运算形式,也是几乎所有的高级语言普遍适用的一种运算。4.2 程序设计(1)程序运算流程图如图4-1所示图4-1(2)程序代码clc;clear all;% 第一列为首节点,第二列为末节点,第三列为支路电阻,第四列为支路电抗BranchData = 0 1 0.933 0.655; 1 2 1.203 0.453; 2 3 1.279 0.521; 3 4 2.145 0.964; 4 5 3.022 1.477; 5 6 4.5 1.223; 6 7 2.89 0.818; 7 8 1.249 0.384; %第一列为节点号,第二列为负荷有功,第三列为负荷无功NodeData = 1 98 98; 2 70.00 60.00; 3 85.00 80.00; 4 55.00 55.00; 5 40.00 40.00; 6 50.00 50.00; 7 40.00 30.00; 8 20.00 15.00; UB = 10; % 基准电压 kVNN = 9; % 节点数SB = 100; % 基准功率 MVAZB = UB2/SB; % 基准阻抗 ohm nb=size(BranchData,1); %支路数BranchData(:,3,4) = BranchData(:,3,4) / ZB; % 阻抗标幺化NodeData(:,2,3) = NodeData(:,2,3) / SB / 1000; % 功率标幺化BranchData(:,1,2) = BranchData(:,1,2) + 1; % 节点从1开始A0 = zeros(NN); for n = 1:(NN-1) A0(BranchData(n,1),BranchData(n,2) = 1;end % 形成 A0i=sqrt(-1);A0T = A0' % 形成 A0 的转置S = 0;-NodeData(:,2) - i*NodeData(:,3); % 形成 SZL = 0;BranchData(:,3) + i*BranchData(:,4); % 形成 ZLV = ones(NN,1);V(1) = 1; % 各个节点电压赋初值IL(NN,1) = -conj(S(NN) / V(NN); % 最末支路电流赋初值Delta = 1; % 收敛判据赋初值TempV = V; % 赋初值,用于记忆上次迭代结果k=0;tic %计时while Delta > 1e-6 IN = conj(S ./ V); % 节点注入电流 for n = 1:NN-1 IL(NN-n) = A0(NN-n,NN-n+1:end) * IL(NN-n+1:end) - IN(NN-n); end % 电流回代过程 for n = 2:NN V(n) = A0T(n,1:n-1) * V(1:n-1) - ZL(n) * IL(n); end % 电压前推过程 Delta = max(abs(V-TempV); % 更新收敛判据 TempV = V; % 记忆迭代结果 k=k+1; if k>=30 break; endendtocv=abs(V); %取电压幅值theta=angle(V)*180/pi; %取电压相角Sij=zeros(nb,1); %用来存储损耗for n=1:nb %计算支路损耗 Sij(n)=(V(BranchData(n,1)-V(BranchData(n,2)*. conj(V(BranchData(n,1)-V(BranchData(n,2)/ZL(n+1);endPloss=real(Sij); %有功损耗Qloss=imag(Sij); %无功损耗if k=30disp(' 节点 电压幅值 电角度'); for m=1:NN fprintf('%6d%12.4f%13.4fn',m,v(m),theta(m);end fprintf('n'); disp(' 首节点 末节点 有功损耗 无功损耗'); for m=1:nb fprintf('%6d%8d%12.4f%13.4fn',BranchData(m,1),. BranchData(m,2),Ploss(m),Qloss(m);End fprintf('n'); fprintf('迭代次数 :%dn',k);else disp('不收敛!');end4.3 算例验证(1)算例1图4-2给出了简单配电网的示意图,网络结构参数由表1和表2分别给出,运行结果见表4,利用此方法进行迭代运算。图4-2将运行结果表3与文献数据表4做对比,误差在合理范围内,说明此算法有效。(2)算例2以IEEE33节点系统为例,其网络如图4-3所示,其支路参数见表5,运行结果见表6。图4-3表5 IEEE3