5节点电力系统牛顿-拉夫逊法潮流计算
- 格式:doc
- 大小:759.64 KB
- 文档页数:14
牛顿拉夫逊法计算潮流步骤牛顿拉夫逊法(Newton-Raphson Method)是一种常用于计算潮流的数值求解方法。
它是基于潮流计算的功率流方程的非线性特性而设计的,通过迭代求解来逼近潮流计算的稳态解。
下面将介绍牛顿拉夫逊法计算潮流的基本步骤。
首先,我们需要明确潮流计算的目标,即确定电力系统中各节点的电压相角和幅值。
这些节点是电力系统中的发电机、负荷和交流输电线路的连接点。
通过潮流计算,我们可以得到各节点的电压相角和幅值,从而分析系统的功率分布、电压稳定性等运行特性。
接下来,我们需要建立电力系统的潮流计算模型。
这个模型中,我们需要考虑发电机的注入功率、负荷的吸收功率、线路的传输损耗等因素。
通过利用功率流方程,我们可以将这些因素表示为电压、功率和导纳之间的方程。
然后,我们需要进行初始化操作。
在进行牛顿拉夫逊法迭代计算之前,我们需要对电力系统的各节点进行初始电压值的设定。
这些初始值可以根据经验或者历史数据来得到,但需要满足物理约束条件,如一致性、电压幅值在合理范围内等。
接下来,我们进入迭代计算的过程。
首先,我们需要对系统的节点进行编号,然后选择某一节点作为基准节点,其他节点相对于基准节点的电压相角进行计算。
然后,我们根据节点注入功率和导纳矩阵的关系,得到节点注入电流。
接着,我们根据节点注入电流和电压相角的关系,计算各节点的电压相角和幅值的改变量。
在计算改变量后,我们需要对节点电压进行更新。
更新后,我们判断系统是否达到收敛条件。
如果满足收敛条件,则停止迭代,得到最终的潮流计算结果;如果不满足收敛条件,则继续进行下一轮迭代计算。
最后,我们对潮流计算结果进行分析和验证。
通过比较计算得到的结果和实际运行数据进行对比,我们可以评估潮流计算的准确性。
同时,我们还可以通过故障分析、电压稳定性评估等手段对电力系统进行优化和改进。
总而言之,牛顿拉夫逊法是一种常用的求解潮流计算问题的方法。
它通过迭代求解潮流计算的功率流方程,逼近潮流计算的稳态解。
电力系统稳态分析摘要电力系统潮流计算是研究电力系统稳态运行情况的一种重要的分析计算,它根据给定的运行条件及系统接线情况确定整个电力系统各部分的运行状态:各母线的电压,各元件中流过的功率,系统的功率损耗。
所以,电力系统潮流计算是进行电力系统故障计算,继电保护整定,安全分析的必要工具。
本文介绍了基于MATLAB软件的牛顿—拉夫逊法和P—Q分解法潮流计算的程序,该程序用于计算中小型电力网络的潮流。
在本文中,采用的是一个5节点的算例进行分析,并对仿真结果进行比较,算例的结果验证了程序的正确性和迭代法的有效性。
关键词:电力系统潮流计算;MATLAB;牛顿—拉夫逊法;P-Q分解法;目次1 绪论 01.1背景及意义 01.2相关理论 01。
3本文的主要工作 (1)2 潮流计算的基本理论 (2)2。
1节点的分类 (2)2。
2基本功率方程式(极坐标下) (2)2.3本章小结 (3)3 潮流计算的两种算法 (4)3。
1牛顿—拉夫逊算法 (4)3.2PQ分解算法 (10)3。
3本章小结 (14)4 算例 (15)4.1系统模型 (15)4.2结果分析 (15)4。
3本章小结 (18)结论 (19)参考文献 (20)附录 (21)1 绪论1。
1背景及意义电力系统稳态分析是研究电力系统运行和规划方案最重要和最基本的手段。
电力系统稳态分析根据给定的发电运行方式和系统接线方式来确定系统的稳态运行状态,其中潮流计算针对电力系统的各种正常的运行方式进行稳态分析.潮流计算是根据给定的电网结构、参数和发电机、负荷等元件的运行条件,确定电力系统各部分稳态运行状态参数的计算.通常给定的运行条件有系统中各电源和负荷点的功率、枢纽点电压、平衡点的电压和相位角。
待求的运行状态参量包括电网各母线节点的电压幅值和相角,以及各支路的功率分布、网络的功率损耗等.电力系统潮流计算问题在数学上是一组多元非线性方程式求解问题,其解法都离不开迭代.潮流计算方法的改进过程中,经历了高斯-赛德尔迭代法、阻抗法、分块阻抗法、牛顿-拉夫逊法、改进牛顿法、P—Q分解法等。
辽宁工程技术大学电力系统分析综合训练一设计题目5节点电力网络潮流计算指导教师刘健辰院(系、部)电气与控制工程学院专业班级电气12-4学号**********姓名张萌日期2016.5.5电气系综合训练标准评分模板电力系统分析综合训练一 任务书本次综合训练目的在于通过对多节点电网的潮流计算,巩固和运用前面所学到的潮流计算基础理论知识,掌握电力系统潮流计算机计算的一般原则和方法,掌握潮流计算软件的使用方法,培养学生分析问题和解决问题的能力。
5节点系统单线图如下:发电机、变压器、负荷数据见上图和下表。
线路长度和回数数据见后面的班级数据表。
基本数据如下:注:100base S MV A =,节点1和3处15base V kV =,节点2、4、5处345base V kV =。
设计要求:利用PowerWorld建立单线图程序,完成潮流分析计算,给出设计结果。
设计说明书内容:1、任务书2、PowerWorld软件简介及牛顿-拉夫逊潮流计算和PQ分解潮流计算简介3、绘制单线图,进行潮流计算(分别采用牛-拉法和PQ分解法)列表给出潮流计算结果(包括迭代次数,节点电压的幅值和相位,线路有功/无功潮流,发电机输出功率)。
4、手工计算导纳矩阵,并与软件计算结果比较。
5、单步运行牛-拉法潮流计算,给出前3步计算结果(包括节点电压的幅值和相位,线路有功/无功潮流,发电机输出功率)以及雅克比矩阵。
6、在保证每条线路和变压器不过载的情况下,确定节点3上发电机的允许出力范围。
7、在节点2上添加200Mvar并联电容器组,观察节点2电压变化和系统损耗变化。
改变电容器组的容量,提高节点2电压达到0.95。
8、(选做内容)静态安全分析:对“单个线路”和“单个变压器”进行N-1校验分析。
9、结论说明:1. 线路2. 变压器T2为两台并联,并联运行的变压器参数相同。
目录一、综合训练目的: (1)二、简介 (1)1、Power World软件简介: (1)2、潮流计算方法简介 (1)(1)牛顿-拉夫逊潮流计算方法 (1)(2)PQ分解法 (2)三、Power World潮流计算 (2)1、单线图 (2)2、潮流计算结果 (3)(1)牛-拉法潮流计算结果 (3)(2)PQ分解法潮流计算结果 (3)四、计算导纳矩阵 (4)软件计算结果 (5)五、单步运行牛-拉法潮流计算 (5)1、节点以及线路参数 (5)2、雅克比矩阵 (6)六、确定节点3上发电机的允许出力范围 (7)七、并联电容 (8)八、结论 (8)一、综合训练目的:本次综合训练旨在于掌握Power World Simulator 软件构建单线图的方法,通过对软件使用手册的学习,掌握潮流计算软件的使用方法,培养学生分析问题和解决问题的能力。
牛顿拉夫逊法计算潮流步骤牛顿拉夫逊法(Newton-Raphson method)是一种用于求解非线性方程组的迭代方法,它可以用来计算电力系统潮流的解。
潮流计算是电力系统规划和运行中的重要任务,它的目标是求解电力系统中各节点的电压幅值和相角,以及线路的功率流向等参数,用于分析电力系统的稳定性和安全性,以及进行电力系统规划和调度。
下面是使用牛顿拉夫逊法计算潮流的一般步骤:步骤1:初始化首先,需要对电力系统的各个节点(包括发电机节点和负荷节点)的电压幅值和相角进行初始化,一般可以使用其中一种估计值或者历史数据作为初始值。
步骤2:建立潮流方程根据电力系统的潮流计算模型,可以建立节点电压幅值和相角的平衡方程,一般采用节点注入功率和节点电压的关系来表示。
潮流方程一般是一个非线性方程组,包含了各个节点之间的复杂关系。
步骤3:线性化方程组将潮流方程组进行线性化处理,一般采用泰勒展开的方法,将非线性方程组变为线性方程组。
线性化的过程需要计算雅可比矩阵,即方程组中的系数矩阵。
步骤4:求解线性方程组利用线性方程组的求解方法,比如高斯消元法或LU分解法等,求解线性方程组,得到电压幅值和相角的修正量。
步骤5:更新节点电压根据线性方程组的解,更新各个节点的电压幅值和相角,得到新的节点电压。
步骤6:检查收敛性判断节点电压的修正量是否小于设定的收敛阈值,如果满足收敛条件,则停止迭代;否则,返回步骤3,循环进行线性化方程组和线性方程组的求解。
步骤7:输出结果当潮流计算收敛时,输出最终的节点电压幅值和相角,以及线路的功率流向等参数。
牛顿拉夫逊法是一种高效、快速且收敛性良好的方法,广泛应用于电力系统潮流计算。
在实际应用中,可能会遇到多次迭代或者收敛性不好的情况,此时可以采用退火技术或其他优化算法进行改进。
此外,牛顿拉夫逊法的计算也可以并行化,利用多核处理器或者分布式计算集群来加速计算过程。
总之,牛顿拉夫逊法是一种重要的潮流计算方法,通过迭代计算逼近非线性方程组的解,可以得到电力系统中各节点的电压幅值和相角,用于分析电力系统的稳定性和安全性。
电力系统潮流计算完整程序及详细理论说明——秦羽风在我刚开始学习潮流程序时,总是找不到一个正确的程序开始模仿学习。
后来经过多方努力,终于自己写出了一个结构清晰、完整的潮流程序。
此程序是一个通用的程序,只需要修改输入数据的子函数(PowerFlowsData_K)里面的母线、支路、发电机、负荷,就能算任意一个网络结构的交流系统潮流。
很适合初学者学习.为了帮助电力系统的同学一起学习,我将我编写的潮流计算程序分享下来给大家;此程序是在基于牛顿拉夫逊算法的基础上,编写的快速解耦算法。
每一个子程序我都有备注说明。
如果有不对的地方,希望大家指正!下文中呈现的顺序为:网络结构、子程序、主程序、运算结果、程序设计理论说明。
一、网络结构:5节点网络如下图。
二、子程序(共有9个子程序)子程序1:(其他系统,只需要修改Bus、Branch、Generator、Load,这四个矩阵就行了)function [Bus,Branch,Generator,Load]=PowerFlowsData_K%%节点数据% 类型:1-平衡节点;2-发电机PV节点;3—负荷PQ节点;4-发电机PQ节点;Bus=[% 类型电压相角1 1。
06 0;2 1 0;3 1 0;3 1 0;3 1 0];%% 线路数据Branch=[% 发送接收电阻电感(电导电容)并联1 2 0.02 0.06 0 0.06;1 3 0。
08 0。
24 0 0。
05;2 3 0.06 0.18 0 0。
04;2 4 0。
06 0。
18 0 0.04;2 5 0.04 0.12 0 0。
03;3 4 0.01 0.03 0 0。
02;4 5 0.08 0.24 0 0.05];%% 发电机数据Generator=[%节点定有功定无功(上限下限)无功1 0 0 5 —5;2 0。
4 03 —3];%%负载数据Load=[% 节点定有功定无功2 0.2 0.1;3 0。
牛顿—拉夫逊法在电力系统潮流计算的应用与分析潮流计算是电力系统进行稳定计算和故障分析的基础,可以得到各电网各节点的电压,并求得网络的潮流及网络中各元件的电力损耗,进而求得电能损耗。
随着现代电力系统的不断扩大,需要对传统的牛顿-拉夫逊法进行改进,降低初值选取的敏感性和提高收敛速度。
经典的牛顿法给定潮流计算时各节点的类型,确定导纳矩阵、修正方程和迭代收敛条件,将非线性方程组线性化为修正方程组反复迭代求解,因此收敛范围依赖电压的初值;同时求解雅克比矩阵计算量较大,影响计算速度。
1 算法原理1.1 原理介绍牛顿迭代法是取之后,找更接近的方程根,一步一步迭代,找到更接近方程根的近似根。
牛顿迭代法是求方程根的重要方法之一,最大优点是在方程的单根附近具有平方收敛,且还可用来求方程的重根、复根。
电力系统潮流计算,各个母线所供负荷的功率是已知的,各个平衡节点外的节点电压是未知的,可以根据网络结构形成节点导纳矩阵,由节点导纳矩阵列写功率方程,由于功率方程里功率是已知的,电压的幅值和相角是未知的,这样潮流计算的问题就转为求解非线性方程组的问题。
为便于用迭代法解方程组,需将上述功率方程改写成功率平衡方程,并对功率平衡方程求偏导,得出对应的雅可比矩阵,给未知节点赋电压初值,将初值带入功率平衡方程,得到功率不平衡量,这样由功率不平衡量、雅可比矩阵、未知节点电压不平衡量构成误差方程,解方程得到节点电压不平衡量,节点电压加上其不平衡量构成新的节点电压初值,将其带入原功率平衡方程,重新形成雅可比矩阵,计算新的电压不平衡量,这样不断迭代,一般迭代三到五次就能收敛。
1.2 牛顿—拉夫逊迭代法的一般步骤:(1)形成各节点导纳矩阵 Y。
(2)设节点电压的初始值 U、相角初始值 e、迭代次数初值 0。
(3)计算各节点的功率不平衡量。
(4)根据收敛条件判断是否满足,若不满足则向下进行。
(5)计算雅可比矩阵中的各元素。
(6)修正方程式节点电压。
牛顿拉夫逊法潮流计算牛顿-拉夫逊法(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分别为通过求解线性方程组得到的电压幅值和相角的增量。
(二 〇 一 四 年 十 二 月课 程 论 文 学校代码: 10128 学 号: 20141100304题 目:五节点系统计算机潮流计算编程 学生姓名:张佳羽学 院:电力学院系 别:电力系专 业:电力系统及其自动化指导教师:郭力萍程序设计% 本程序的功能是用牛顿拉夫逊法进行潮流计算n=input('请输入节点数:n=’);nl=input(’请输入支路数:nl=');isb=input('请输入平衡母线节点号:isb=’);pr=input('请输入误差精度:pr=’);B1=input(’请输入由各支路参数形成的矩阵:B1=');B2=input(’请输入各节点参数形成的矩阵:B2=’);X=input('请输入由节点号及其对地阻抗形成的矩阵:X=’);Y=zeros(n);e=zeros(1,n);f=zeros(1,n);V=zeros(1,n);O=zeros(1,n);S1=zeros(nl);for i=1:nlif B1(i,6)==0p=B1(i,1);q=B1(i,2);else p=B1(i,2);q=B1(i,1);endY(p,q)=Y(p,q)—1。
/(B1(i,3)*B1(i,5));Y(q,p)=Y(p,q);Y(q,q)=Y(q,q)+1。
/(B1(i,3)*B1(i,5)^2)+B1(i,4)./2;Y(p,p)=Y(p,p)+1。
/B1(i,3)+B1(i,4)./2;end%求导纳矩阵disp('导纳矩阵Y=');disp(Y);G=real(Y);B=imag(Y);for i=1:ne(i)=real(B2(i,3));f(i)=imag(B2(i,3));V(i)=B2(i,4);endfor i=1:nS(i)=B2(i,1)—B2(i,2);B(i,i)=B(i,i)+B2(i,5);endP=real(S);Q=imag(S);ICT1=0;IT2=1;N0=2*n;N=N0+1;a=0;while IT2~=0IT2=0;a=a+1;for i=1:nif i~=isbC(i)=0;D(i)=0;for j1=1:nC(i)= C(i)+G(i,j1)*e(j1)—B(i,j1)*f(j1);D(i)= D(i)+G(i,j1)*f(j1)+B(i,j1)*e(j1);endP1=C(i)*e(i)+f(i)*D(i);Q1=f(i)*C(i)—D(i)*e(i);V2=e(i)^2+f(i)^2;if B2(i,6)~=3DP=P(i)-P1;DQ=Q(i)-Q1;for j1=1:nif j1~=isb&j1~=iX1=-G(i,j1)*e(i)—B(i,j1)*f(i);X2=B(i,j1)*e(i)—G(i,j1)*f(i);X3=X2;X4=-X1;p=2*i-1;q=2*j1—1;J(p,q)=X3;J(p,N)=DQ;m=p+1;J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X4;J(m,q)=X2;elseif j1==i&j1~=isbX1=—C(i)-G(i,i)*e(i)—B(i,i)*f(i);X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);X3=D(i)+B(i,i)*e(i)-G(i,i)*f(i);X4=-C(i)+G(i,i)*e(i)+B(i,i)*f(i);p=2*i-1;q=2*j1—1;J(p,q)=X3;J(p,N)=DQ;m=p+1;J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X4;J(m,q)=X2;endendelseDP=P(i)—P1;DV=V(i)^2—V2;for j1=1:nif j1~=isb&j1~=iX1=—G(i,j1)*e(i)-B(i,j1)*f(i);X2=B(i,j1)*e(i)—G(i,j1)*f(i);X5=0;X6=0;p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV;m=p+1;J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6;J(m,q)=X2;elseif j1==i&j1~=isbX1=—C(i)—G(i,i)*e(i)—B(i,i)*f(i);X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);X5=-2*e(i);X6=—2*f(i);p=2*i-1;q=2*j1—1;J(p,q)=X5;J(p,N)=DV;m=p+1;J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6;J(m,q)=X2;endendendendend%求雅可比矩阵for k=3:N0k1=k+1;N1=N;for k2=k1:N1J(k,k2)=J(k,k2)./J(k,k);endJ(k,k)=1;if k~=3;k4=k—1;for k3=3:k4for k2=k1:N1J(k3,k2)= J(k3,k2)—J(k3,k)*J(k,k2);endJ(k3,k)=0;endif k==N0,break;endfor k3=k1:N0for k2=k1:N1J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);endJ(k3,k)=0;endelsefor k3=k1:N0for k2=k1:N1J(k3,k2)= J(k3,k2)—J(k3,k)*J(k,k2);endJ(k3,k)=0;endendendfor k=3:2:N0—1L=(k+1)。
摘要本文,首先简单介绍了基于在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。
(二 〇 一 四 年 十 二 月课 程 论 文 学校代码: 10128 学 号: ***********题 目:五节点系统计算机潮流计算编程 ****:***学 院:电力学院系 别:电力系专 业:电力系统及其自动化****:***程序设计% 本程序的功能是用牛顿拉夫逊法进行潮流计算n=input('请输入节点数:n=');nl=input('请输入支路数:nl=');isb=input('请输入平衡母线节点号:isb=');pr=input('请输入误差精度:pr=');B1=input('请输入由各支路参数形成的矩阵:B1=');B2=input('请输入各节点参数形成的矩阵:B2=');X=input('请输入由节点号及其对地阻抗形成的矩阵:X='); Y=zeros(n); e=zeros(1,n);f=zeros(1,n);V=zeros(1,n);O=zeros(1,n);S1=zeros(nl);for i=1:nlif B1(i,6)==0p=B1(i,1);q=B1(i,2);else p=B1(i,2);q=B1(i,1);endY(p,q)=Y(p,q)-1./(B1(i,3)*B1(i,5));Y(q,p)=Y(p,q);Y(q,q)=Y(q,q)+1./(B1(i,3)*B1(i,5)^2)+B1(i,4)./2;Y(p,p)=Y(p,p)+1./B1(i,3)+B1(i,4)./2;end%求导纳矩阵disp('导纳矩阵Y=');disp(Y);G=real(Y);B=imag(Y);for i=1:ne(i)=real(B2(i,3));f(i)=imag(B2(i,3));V(i)=B2(i,4);endfor i=1:nS(i)=B2(i,1)-B2(i,2);B(i,i)=B(i,i)+B2(i,5);endP=real(S);Q=imag(S);ICT1=0;IT2=1;N0=2*n;N=N0+1;a=0;while IT2~=0IT2=0;a=a+1;for i=1:nif i~=isbC(i)=0;D(i)=0;for j1=1:nC(i)= C(i)+G(i,j1)*e(j1)-B(i,j1)*f(j1);D(i)= D(i)+G(i,j1)*f(j1)+B(i,j1)*e(j1);endP1=C(i)*e(i)+f(i)*D(i);Q1=f(i)*C(i)-D(i)*e(i);V2=e(i)^2+f(i)^2;if B2(i,6)~=3DP=P(i)-P1;DQ=Q(i)-Q1;for j1=1:nif j1~=isb&j1~=iX1=-G(i,j1)*e(i)-B(i,j1)*f(i);X2=B(i,j1)*e(i)-G(i,j1)*f(i);X3=X2;X4=-X1;p=2*i-1;q=2*j1-1;J(p,q)=X3;J(p,N)=DQ;m=p+1;J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X4;J(m,q)=X2;elseif j1==i&j1~=isbX1=-C(i)-G(i,i)*e(i)-B(i,i)*f(i);X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);X3=D(i)+B(i,i)*e(i)-G(i,i)*f(i);X4=-C(i)+G(i,i)*e(i)+B(i,i)*f(i);p=2*i-1;q=2*j1-1;J(p,q)=X3;J(p,N)=DQ;m=p+1;J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X4;J(m,q)=X2;endendelseDP=P(i)-P1;DV=V(i)^2-V2;for j1=1:nif j1~=isb&j1~=iX1=-G(i,j1)*e(i)-B(i,j1)*f(i);X2=B(i,j1)*e(i)-G(i,j1)*f(i);X5=0;X6=0;p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV; m=p+1;J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6;J(m,q)=X2;elseif j1==i&j1~=isbX1=-C(i)-G(i,i)*e(i)-B(i,i)*f(i);X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);X5=-2*e(i);X6=-2*f(i);p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV;m=p+1;J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6;J(m,q)=X2;endendendendend%求雅可比矩阵for k=3:N0k1=k+1;N1=N;for k2=k1:N1J(k,k2)=J(k,k2)./J(k,k);endJ(k,k)=1;if k~=3;k4=k-1;for k3=3:k4for k2=k1:N1J(k3,k2)= J(k3,k2)-J(k3,k)*J(k,k2);endJ(k3,k)=0;endif k==N0,break;endfor k3=k1:N0for k2=k1:N1J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);endJ(k3,k)=0;endelsefor k3=k1:N0for k2=k1:N1J(k3,k2)= J(k3,k2)-J(k3,k)*J(k,k2);endJ(k3,k)=0;endendendfor k=3:2:N0-1L=(k+1)./2;e(L)=e(L)-J(k,N);k1=k+1;f(L)=f(L)-J(k1,N);endfor k=3:N0DET=abs(J(k,N));if DET>=prIT2=IT2+1;endendICT2(a)=IT2;ICT1=ICT1+1;for k=1:ndy(k)=sqrt(e(k)^2+f(k)^2);endfor i=1:nDy(ICT1,i)=dy(i);endend%用高斯消去法解“w=-J*V”disp('迭代次数');disp(ICT1);disp('没有达到精度要求的个数'); disp(ICT2);for k=1:nV(k)=sqrt(e(k)^2+f(k)^2);shita(k)=atan(f(k)./e(k))*180/pi;E(k)=e(k)+f(k)*j;enddisp('各节点的实际电压标么值E为(节点号从小到大排列):'); disp(E);disp('各节点的电压大小V为(节点号从小到大排列):');disp(V);disp('各节点的电压相角时shita为(节点号从小到大排列):'); disp(shita);for p=1:nC(p)=0;for q=1:nC(p)=C(p)+conj(Y(p,q))*conj(E(q));endS(p)=E(p)*C(p);enddisp('各节点的功率S为(节点号从小到大排列):');disp(S);disp('各条支路的首端功率Si为(顺序同您输入B1时一样):'); for i=1:nlif B1(i,6)==0p=B1(i,1);q=B1(i,2);else p=B1(i,2);q=B1(i,1);endSi(p,q)=E(p)*(conj(E(p))*conj(B1(i,4)./2)+(conj(E(p)*B1(i,5))-conj(E(q) ))*conj(1./(B1(i,3)*B1(i,5))));disp(Si(p,q));enddisp ('各条支路的末端功率Sj为(顺序同您输入B1时一样):');for i=1:nlif B1(i,6)==0p=B1(i,1);q=B1(i,2);else p=B1(i,2);q=B1(i,1);endSj(q,p)=E(q)*(conj(E(q))*conj(B1(i,4)./2)+(conj(E(q)./B1(i,5))-conj(E(p) ))*conj(1./(B1(i,3)*B1(i,5))));disp(Sj(q,p));enddisp('各条支路的功率损耗DS为(顺序同您输入B1时一样):' );for i=1:nlif B1(i,6)==0p=B1(i,1);q=B1(i,2);else p=B1(i,2);q=B1(i,1);endDS(i)=Si(p,q)+Sj(q,p);disp(DS(i));endfor i=1:ICT1Cs(i)=i;enddisp('以下是每次迭代后各节点的电压值(如图所示)');plot(Cs,Dy),xlabel('迭代次数'),ylabel('电压'),title('电压迭代次数曲线');运行结果如下所示:请输入节点数:n=5请输入支路数:nl=5请输入平衡母线节点号:isb=1请输入误差精度:pr=>> 0.00001请输入由各支路参数形成的矩阵:B1=[1 2 0.03i 0 1.05 0;2 3 0.08+0.3i 0.5i 1 0;2 4 0.1+0.35i 0 1 0;3 4 0.04+0.25i 0.5i 1 0;3 5 0.015i 0 1.05 1]请输入各节点参数形成的矩阵:B2=[0 0 1.05 1.05 0 1;0 3.7+1.3i 1 0 0 2;0 2+1i 1 0 0 2;0 1.6+0.8i 1 0 0 2;5 0 1.05 1.05 0 3]请输入由节点号及其对地阻抗形成的矩阵:X=[1 0;2 0;3 0;4 0;5 0]导纳矩阵Y0 -33.3333i 0 +31.7460i 0 0 00 +31.7460i 1.5846 -35.7379i -0.8299 + 3.1120i -0.7547 + 2.6415i 00 -0.8299 + 3.1120i 1.4539 -66.9808i -0.6240 + 3.9002i 0 +63.4921i0 -0.7547 + 2.6415i -0.6240 + 3.9002i 1.3787 - 6.2917i 00 0 0 +63.4921i 0 0 -66.6667i迭代次数5没有达到精度要求的个数7 8 8 6 0各节点的实际电压标么值E为(节点号从小到大排列):1.0500 1.0335 - 0.0774i 1.0260 + 0.3305i 0.8592 - 0.0718i 0.9746 + 0.3907i各节点的电压大小V为(节点号从小到大排列):1.0500 1.0364 1.0779 0.8622 1.0500各节点的电压相角时shita为(节点号从小到大排列):0 -4.2819 17.8535 -4.7785 21.8433各节点的功率S为(节点号从小到大排列):2.5794 + 2.2994i -3.7000 - 1.3000i -2.0000 - 1.0000i -1.6000 - 0.8000i 5.0000 + 1.8131i各条支路的首端功率Si为(顺序同您输入B1时一样):2.5794 + 2.2994i-1.2774 + 0.2032i0.1568 + 0.4713i1.5845 + 0.6726i5.0000 + 1.8131i各条支路的末端功率Sj为(顺序同您输入B1时一样): -2.5794 - 1.9745i1.4155 - 0.2443i-0.1338 - 0.3909i-1.4662 - 0.4091i-5.0000 - 1.4282i各条支路的功率损耗DS为(顺序同您输入B1时一样): -0.0000 + 0.3249i0.1381 - 0.0412i0.0230 + 0.0804i0.1184 + 0.2635i0.0000 + 0.3849i本程序符号说明(1)clc,clear清屏,清除以前显示结果;(2)disp 显示待输出的内容,如disp('节点总数为:'),显示:节点总数为:;(3)for,end;循环语句,用于要循环的地方;(4)/ 正除;\ 反除;(5)sum 求和;(6)conj 复数求共轭;(7)% 注释(8):自然数循环如1:5以下是每次迭代后各节点的电压值(如图1所示):图1 每次迭代后各节点的电压值。