电力系统稳态分析大作业基于高斯赛德尔法潮流计算.docx
- 文档编号:30500737
- 上传时间:2023-08-16
- 格式:DOCX
- 页数:24
- 大小:323.22KB
电力系统稳态分析大作业基于高斯赛德尔法潮流计算.docx
《电力系统稳态分析大作业基于高斯赛德尔法潮流计算.docx》由会员分享,可在线阅读,更多相关《电力系统稳态分析大作业基于高斯赛德尔法潮流计算.docx(24页珍藏版)》请在冰豆网上搜索。
电力系统稳态分析大作业基于高斯赛德尔法潮流计算
电力系统稳态分析
姓名:
学号:
学院(系):
自动化学院
专业:
电气工程
题目:
基于Matlab的高斯和高斯—赛德尔法的潮流计算
指导老师:
2014年12月
摘要
电力系统潮流计算是电力系统稳态运行分析中最基本和最重要的计算之一,是电力系统其他分析计算的基础,也是电力网规划、运行研究分析的一种方法,在电力系统中具有举足轻重的作用。
经典算法有高斯法,高斯-赛德尔迭代法及牛顿法等,近年来学者们开始应用非线性规划法及智能算法等优化方法求解潮流问题,提高了收敛的可靠性。
高斯-赛德尔迭代法开始于上世纪50年代,是一种直接迭代求解方程的算法,既可以解线性方程组,可以解非线性方程组。
高斯法求解节点电压的特点是:
在计算节点i第k+1次的迭代电压时,前后所用的电压都是第k次迭代的结果,整个一轮潮流迭代完成后,把所有计算出的电压新值用于下一轮电压新值的计算过程中。
该计算方法简单,占用计算机内存小,能直接利用迭代求解节点电压方程,对电压初值的选取要求不是很严格。
但它的收敛性能较差,系统规模增大时,迭代次数急剧上升。
本文首先对高斯—赛德尔算法进行了综述,然后推导了该算法的计算过程,通过MATLAB软件计算了该算法的实例。
关键字:
潮流计算高斯法高斯-赛德尔法迭代
Abstract
Powerflowcalculationistheoneofthemostbasicandthemostimportantcalculationinthesteadystateanalysisofpowersystem.Itisthefoundationofotheranalyticalcalculationofpowersystem,amethodofanalysisandplanning,operationofpowernetwork.Soitplaysadecisiveroleinthepowersystem.TheclassicalalgorithmistheGaussmethod,Gauss-SeideliterativemethodandNewton'smethod,inrecentyears.Scholarsbegantoapplicatenonlinearprogrammingmethodandintelligentalgorithmoptimizationmethodforsolvingpowerflowproblem,enhancesthereliabilityofconvergence.
Gauss-Seideliterativemethodbeganinthe50'soflastcentury,isadirectiterationequationalgorithm,whichcansolvethelinearequationandnonlinearequations.CharacteristicsofGauss'smethodtocalculatethenodevoltageis:
intheiterativecalculationofnodei’sK+1-timesvoltage,thevoltageisusedtheresultsofK-timesiterative.Aftercompletingthewholeroundofpowerflowiteration,allvoltagevalueisusedtocalculatethenextroundofnewvoltagevalueof.Themethodissimpleandcapturessmallmemory.Italsocandirectlyusetheiterativesolutionofthenodevoltageequation.theselectionofinitialvaluesarenotverystrict.Butithaspoorconvergenceperformance.Thesystemscaleincreases,whenthenumberofiterationsrise.
ThispapergivesanoverviewoftheGaussSeidelalgorithmatthefirst.ThenitshowthecalculationprocessofthisalgorithmthroughtheMATLABsoftware.
Keywords:
GaussGauss-Seideliterativemethodthemethodofpowerflowcalculation
一高斯迭代法和高斯—赛德尔迭代法概述
电力系统潮流计算是研究电力系统稳态运行情况的一种基本电气计算。
它的任务是根据给定的运行条件和网路结构确定整个系统的运行状态,如各母线上的电压(幅值及相角)、网络中的功率分布以及功率损耗等。
电力系统潮流计算的结果是电力系统稳定计算和故障分析的基础。
给定电力系统的网络结构,参数和决定系统运行状况的边界条件,电力系统的稳态运行状态便随之确定。
潮流计算就是要通过数值仿真的方法把电力系统的详细运行状态呈现给运行和工作人员,以便研究系统在给定条件下的稳定运行特点。
潮流计算是电力系统分析中最基本、最重要的计算,是电力系统运行、规划以及安全性、可靠性分析和优化的基础,也是各种电磁暂态和机电暂态分析的基础和出发点。
20世纪50年代中期,随着电子计算机的发展,人们开始在计算机上用数学模拟的方法进行潮流计算。
最初在计算机上实现的潮流计算方法是以导纳矩阵为基础的高斯迭代法(Gauss法)。
这种方法内存需求小,但收敛性差。
后来在高斯迭代法上进行改进,这就是高斯——赛德尔迭代法(Gauss一Seidelmethod),潮流计算高斯—赛德尔迭代法,分为导纳矩阵迭代法和阻抗矩阵迭代法两种。
前者是以节点导纳矩阵为基础建立的赛德尔迭代格式,后者是以节点阻扰矩阵为基础建立的赛德尔迭代格式。
高斯——赛德尔迭代法这是数学上求解线性或非线性方程组的一种常用的迭代方法。
牛顿-拉夫逊方法是解非线性代数方程组的一种基本方法,在潮流计算中也得到了应用。
20世纪60年代中后期,系数矩阵技术和编号优化技术的提出使牛顿-拉夫逊的解题规模和计算效率进一步提高,至今仍是潮流计算中的广泛采用的优秀算法。
20世纪70年代中期,Stott在大量计算实践的基础上提出了潮流计算的快速分解法,是潮流计算的速度大大提高,可以应用于在线,但是直至20世纪80年代末期才对快速分解法潮流的收敛性给出了比较满意的解释。
由于潮流计算在电力系统中的特殊地位和作用,对其计算方法有如下较高的要求:
1.要有可靠的收敛性,对不同的系统及不同的运行条件都能收敛;
2.占用内存小、计算速度快;
3.调整和修改容易,使用灵活方便。
本文使用的高斯法和高斯-赛德尔迭代法,开始于上世纪50年代,是一种直接迭代求解方程的算法,既可以解线性方程组,可以解非线性方程组。
高斯法求解节点电压的特点是:
在计算节点i第k+1次的迭代电压时,前后所用的电压都是第k次迭代的结果,整个一轮潮流迭代完成后,把所有计算出的电压新值用于下一轮电压新值的计算过程中。
高斯-赛德尔法是刚刚计算出的x值在下次迭代中被立即使用。
两种方法都计算方法简单,占用计算机内存小,能直接利用迭代求解节点电压方程,对电压初值的选取要求不是很严格,但收敛性能较差,系统规模增大时,迭代次数急剧上升。
二节点导纳矩阵
1不定导纳矩阵
令连通的电力网络的节点数为N,大地作为节点未包括在内。
网络中有b条支路,包括接地支路。
如果把地节点增广进来,电网的(N+1)×b阶节点支路的关联矩阵A0,b阶支路导纳矩阵是yb,定义(N+1)×(N+1)阶节点导纳矩阵Y0为
(2-1)
并有网络方程
(2-2)
2导纳矩阵
选地节点为电压参考点,将它排在第N+1位,令参考点点位为零,则可将节点不定导纳矩阵表示的网络方程(2-1)写成分块的形式
(2-3)
展开后有
(2-4)
和
(2-5)
式(2-5)中Y为N×N阶矩阵,V和I分别为N维节点电压和电流列矢量,I0为流入地节点的电流。
三高斯迭代法
高斯迭代法是最早在计算机上实现的潮流计算方法。
这种方法编程简单,在某些应用领域,如配电网计算潮流计算中还有应用。
另外,也用于为牛顿-拉夫逊法提供初值。
考察基于节点导纳矩阵的高斯迭代法。
在网络方程(2-4)中,将平衡点s排在最后,并将导纳矩阵写成分块的形式,取出前n个方程有
(3-1)
平衡节点s的电压
给定,n个节点的注入电流矢量
已知,则有
(3-2)
实际电力系统给定量是n个节点的注入功率。
注入电流和注入功率之间的关系是
(3-3)
其中
和
为
和
的共轭复数。
写成矢量的形式
(3-4)
再把
写成对角线矩阵D和严格上三角矩阵U以及严格下三角矩阵L的和,可以得到
其中
代入式(2-2),经过整理可得到
(3-5)
考虑到电流和功率的关系式,(3-5)可以写成为
(3-6)
给定
,代入上式中可得电压新值,逐次迭代直到前后两次迭代求得的电压值的差小于某一收敛精度为止。
这是高斯迭代法的基本解算步骤。
四高斯—赛德尔迭代法
1高斯-赛德尔法的原理
每次迭代要从节点1扫描到节点n。
在计算
时,
已经求出,若若迭代是一个收敛过程,它们应比
,
更接近于真值。
所以,用
代替
可以得到更好的收敛效果。
这就是高斯—赛德尔迭代的思想,即一旦求出电压新值,在最后的迭代中立即使用。
这种方法的迭代公式是
高斯—赛德尔法比高斯迭代法的收敛性好。
2关于高斯法和高斯-赛德尔法的讨论
对于形如
(4-1)
的非线性代数方程组,总可以写成
(4-2)
的形式,于是,有如下的高斯迭代公式:
(4-3)
高斯迭代法的收敛性主要由
(4-4)
的谱半径决定。
是x的解点。
当
的谱半径小于1时,高斯迭代法可以收敛,
的谱半径越小高斯迭代法的收敛性越好。
求解式(4-3)有高斯法和高斯-赛德尔法。
高斯法的迭代过程为
(4-5)
高斯-赛德尔法的迭代公式是
(4-6)
即刚刚计算出的x值在下次迭代中被立即使用,当
时,迭代收敛。
对于连通的电力网络,各节点的电压是相关的,而不管两个节点之间是否有支路直接相连。
由于Y矩阵是高度稀疏的,由高斯迭代法的公式(4-5)可见,计算节点i的电压时,只有和节点i有支路直接相连的节点j的电压对
有贡献。
这种方法在迭代修正时利用的信息较少,收敛性较差,其优点是内存需求较少。
五实例验证
1案例描述
(有变压器支路的情况)如图所示的一个三母线电力系统,在母线①和母线③之间的输电线的母线③端连接着一个纵向串联加压器,可在同一电压等级改变电压幅值。
该系统的网络元件用图
(2)所示的等值电路表示,串联之路用电阻和电抗表示,并联支路用电纳表示。
支路(1,3)用一个变比可调的等值变压器之路表示,非标准变比t=1.05,在节点①侧。
试形成该网络的节点导纳矩阵。
假定节点①的注入功率
,节点②的注入功率是
,节点③是
节点,
。
试基于节点导纳矩阵的高斯法和高斯-赛德尔法计算潮流。
图1三母线电力系统
图2等值电路
图3电路的相关参数
2模型建立
首先对支路编号并规定串联之路的正方向如图(3)所示,则可得到广义节点支路关联矩阵A。
A中行与节点对应,列与支路对应。
A矩阵为
支路导纳矩阵为
建立节点导纳矩阵如下:
根据节点导纳矩阵可写出式(2-5)的表达式
其中
①当使用高斯迭代法进行计算时,其基本的迭代公式如下:
将上式写成简单迭代法的高斯法迭代格式为
②当使用高斯—赛德尔迭代法进行计算时,其基本的迭代公式如下
将上式写成简单迭代法的高斯法迭代格式为
高斯—赛德尔迭代法与高斯法的不同点在与,算出一个
后,立即在下一步运算中应用。
3案例程序流程图
报告基于matlab软件编程实现上述电力系统潮流计算,采用高斯迭代法和高斯-赛德尔迭代法。
程序流程图如下所示:
4案例程序
程序如下:
clear;
formatshort;
N=input('请输入节点个数:
N=');
A=input('请输入广义节点支路关联矩阵:
A=\n');
A%显示关联矩阵
Yb=input('请输入各支路导纳:
\n');
n=2*N;
YY=zeros(n);
%计算节点导纳矩阵
fori=1:
(n*n)
m=floor(i/n);
if(i==(n*m+m+1))
YY(i)=Yb(m+1);
end
YY(n*n)=Yb(n);
end
Y1=A*YY;
disp('节点导纳矩阵为:
');
Yn=Y1*(A.')
DD=diag(Yn);
D=zeros(N);
fori=1:
N*N
m=floor(i/N);
if(i==(m*N+m+1))
D(i)=DD(m+1);
end
D(N*N)=DD(N);%对角矩阵D
end
L=tril(Yn)-D;%下三角矩阵L
U=triu(Yn)-D;%上三角矩阵U
LL=zeros(N-1);
DD=zeros(N-1);
UU=zeros(N-1);
LL=L(1:
(N-1),1:
(N-1));
DD=D(1:
(N-1),1:
(N-1));
UU=U(1:
(N-1),1:
(N-1));%取矩阵n-1*n-1
%输入相关的信息
S=input('请输入节点1到节点n-1的注入功率S=\n');
V0=input('请给定节点电压初值V0=\n');
Vs=input('请输入平衡节点N的电压Vs=\n');
e=input('请输入收敛判断值:
e=\n');
Vk=zeros(N-1,1);
Vk1=zeros(N-1,1);
Vk=V0;
D1=inv(DD);
Ys=Yn(N,1:
N-1);
Ys0=(Ys*Vs).';
I=zeros(1,2);
Vl=zeros(N-1,1);
Vl1=zeros(N-1,1);
Vl1=V0;
Vll1(1,1:
2)=(V0);%记录每次迭代过程中各节点电压值
Vll2(1,1)=0;
j=1;
l=1;
%高斯迭代法
while(j==1)%循环计算
l=l+1;
Vl=Vl1;
I=(S')./(Vl');
Lk=(LL)*(Vl.');
Uk=(UU)*(Vl.');
Vl11=D1*(I-Ys0-Lk-Uk);%根据高斯迭代法
Vl1=Vl11.';
FVl=Vl1-Vl;
F=max(FVl);
Fact=sqrt((real(F))^2+(imag(F))^2);
Vll1(l,1:
2)=(Vl1);
Vll2(l,1)=Fact;
P=[Vll1,Vll2];
ifFact j=0;%若满足条件,设置标志位,停止迭代 end end k=1; V1(1,1: 2)=(V0);%记录每次迭代过程中各节点电压值 V2(1,1)=0; jj=1; FVk=zeros(1,2); %高斯赛德尔迭代 while(jj==1)%循环计算 k=k+1; Vk1=Vk; I1=conj(S (1))/conj(Vk (1)); Lk1=LL(1,1)*Vk (1)+LL(1,2)*Vk (2); Uk1=UU(1,1)*Vk (1)+UU(1,2)*Vk (2); Vk (1)=D1(1,1)*(I1-Ys0 (1)-Lk1-Uk1); I2=conj(S (2))/conj(Vk (2)); Lk2=LL(2,1)*Vk (1)+LL(2,2)*Vk (2); Uk2=UU(2,1)*Vk (1)+UU(2,2)*Vk (2); Vk (2)=D1(2,2)*(I2-Ys0 (2)-Lk2-Uk2); FVk (1)=Vk (1)-Vk1 (1); FVk (2)=Vk (2)-Vk1 (2); FVk=max(FVk.'); Fact1=sqrt((real(FVk))^2+(imag(FVk))^2); V1(k,1: 2)=(Vk); V2(k,1)=Fact1; V=[V1,V2]; ifFact1 jj=0;%若满足条件,设置标志位,停止迭代 end end fprintf('高斯迭代次数%d\n',(l-1));%输出结果 A=[0: l-1].'; P=[A,Vll1,Vll2]; disp('整个迭代过程如下: '); disp('迭代次数V1(k)V2(k)max(V(k+1)-V(k))'); disp(P); fprintf('高斯赛德尔迭代次数%d\n',(k-1));%输出结果 A=[0: k-1].'; V=[A,V1,V2]; disp('整个迭代过程如下: '); disp('迭代次数V1(k)V2(k)max(V(k+1)-V(k))'); disp(V); %绘制精度曲线 P=[1: l-1]; plot(P,Vll2(2: l)); holdon; P1=[1: k-1]; plot(P1,V2(2: k),'-.'); holdoff; title('高斯法和高斯赛德尔法的精度曲线') legend('高斯迭代法','高斯-赛德尔迭代法') xlabel('迭代次数') ylabel('精度') grid 5程序运行步骤和结果 程序的运行步骤如下: 输入节点个数: N=3, 输入广义节点支路关联矩阵: [-1-1/1.050100;10-1010;011001], 和支路导纳矩阵[0.2494-4.9875i,0.9901-9.9010i,0.49505-4.9505i,0.01i,0.03i,0.02i]后 运行结果如下 导纳矩阵的计算结果: 输入节点1到节点2的注入功率[-2-1i,0.5+0.415i]。 输入节点1和2电压初值[11]。 输入平衡节点N的电压Vs=1。 输入收敛判断值: e=0.00001后,运行的结果如下: 输入的参数 高斯迭代法的计算结果 高斯赛德尔的计算结果 再将计算出来每次迭代出来的精度制成精度曲线,曲线如下: 六结果分析 通过对上面的数据整理分析,可以看出,节点导纳的计算结果为 1.1474-13.9580i-0.2494+4.9875i-0.9430+9.4295i -0.2494+4.9875i0.7445-9.9080i-0.4950+4.9505i -0.9430+9.4295i-0.4950+4.9505i1.4852-14.8315i 与书上的例2.3结果相同。 当使用高斯法计算书上的例7.1后,通过matlab的仿真计算后,可以看到,经过14次的迭代后,V1和V2节点的电压的精度达到了0.00001,从结果可以看出,节点1的电压为0.9276-0.1388i,节点2的电压为1.0109-0.0236i。 当使用高斯-赛德尔法计算后,可以看到,经过9次的迭代后,V1和V2节点的电压的精度达到了0.00001,从结果可以看出,节点1的电压为0.9276-0.1388i,节点2的电压为1.0109-0.0236i。 由于书上的结果还未达到精度,但通过上面的结果中,可以得出,高斯赛德尔法中,第1-7次结果和书上的1-7次的结果一致,可以看出,程序计算正确。 然后通过高斯法和高斯赛德尔法的精度曲线,可以看出,高斯-赛德尔法,经过算出一个 后,立即在下一步运算中应用的处理后,它的收敛速度明显快于高斯算法。 因此高斯-赛德尔迭代计算方法快于高斯法。 七总结 由于本科阶段时,都是通过笔计算的。 这一次,通过matlab来计算潮流计算,首先,再一次复习了潮流计算的相关知识,并且学会将潮流计算中的计算过程转化为编程算法的方法。 由于以前没有学过matlab的编程设计,这一次都是自学来应用它来编程。 经过这次潮流计算编程的相关学习,我对于利用Matlab计算电力系统潮流的方法和思想都有了一定的了解,特别是利用Matlab进行矩阵的计算。 在使用Matlab编程仿真的过程中遇到了不少困难,比如说矩阵的计算,一个小小的标点的疏忽,就造成了编程的计算失败。 还有在参数设定的时候前后没有统一也造成了很大的麻烦。 通过这次大作业,不管做什么都要认真细心,细节决定成败。 MATLAB博大精深,接下来的时间里,我应该加深对Matlab软件的学习。 通过这次大作业,感觉收获很大,不仅加深了对电力系统潮流计算步骤的理解,也使对Matlab工具的应用更加熟练,相信以后的学习过程中这次的经历也会带来很大的帮助。 学无止境,认真对待每一份作业,并且花时间去琢磨和钻研,总会有收获的。 最后,感谢杨老师上课时的认真讲解,以及同学们的热心帮助。 文献参考 [1]张伯明,陈寿孙.高等电力网络分析(AdvancedPowerSystemNetworkAnalysis)[J].1996. [2]周庭阳,红岩,电力学家.电网络理论[M].浙江大学出版社,1997. [3]于群,曹娜.MATLAB/Simulink电力系统建模与仿真[M].机械工业出版社,2012. [4]王忠礼,段慧达,高玉峰.MATLAB应用技术: 在电气工程与自动化专业中的应用[M].清华大学出版社,2007. [5]宋叶志,贾东永.MATLAB数值分析与应用[M].北京: 机械工业出版社,2009.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电力系统 稳态 分析 作业 基于 高斯赛德尔法 潮流 计算
![提示](https://static.bdocx.com/images/bang_tan.gif)