(电气工程专业论文)网络拓扑变化快速计算方法的研究.pdf_第1页
(电气工程专业论文)网络拓扑变化快速计算方法的研究.pdf_第2页
(电气工程专业论文)网络拓扑变化快速计算方法的研究.pdf_第3页
(电气工程专业论文)网络拓扑变化快速计算方法的研究.pdf_第4页
(电气工程专业论文)网络拓扑变化快速计算方法的研究.pdf_第5页
已阅读5页,还剩51页未读 继续免费阅读

(电气工程专业论文)网络拓扑变化快速计算方法的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

华北电力人学i :程硕十学伉论文摘要 摘要 本文着眼于电网动态过程的计算,研究事故或操作引起的导纳矩阵修改程序的 快速运算及修j 下方法。使用c 十+ 语言,构建了导纳矩阵修改程序。根据实际情况, 建立了电网各种事故的仿真模型。并且在传统的导纳矩阵简化运算方法的基础上, 提出了一种基于十字链表存储和矩阵收缩技术的导纳矩阵修f 方法,相应地建立了 一系列增加、删除导纳矩阵元素的子函数,简化了程序、提高了训算速度。在进行 电力系统仿真计算时,有效的降低了运算量,提高整个程序的运算速度。 关键词:潮流计算,拓扑变换,计算方法 a b s t r a c t t h ep a p e rs t u d i e sf a s tc a l c u l a t i o na n dc o r r e c tm e t h o d si na d m i t t a n c em a t r i x e s m o d i f yp r o g r a m i nv i e wo ft h er e q u i r e m e n to fd y n a m i cc a l c u l a t i o n u s i n gc + + l a n g u a g e ,c o n s t r u c t s a l la d m i t t a n c em a t r i xm o d i f yp r o g r a m a c c o r d i n gt ot h er e a l c o n d i t i o n ,b u i l du pas e r i e sf a u l tm o d e li np o w e rn e t w o r ka n dw o r ko u tab e t t e rp o w e r n e t w o r kf a u l ts i m u l a t i o ns y s t e m b a s eo nt h ec l a s s i cs i m p l i f i e dm e t h o d so fa d m i t t a n c e c a l c u l a t i o n ,as e r i e so fm e t h o d sa r eu s e di nt h ep r o g r a mt or e d u c et h ep r o g r a m b a s eo n t h ed y n a m i cd a t es t r u c t u r el i s ta n dt h em a t r i xr e d u c i n gm e t h o d ,d e v e l o p sam e t h o dt o m o d i f ya d m i t t a n c em a t r i x e su s e di np o w e rs y s t e md y n a m i cs i m u l a t i o na n ds e t su pa s e r i e so fs o nf u n c t i o n st oi n c r e a s eo ro b l i t e r a t et h ee l e m e n t a r yo ft h ea d m i t t a n c em a t r i x e s t h i sm e t h o dc a nr e d u c eo p e r a t i o n ,a n di n c r e a s e dt h ec a l c u l a t i o ns p e e de f f e c t i v e l y k e yw o r d :p o w e rf l o wc a l c u l a t i o n ,t o p o l o g yt r a n s f o r m ,c a l c u l a t i n gm e t h o d 声明 本人郑重声明:此处所提交的硕士学位论文网络拓扑变化快速计算方法的 研究,是本人在华北电力大学攻读硕士学位期问,在导师指导下进行的研究工作 和取得的研究成果。据本人所知,除了文中特别加以标注和致谢之处外,论文中 不包含其他人已经发表或撰写过的研究成果,也不包含为获得华北电力大学或其 他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的 任何贡献均已在论文中作了明确的说明并表示了谢意。 学位论文作者签名:! 呈垒笙! 竺日期:p 。6 、y 1 9 关于学位论文使用授权的说明 本人完全了解华北电力大学有关保留、使用学位论文的规定,即:学校有 权保管、并向有关部i 送交学位沦文的原件与复印件:学校可以采用影印、缩 印或其它复制手段复制并保存学位论文;学校可允许学位论文被查阅或借阅; 学校可以学术交流为目的,复制赠送和交换学位论文;同意学校可以用不同方 式在不同媒体上发表、传播学位论文的全部或部分内容。 ( 涉密的学位论文在解密后遵守此规定) 作者签名:鸟嘧乙2 f i期:p 6 、s 1 9 导师签名 日 期: 盔奴 趔:乡 华北【b 力人学i 判硕十学位论文 1 ,1 研究的目的和意义 第一章引言 随着电力工业的发展,电网的规模不断扩大、接线越来越复杂,容量和覆盖的 范围越来越大,电力系统的安全、可靠、经济运行在国民经济和人民生活中占有越 来越重要的地位。 由于计算机技术突飞猛进的发展,运用电子计算机模拟电网的运行方式,观测 各种操作和故障对电网运行的影响,用以制定合理的运行方式、进行合理的机电保 护整定配置、确定反事故措施等。这剥提高电力系统的安全稳定运行水平具有重要 的意义。 网络拓扑分析的任务是处理电网接线及丌关信息的变化,形成新的网络接线, 是各种电网分析计算软件的基础,其本质就是把用节点描述的物理模型转换成用母 线描述的数学模型,然后将网络数学模型提供给相干的应用程序,如状态估计、潮 流调度、安全分析、稳定计算等。对网络拓扑分析的主要要求就是f 确、快速、有 效。 动态网络拓扑计算程序主要针对电力网络出现的故障及操作进行实时的网络结 构变化,同时在故障或操作后指定的时间内的每个步长中检测是否有其它元件动 作,然后根据网络中自动化设备的反应和调度员的指令( 如投切负荷、发电机等) , 对网络中发生的倒闸操作、断路器断丌、重合闸等系列动作进行相应的模拟,并 根据实际情况对导纳矩阵进行相应的修改,然后将所求得的导纳矩阵用于网络状态 计算。由于现代电力系统一般都是规模宏大的复杂大系统,因此它的节点导纳矩阵 相当庞大,要完成上述工作往往需要处理大量的数据,即在动态网络拓扑计算部分 每一个步长内都可能需要完成很大的运算量。因此能否在较短的时问内完成动态网 络拓扑运算直接关系到整个程序的计算效率。为此,需要在动态网络结构计算的各 个环节采取相应的措施,快速处理电网结构的变化情况,修改导纳矩阵,并且化简 动态过程运算,在不影响精确度的前提下降低计算量,减少计算时间。 1 2 国内外研究现状综述 电力系统的规模、复杂性和电网互联的增加,对电力系统的计算、分析提出了 新的要求。电力系统分析计算主要包括:潮流分析、电磁暂念和故障分析、电力系 统稳定分析及可靠性、状态估计、安全性、谐波等分析计算。这些计算,只要关联 到电力网络,都不可避免的要根据电网的网络结构和参数形成分析计算软件所需要 华北电力人学1 程硕十学位论文 的网络导纳( 阻抗) 矩阵。 在文献 3 中,对于电网结构的简化和导纳矩阵的优化提出了很多方法。出于 电网节点导纳矩阵是零元素很多的稀疏矩阵,分解后得到的三角矩阵一般也是稀疏 矩阵。为了节约存储空间并避免对零元素的运算,在计算机中只储存三角矩阵中的 非零元素。因此,三角矩阵中非零元素的个数对内存的需要量及程序的计算速度都 有直接的影响。文献 4 中提出在形成节点导纳矩阵之前根据节点连接支路的个数 对网络节点的编号进行优化,以减少非零元素的个数。文献 5 中还提到,在电力 系统计算中,通常需要对电力网络节点方程反复求解。消去联络节点以后,就可以 减少电力网络节点方程的阶数,从而减少了求解网络节点方程的运算量,提高计算 速度。 文献 4 提出了一种大电力系统的短路研究的并行处理技术。短路电流计算中 如能求出节点阻抗矩阵中与故障点相关的一列元素,则故障时的网络节点电压、短 路电流等量即可容易地求得。文中提到利用分割理论将大系统分割成适当的子系 统,形成各子系统的节点导纳矩阵,最后得到阻抗矩阵中与故障点相关的列元素。 在此过程中,某些计算步骤可用分布式计算机群或互联运行的微计算机并行运算, 也可采用单台计算机对被分解的子系统顺序求解,因而避免了“维数灾难”,用 以提高运算速度。根掘电网结构巨大的实际情况,在很多大型的电力系统计算软件 中都使用了像分块算法这类简化电网结构的方法。 文献 5 通过与电力系统并行算法的比较,提出了基于稀疏向量技术的大树枝 因子表路径法( 简称大树枝法) ,由于大树枝法先进行整体节点优化,然后画出因 子表树,对结构复杂的网络有较大优势,同时实现方法比较简单。 文献 6 中提出了在分块算法中线路短路时,将线路上的短路点故障电流等值 转移到该线路端点,并综合应用修丁f 节电电流源和短路点列阻抗元素的方法,对网 络故障时的一些具体问题有一定的应用价值。 文献 7 中提出了一种能有效跟踪随机丌关状态变化的因子表快速局部修正 法。其主要方法是将丌关状态变化后的系数阵节点分成5 类:无变化节点、被增加 节点、被删除节点、直接变化节点与间接变化节点,然后根据电网物理节点的类型 进行因子表的修正。这种方法对各种形式的由单个或多个开关状态变化所引起的系 数阵的结构性或非结构性变化,一次性形成囊括所有需修j 下节点的路径树及节点取 用顺序表,确实可以满足动态仿真对因子修正的需要,但是当电网结构比较巨大, 元件个数很多时,这种处理方法很难满足动态计算的速度要求。 针对网络中发生的各种故障的处理方法,国内外也有较多的研究。 文献e i o 提出了一种电力系统故障仿真程序的计算方法。陔方法采用电力系统 2 华北屯力人学一样硕十学位论文 元件的离散化模型和节点分析方法形成系统的网络方程,应用零口器和非口器的处 理方法修改网络方程,在每个离散时间点解方程获得系统的母线电压值和出线电流 值。 文献 1 1 介绍了一种以d 、q 、0 坐标系来描述电力系统的三相对称部分,以 在d 、q 、0 三轴瞬态伴随网络的故障节点分别注入等值电流源来模拟各种对称和不 对称故障的数值计算方法,同时还分别推导和给出了在单相接地、相白j 短路、两相 接地短路和三相短路等各种故障条件下,等值电流源的计算公式,并以实例验证了 该方法的f 确性。 文献 1 2 认为在机一网暂态仿真中,采用通常的d q0 坐标系统建模较为复杂, 在模拟不对称故障和丌关操作时尤为困难。利用受控源理论建立可双向计算的y d 类型变压器模型,解决了变压器两侧的变量变换不可逆的问题,使网络可在a b c 坐 标系下求解。文中讨论了电力系统其他元件在a b c 坐标系下的模型。与d q o 坐标系 统相比,a b c 坐标系统的模型适用于对称和不对称系统的仿真研究。 文献 1 5 阐述了中国电力科学研究院丌发的电力系统全过程动态仿真软件的 故障模拟程序,软件的故障模型采用故障支路导纳矩阵模拟各种对称和不对称故 障,可对一条支路发生任意重故障进行处理,并且在程序中使用了十字链表的存储 方式,实用性能较高。 文献 1 3 提出使用十字链表存储导纳矩阵。提出了一种可以动态形成十字链表 的方法,将网络的拓扑结构与数值信息存于十字链表中,使其独立于计算以保证数 据的可重用性和灵活性。这种方法适用于与拓扑相关密切的电力系统计算。文献 1 4 也提到了使用十字链表存储电网导纳矩阵的观点,在电网潮流计算中采用十字链表 实现动态存储,并且给出了十字链表的应用于电网计算的具体结构。但是山于十字 链表在搜索运算方面速度比较慢,因此所提出的十字链表的使用还只停留在电网的 稳态运算方面的应用。 1 3 本论文研究的范围及主要工作 从前面的的讨论中不难看出,目前的电力系统分析方法虽然得到了广泛的关 注,但传统的导纳矩阵的处理方法还不能很好地满足系统动态计算快速性、准确性 和通用性的要求。本文针对这种情况,应用c + + 语言,编写了电力系统动态过程仿 真程序的导纳矩阵修改部分,并且在传统的优化方法的基础上,针对电网动念计算 程序的特点,结合数据结构方法,对网络发生变化后导纳矩阵的修改进行了进一步 的优化。现将本论文的工作总结如下: 1 对电力网络中的各种故障情况进行仿真,其中包括对称故障、不对称故障 及多重故障,并且以统一分析、细化各类动态变化模型的方式,简化了故障处理的 3 华北电力人学i l 鼙硕十学位论文 程序。 2 结合电网分析优化方法的知识,在程序中运用各种优化手段,在满足准确 性的基础上,要求在速度上达到较高的标准,在传统的简化计算的方法基础上,将 广度优先搜索法,根据开关状态修改导纳矩阵等方法应用到程序中,通过与软件其 他模块的联合运算,证明了这些方法的应用使得整个动态过程计算的速度基本能够 达到要求。 3 与其他模块合作完成故障后的倒闸操作模拟工作。由于线路上隔离刀闸的 数量很多,电网运行当中特别是发生故障时,倒闸操作的动作也相当频繁,而且每 次操作往往都要引起网络结构的变化。因此,对倒闸操作的处理往往会影响整个程 序的运算速度。为提高倒闸操作处理的速度,在程序中采用了利用拓扑运算检查动 作开关对电网结构造成的影响,然后根据电网结构变化,对导纳矩阵进行修改的方 法。 4 故障发生后每一步长内部需要检测系统中是否有保护元件动作,保护元件 动作后,进入保护动作的运算。由于故障后一段时间内电网的各种元件动作频繁, 如果每个步长都按照最初的方法对网络导纳矩阵作相应的修改,运算量很大,因此 提出了一种结合十字链表法和矩阵收缩运算的方法,对导纳矩阵进行修正,能够起 到降低运算量的作用。、 4 华北电力人学f :稃硕十学位论文 2 1 引言 第二章动态网络拓扑变化的快速计算 在电网动态过程仿真计算软件中,动态网络拓扑计算程序主要针对电力网络出 现的各种操作和故障现象进行实时的网络结构变化,同时在指定的时问内对网络在 故障后的系列动作进行相应的模拟,并将所求得的导纳矩阵用于网络状态计算。 由于电网动态过程仿真计算软件面临的主要是大系统复杂网络的运算,因此它 的节点导纳矩阵相当庞大,同时为满足实时性,要求动态网络拓扑运算的速度要尽 量快。为此,需要在动态网络结构计算的各个环节采取相应的措施,在不影响精确 度的前提下降低计算量,减少计算时削。动态网络拓扑的运算中为了提高速度,通 常在矩阵存储方式上采用排零存储、不对称故障时利用负序和零序等值阻抗代替负 序和零序网络、使用节点收缩技术消去零注入功率节点等方法。在这些传统方法的 基础上,本文对程序进行了进一步的优化,在处理网络结构变化的运算程序中,对 调用次数较多的子函数进行特殊的处理。在这一类型的子函数中,减少局部变量的 使用,尽量避免使用大型的数组型局部变量,以减少计算机在运算过程中临时数据 的存储量,显著提高了程序的运算速度。同时,针对电网动念过程仿真软件的两种 故障输入方式,即教案输入方式和即时输入方式,使用不同的故障信息处理方式。 当使用教案输入方式时,在出现多次故障的系统,为简化保护动作、故障切除运算 中的搜索、判断过程,程序中采用故障信息存储的方法,通过对输入的故障信息进 行分析,尽量完整的将各个故障的信息进行存储,作为一个记录,可以在保护动作、 切除故障时进行调用,简化了运算过程。使用即时输入方式时,直接进行网络拓扑, 处理故障信息,对同时发生的复杂故障进行排列,从而简化运算。 使用即时输入方式,把故障信息、元件动作信息整合到同一个数组中,以简化 处理过程,在每个步长内询问该数组是否有新的信息。对应各种故障,程序采用了 统分析,分情况处理的方式,把各种故障情况细化出来,根据故障的具体情况进 行处理,以化简运算步骤。根据系统不同的动态阶段,建立不同的模型,很好地实 现了系统不同阶段的转化。这样可以进一步简化故障处理阶段的运算过程,提高程 序的运行速度。并且,把各种模型模块化,提高了整个程序的灵活性。 如图,在程序中,主要包含了如下几大部分: 华北电力人学f 程硕十学位论文 一 l 网络拓扑 一 一 :一【i 、一,_ 一、 故障信息处理 ( 包括:a 故 读入故障倩息广-障处理, b 元件动作处 一,、 理) 2 2 网络模型及其存储 2 2 1 网络拓扑 图2 1 , 1 e 修改导纳矩阵_ 矩昨收缩运算li l : 一i i 一。一 。一 网络拓扑是电网动态过程仿真计算软件中不可缺少的部分。众所周知,实际电 网中场站接线中每个元件二端是物理节点( n o d e ) ,两个元件如有一个公共n o d e , 则物理上二个元件相连。而有一些元件如断路器、隔离开关并无电阻、电抗。在这 些元件闭合时二端n o d e 电压相同,这二个n o d e 同属于一个电气节点( b u s ) 。电力 系统分析计算是面向b u s 的。一个b u s 有时含有很多n o d e 。在电网操作中,如开合 母联断路器时,n o d e 与b u s 对应关系会发生变化。网络拓扑的任务就是通过对所有 元件连接情况的检查,把面向n o d e 的网络模型缩减为特殊的b u s 模型。形成n o d e 与b u s 间的对照表。在执行过程中还可确定所有元件带电状态,记录下元件连接状 态的变化。还能给出孤立系统的信息。电网动态过程计算软件中的拓扑部分主要包 括:初始拓扑部分,用以形成n o d e b u s 之问的对照表。拓扑变化部分,在改变个 别断路器、隔离丌关状态时,快速判断局部b u s 的变化。 2 2 2 动态过程运算的导纳矩阵形成 22 ,2 1 导纳矩阵的存储结构 作为由输电线路、电力变压器、串( 并) 联电容器等静止元件构成的电力网络, 在电网计算中可以用r 、l 、c 所组成的等值电路来模拟电网,构造节点导纳矩阵。 为了减少计算量,并简化后续的相关运算,在形成导纳矩阵前,首先将由隔离刀闸, 断路器等开关元件形成的物理节点通过拓扑运算,化简为逻辑节点、网络中消去无 阻抗支路,保留的各支路进行等值化简,最终把原始的电力网络等值成由输电线路、 电力变压器、发电机等器件构成的网络节点和支路。之后对网络结构进行优化,根 据节点所连支路的数量,按由少至多的顺序整理节点的排列顺序,这样可以减少非 对角线元素个数。合并并联支路,但其中变压器支路除外。为了便于后面的计算, 还需要把发电机节点号进行重新排列,将发电机节点集中排在导纳矩阵的后部。 对于大型电力网络来说,导纳矩阼是十分巨大的。一个n 节点的电力网络,其导纳 6 华北电力人学 程硕+ 学位论文 矩阵有n n 个元素,需要2 个n xn 阶的矩阵来分别存储导纳矩阵的实部和虚部。为 了减少存储量,在大型电网的计算中,都利用了导纳矩阵稀疏性的特点,采用排零存 储法存储导纳矩阵。本文将导纳矩阵分别存储在5 个数组: i 。_ : 一 匕: 圪,、, y n q 图2 2 g i ic n :为导纳矩阵对角线元素实部数组,其中n 为电力网络节点数。 b i i n :为导纳矩阵对角线元素虚部数组。 y d z n :导纳矩阵各行非对角线首元素在非对角线元素中所在位置。 y d s n :导纳矩阵各行非对角线元素个数。 y l 3 :导纳矩阵非对角线元素数组,其中l 为支路总条数。分别存储非对角线元 素的实部、虚部、及各对角线元素所对应的列号。 相应的在程序中加入子函数,分别针对排零存储的导纳矩阵的元素读取,回代 及新增非零元素的存储,以应用在后继的运算。在这些子函数中,应减少局部变量 的设置,特别是尽量不要设置新的阶数较高的数组。因为在程序中将多次调用这些 子函数,如果在其中加入过多的新变量,特别是阶数较高的数组,无形中增加了存 储量,将会影响计算速度。经过实验,其计算时间往往是没有局部数组变量的数倍。 2 222 稀疏矩阵的修改 当电力系统的结构发生变化时,需要对导纳矩阵进行修改,如果重新调用函数, 形成导纳矩阵显然在时间上是不经济的。因此在程序中,建立了针对导纳矩阵稀疏 存储的三个函数,用于对导纳矩阵中元素的数值、位数、个数等进行修改。 ( 1 ) f i n d y ( i n ti ,in tj ) 其中i 为行号、j 为列号。该函数用于在导纳矩 阵中查询非对角线元素埒的数值。 ( 2 ) i n p u t y ( i n ti ,i n tj ,f l o a ty g ,e l o a ty b )其中t 为行号、为列号, y g 为非对角线元素的实部,y b 为非对角线元素的虚部。该函数用于修改导纳矩阵 原有的数值,当一个已有的非对角线元素发生变化时,可使用该函数将新的元素数 值回代到导纳矩阵中,当该元素的新数值为零时,使用该函数可将该元素从导纳矩 阵中清除。 ( 3 ) r e n e w y ( i n ti ,i n tj ,f l o a ty g ,f o a ty b ) 其中i 为行号、j 为列号, y g 为非对角线元素的实部,y b 为非对角线元素的虚部。该函数可将新增的非零元 7 华北山力人学| 掣硕+ 学位论文 素插入到导纳矩阵中,特别是对原导纳矩阵的全零行,该函数也可处理。 使用以上所建立的三个函数,可满足故障时导纳矩阵结构各种形式的修改,避 免了在电网结构发生变化时再从新形成导纳矩阵,可大大简化程序的运算过程。同 时,在导纳矩阵的收缩计算中,也可把这三个函数结合运用,对提高运算速度有显 著的效果 2 3 信息的读入 首先读入电网导纳矩阵,以及节点信息和支路信息,由于原始数据提供的故障 信息中,故障的位鼍,如节点号、线路号都是原始的物理节点号和线路名称,因此 对应节点信息,需要引入拓扑运算中形成的物理节点与逻辑节点问的对应关系和节 点修j 下形成的节点变换关系,对应线路信息,应保留线路的名称,而且所读入的线 路信息应该是没有对并联支路进行过等值运算的。 从数据库读入故障信息,根据系统的实际情况,程序中建立的故障信息模型的 结构如下: 故障信息节点号( 节线路编号 线路的什 类型故障位置点故障)( 线路故么位置发 接地电阻接地电抗 障) 生故障 图2 3 其中故障信息类型包含元件的动作,如丌关、断路器的闭合等。 读入故障后,对故障信息进行初步的分析处理。 首先根据故障信息类型进行分类,如果没有故障或操作,可直接跳出该导纳矩 阵修正运算;如果有故障信息,则分类型:三相短路故障、单相短路故障、两相接 地短路故障、两相短路故障、断线故障。如果发现在同一步长内读取到两个以上的 故障,则进入多重故障处理程序。存入故障信息数组,并进行下一步的分析,根据 故障位置的来决定下一步读取的位置,如果是节点故障,则读取第三位和第六、七 位:如果是线路故障,则跳过第三位进行读取。如果是元件动作,则根据元件的开 合状态,判断对网络结构的影响,分情况进行处理。程序流程图如下: 8 华北电力人学t 群硕十学伉论文 发生故障 故障始量 羔一一 复杂敞障 一j !。一一, 线路故障处理 h简单故障 笫二位判断 节点故障 接地阻抗处理 进入敞障 处理运算 2 4 故障情况下的导纳矩阵变换 故障信息读入 v 筛位削断 负荷投切 v 结束 图2 4 元件动作类型 增加节点 断路器动作 切,台状态 去掉节点 进入元件。 处理运算 读入故障信息,在已有的导纳矩阵基础上进行故障处理,对与故障相关的对 9 华北电力人学j :烈硕十学位论文 角线、非对角线元素进行相应修改,从而得到发生故障后的导纳矩阵。首先要求操 作人员给出必要的故障信息,然后针对不同故障类型建立列表,对故障信息进行分 析,将相关该故障的类型、发生位置、是否存在接地阻抗等信息存入专门的数组中。 无论是节点故障还是线路故障,数组中都需要存储故障所在节点号、线路号及故障 点在线路中以百分比形式确定的位置,节点故障时线路号、线路位置百分比都为零, 线路故障时则需要在故障节点位置放入新增的节点号。设置故障信息数组的原因, 是因为当整个系统在不同时刻、不同地点发生多个故障,而对应每个故障都有相应 的保护元件动作,并且各个保护元件的动作时刻也不尽相同,如果没有可以直接调 用的故障信息,那么在运算过程中首先要确定保护元件动作对网络结构的影响,再 根据网络结构的交化判断保护元件动作与故障的对应关系然后才能进行保护动作 的运算,这样必然会造成运算速度的降低。另外,要判断在同一时刻发生的多个保 护元件动作所对应的故障,其判断过程也是相当复杂的。对于电网动态过程仿真计 算软件以教案方式设置故障的方式。设置故障信息数组,为在故障发生后指定的时 间内网络的各种变化进行实时处理提供基本信息的记录。通过这个数组,可以明确 各种保护动作与故障的对应关系,使原来以整个网络为基准的拓扑变化改为只在故 障点附近的拓扑变化,节省了许多判断及运算。在数组中故障根据时间来排列顺序, 在同一时刻发生的多个故障则按照先对称故障、后不对称故障的顺序进行排列。数 组记录的网络变化,包括保护的动作,故障的切除,重合闸动作及新的故障等。 在故障处理时,对称故障只需计算f 序网络,两相短路则需要另外考虑负序网 络而单相接地短路、两相接地短路则需要另外考虑负序和零序网络。由于发电机只 有正序电动势,即只有f 序网络为有源网络,负序和零序网络都为无源网络,因此 为了能够达到快速的要求,尽量简化对负序和零序网络的计算,在形成负序和零序 的导纳矩阵后,利用矩阵收缩技术将其分别等值成负序和零序等值阻抗后接入故障 点。 ( 1 ) 教案方式下导纳矩阵修改程序的流程图: i o 华北电力人学l 稃硕十学仿论文 、 叵 匣 声 叵 - 壹 图2 5 华北电力人学 :挫硕十学位论文 ( 2 ) 采用即时方式 使用即时方式时,在进入动态运算部分后,需要在每个步长询问系统是否有故 障发生或者元件动作,因此把影响系统结构的各种情况整合到一个信息数组中,经 过对该数组的检查,如果有新的信息,则对该信息进行整理,如果是故障信息,则 对故障位嚣进行有物理节点到逻辑节点的转化,然后根据所给出的故障类型等信息 分情况处理导纳矩阵,之后完成导纳矩阵的收缩运算。如果是元件动作,首先通过 拓扑运算,检查是否影响到网络的结构,造成影响的,再根据具体情况,作出处理。 即时方式的程序流程图如下: 2 华北电力人学i :羊! i ! 硕十学位论文 2 4 1 电网故障处理 业 ( 竺苎 ) 图2 6 在电网动态过程仿真计算软件中,对电网事故需要进行详细的模拟与分析。同 1 3 华北电力人学j :弹硕十学位论文 时为了简化程序的运算过程,本程序将各种故障详细分类,分别建立模型,具体程 序流程如下: :网络拓扑 三相短路 节点故障 读入故障 信息 故障信息 分析 :分情况处 理 单相短路 2 4 1 1 三相对称短路故障 线路故障 线路故障 初步处理 两相接地短 路 v 一 j 负序、零序等 :值阻抗计算 1 ! 修改导纳 l 矩阵 。1 一一一一 一王 - 结束 图2 7 两相相间短 路 华拈电力人学l :稃硕十学位论文 发生三相对称故障时,首先将故障类型存入信息数组。如果是网络节点发生三 相短路直接接地故障,相当于在节点处接入一个无穷大的导纳,而对导纳矩阵其它 元素没有影响。将故障节点号存入信息数组,z ,斗0 ,为故障点虚拟接地阻抗。 y “= 匕+ 1 z = 匕+ 0 ( 1 ) 而落实到程序中,因为y i i k ) 进行修正,具体计算公式为: y 耻+ 1 ) ,= y 恤) 一一兰 j :兰! 生 c ,。, 以此方法,逐列进行消去运算,直至消去所有零注入功率节点,即至第1 1 1 列。 矩阵变为: 1 2 “一3 “一。“_ 。1 ”搿 1 ”r 。2 k m l ” j ,2 。2 : 1 l 。 t 。“ m + l l m 1 l 。l 。 2 o o 0 0 k匕| 华北电力人学l :群硕十学位论文 其中非零注入功率节点部分的导纳矩阵y s 将用于之后的暂念计算。 b :i1 乙+ 1 + 1 ”,:+ i ,n ” 匕川匕伽l 在收缩计算中,是逐列由节点i 直至消去所有零注入功率节点,尽管采用了排 零存储,可以节省大量运算,但是仍构成了整个动态网络拓扑的主要运算部分,因 此在这个环节中应注意尽量减少运算量,考虑到导纳矩阵的对称性,只需要计算矩 阵的上三角部分。在运算中,不可避免的要多次引用元素读取、回代、新非零元素 代入的子函数,但应尽量减少调入次数。对于大型电力网络,在收缩运算中产生新 的非零元素较多,经过收缩之后形成的y s 往往不再具有稀疏性,因此可以不采用 排零存储。 2 5 结论 根据对电网动态过程仿真计算实时性的要求,本文从电网动态过程运算程序出 发,在事故发生后的导纳矩阵修改部分,除了使用了传统的提高运算速度方法外, 详细建立了各种故障情况、元件动作情况的独立模型,兼顾了快速性、灵活性的要 求,同时提出了在程序中为了进一步提高运算速度所作的改进,通过对故障信息的 存储缩减运算程序中大量的搜索、等值的过程。而在程序中,注意对子函数的处理, 减少局部大型数组变量的使用,可以大幅度提高程序的运算速度,迸一步满足实时 性的要求。 华北电力人学1 :科硕十学位论文 3 1 引言 第三章动态网络导纳矩阵的存储和修正 在电力系统的暂、稳念计算程序中,对于大型电力网络导纳矩阵,由于它存在 着维数多,结构稀疏的特点,因此在存储导纳矩阵数据时需要采取稀疏矩阵的排零 存储方式,并且为了后面收缩矩阵方便,通过处理把非零注入功率节点全部排在后 面。但是应用传统的静态数组存储方式,在进行故障处理计算中,如果面临多次导 纳矩阵数据增加或删除的运算,则需要反复对导纳矩阵进行搜索和对数据的重新排 列,运算量很大,造成数据处理过程中的时间浪费。采用十字链表存储,可以大大 减少搜索过程,降低处理数据过程中的运算量。而且十字链表是一种动态的数据结 构,在程序运行过程中可以动态的分配内存,避免内存的浪费。 在十字链表存储的基础上,可对电力网络的故障处理进行简化。在电力网络发 生第一次故障时,对导纳矩阵进行故障的处理,然后完成矩阵收缩,消去联络节点, 只保留非零注入功率节点,用以降低计算量,之后电力网络的保护动作,切除故障, 重合闸等对网络结构有影响的相关动作,只需要在收缩后的矩阵基础上进行相应的 修正,可以减少收缩矩阵所耗费的大量运算,提高整个暂念计算的运算速度。 3 2 链式结构与动态存储分配技术 3 2 1 链式结构与链表 在线性结构中,逻辑上的相邻节点c 口一+ ,是由它们的位置i 和i + 1 决定的。在 存储空间中,相邻两节点c q ,的位置是由公式( 3 1 ) 决定的。 l o c ( a ) = l o c ( a ,) + l ( 3 1 ) 其中,l o c ( a ) 表示节点a 的内存地址,l 表示一个节点分配的内存字节数。节 点中仅存放节点本身的数据,如图3 1 ( a ) 所示。一组数据( 一维或多维的) 线性表、队列、堆栈、矩阵一一用顺序存储结构来存放。它的前提是要有足够大的 连续存储空间。否则,就要用链式存储结构来存放。 链( 也称指示器) 是数据结构中的一种标记,经常用它表示相邻两节点t q 坤+ 。, 间链接方式。这时节点的内容有两部分组成:节点本身的信息i n f o 和节点的指示 器l i n k 。前者称为数据域,后者称为指针域。如图3 1 ( b ) 所示。节点本身信息 可以是各种数据类型的变量。 华北电力人学f :样硕十学位论文 图3 1 典型的节点形式 n 0 0 e | n f o ( c ) 节点指示器是专门存放地址的,他的取值范围是计算机内存的地址。用于指出 它相邻的下一个节点的位置。有时候一个节点的指示器可以有多个。 链接结构将若干个确定的节点数或不确定的节点数用链接方式把它们彼此连 接起来,形成逻辑上连续的一个序列,用以存放各种数据类型的数据。数据结构的 一组数据元素在计算机内的存储结构一般有两种:一种是用一组地址连续的存储单 元依次存储数据元素。这种存储结构称为顺序式存储结构,或顺序映像。顺序式存 储结构的特点除了存储单元式地址连续之外,另一个就是总节点数是确定的。当节 点数不确定时,就无法分配一组确定的连续存储单元来存放它们。此时可以对节点 分散处理,当要存储某一节点时,分配一组地址连续的存储单元存放该节点的内容, 然后用链把这些节点的存储单元连接起来,形成链表。这种存储结构称为链式存储 结构。所以说链式存储结构是用一组随机的存储单元来存放随机出现的各个节点的 内容。当然,链式存储结构也能处理顺序式存储结构所处理的问题。链表的操作是 随存放的数据类型来决定的。每一种数据类型都有它的抽象数据类型的定义,这个 定义就决定了它的操作种类。顺序式存储结构和链式存储结构都不影响操作种类的 多少。 插入与删除操作。在顺序存储结构的条件下,一个r 1 个元素的表,要求在第一 和第二个元素之间插入新元素时,为了给新元素留出空位,从第二个元素以后的n 一1 个元素都要向后移动一个位置,再把新元素放在第二个位置处;当要求删除第二个 元素时,就要从第三个元素起的n 一2 个元素向前移动一个位置,表示删除了第二个 元素。相对的,在链式存储结构的方式下,插入和删除一个节点,操作就比顺序式 的简单,只要更换一下指示器的内容就可以了。 3 2 2 动态存储分配技术 计算机的存储器分为内存和外存,他们是计算机系统的一大资源。在外存上保 留的信息是永久性的。一切的系统程序和用户程序都以文件的形式存放在外存中, 并占用了外存的一块存储空间。临时文件和非永久性文件随时可能产生,也随时可 能撤销。文件产生是要分配给它一块存储空间,文件撤销是要回收分配给它的那块 存储空间。否则系统的存储资源只分配不回收,将会越柬越少。因此,文件要管理 起来,外存空间也要管理起来。内存也叫主存储器,它由只读存储器和随机存储器 2 4 华北电力人学j :裂硕士学位论文 组成,他们在计算机运行时存放系统程序和用户程序,只读存储器中存放的是系统 程序,而随机存储器中存放的是系统程序和用户程序。程序进入内存要占用空问, 这个空间谁来分配与管理呢? 用户程序在执行期间,用户在程序中要定义变量、运 算中要产生信息,它们也要占用空间,链式存储结构中插入的节点需要空间,删除 节点时它的空问也要回收。所以,存储器管理分为三个层次:操作系统层、编译( 语 言) 系统层、应用程序层。 3 2 3 动态存储管理的分配 动态存储分配有三种方法:首次拟合法、最佳拟合法、边界标识法。一般说来, 它们各有所长。首次拟合法适用于随机申请分配存储和释放存储的要求:最佳拟合 法适用于申请分配的内存大小范围较广的系统;边界标识法适用于申请分配内存大 小范围较窄的系统。但是究竟采用哪一种方法,是由多个因素决定的;用户的逻辑 要求:请求分配量的大小分布;分配和释放的频率;c p u 使用效率。最终采用的方 法往往是诸多因素平衡与折中的结果。这三种方法的特点是必须用链表进行,都涉 及到链表的查询、插入、删除。而链表又涉及到单向链表和双向链表。 3 3 导纳矩阵的存储 3 3 1 导纳矩阵的存储结构 在动态过程计算中,当电力系统的结构发生改变时,必须调用相应的子函数, 修改导纳矩阵的元素,并且需要再次进行导纳矩阵的收缩运算。根据大型电力网络 导纳矩阵的特点,使用十字链表和静态数组相结合的方法进行存储,首先由于导纳 矩阵对角线上以非零元素为主,且在收缩运算中的使用次数较多,因此把对角线元 素单独放入一个静态数组中,一方面可使十字链表的结构更加简单,另一方面避免 了多次的十字链表搜索运算。 非对角线元素结构是稀疏且对称的,因此只需使用十字链表对非对角线上三角 部分进行存储,把矩阵的每列用一个含有头节点的循环链表表示,而每一行也用 同样结构的链表表示。在链表中除了存放必要的导纳矩阵各元素的数据外,还对一 些相关信息进行存储,以达到简化运算的目的。 , d o w nh e a dl s u m j s u mr i g h t n e x t ( a ) 2 5 华北电力人学i 群硕十学位论文 i d o w nh e a di s t r j s t rr i g h t 一 i n t o r i t l ( b ) 图3 2 导纳矩阵十字链表节点结构 ( a ) 头节点i ( b )典型节点 链表的结构如图3 2 ,每个节点都含有一个称作h e a d 的域,用于对头节点和矩 阵中的非零项的节点进行区分,每个头节点含有五个附加的域:d o w n ( 用于链接列 链表) ,r i g h t ( 用于链接行链表) ,i s u m ( 所在行非零元素数) ,j s u m ( 所在列非零 元素数) 和n e x t ( 链接下一个头节点) 。头节点的总数目即为导纳矩阵的维数,第 i 行的头节点也是第i 列的头节点。 其他的节点也含有五个域,其中节点域i s t r 和j s t r 为该元素的行号和列号: r i g h t 指针域指向同一行中下一个非零元素,d o w n 指针域指向同一列中下一个非零 元素;i n f o r m 中存放导纳矩阵非对角线元素的相关信息,是一个由四个部分构成的 结构体:非对角线元素的实部、非对角线元素的虚部、该元素在上次收缩运算中历 史纪录的实部和虚部( 用于导纳矩阵的修j 下) 。对于含有s 个非零非对角线元素的n 维导纳矩阵,它所需要的节点总数为n + s 个。 3 3 2 导纳矩阵的形成 在矩阵中,对角线元素为节点的自导纳,非对角线元素为该非零元素对应节点 与其表头节点对应节点的互导纳。 读入节点数之后,程序即对头节点链表初始化。随后每读入一个节点,就在对角元 素数组对应位置放入一个元素;每读入一条支路,如果是一条新的支路,就在此支 路的每一个节点对应的表头节点后插入一个对应另一个节点的非零元素节点,记录 对应的行号列号,然后修改这两个节点的互导,否则直接修改互导。所有互导形成 后,就可以计算每个节点的自导了。方法是累加本表头节点后的链表中的所有非零 元素的值,然后取负,加入该节点的对地导纳,存入对角线数组中。运算过程中注 意统计各行、各列的非对角线个数存入头节点相应位置。如此即完成了导纳矩阵的 初始形成。 3 4 导纳矩阵的修正 形成导纳矩阵后,在进行电网运算时,根据第一次发生的故障,对导纳矩阵的 结构进行相应修改,形成新的导纳矩阵。由于使用了十字链表进行存储,在增加或 2 6 华北电力人学【:科硕+ 学位论文 删除非零元素的修改过程中省掉了很多搜索、排列的过程。在链表中插入新的非零 元素时,只需要建立一个新的节点,找到它所在位置的前一个元素,并修改其指针 使其指向这个新元素i n f o r m 的地址,并使这个新元素的地址指针指向它下一个节 点i n f o r m 的地址。要删除导纳矩阵中的一个非零元素,只需在链表中消掉它所对 应的节点,然后修改它前一个节点的指针,使其指向被删除节点的后一个节点 i n f o r m 数据的地址。 完成对导纳矩阵的修改之后,为了化简动态运算,首先进行收缩运算,将导纳 矩阵收缩到非零注入功率节点。利用星网变换理论,消去零注入功率节点,对应第 k 列的消去运算,对导纳矩阵中的元素( 其中i k ,j k ) 进行修f ,具体计算公 式为: y ( k + l 讧怫一学 ( 3 2 ) i 、k k 以此方法,逐列进行消去运算,直至收缩到非零注入功率节点。注意对应每个 非零元素珞将它每次运算的减数之和存入链表中,为珞。出于收缩计算后的非零 注入功率节点部分已经不再是一个稀疏矩阵,可直接存储到一个静态数组k 中,用 于电网计算,而链表保留了收缩运算的数据,可作为修正矩阵留用。 当电网的结构再次变化时,利用第一次矩阵收缩所形成的矩阵y ,它包含了迭 代运算之后所得到的零注入功率节点和非零注入功率节点,从结构上说它的特点是 零注入功率节点部分是稀疏的上三角矩阵,而非零注入功率节点部分不是稀疏矩 阵。无论矩阵的新变化是什么样的,其形式都是少数对角线或非对角线元素的变化, 因此可以分为对角线元素变化( 简称c c h a n g e ) 和非对角线元素变化( 简称 n c h a n g e ) ,分别进行处理。根据链表中保留的记录,通过对矩阵y 进行修f 运算, 可以计算出这些变化对收缩到非零注入功率节点的矩阵k 所产生的影响,避免了再 次的收缩运算,能够有效的节省运算时间,要注意的是,当导纳矩阵的数据发生变 化时,对变化前的数据也要保留在程序中,用于修f 运算。下面对修正的过程进行 进一步说明: 第一步,假设故障次数为k ,则需考虑前k 1 次收缩对该点的影响。在前面的 矩阵收缩过程中,所保留的k ,既是该节点以上部分对这个节点的影响。由于前 k 1 次收缩运算中不包含新变化的元素,因此这个影响是不变的值,不需要进行收 缩运算,可直接在新变化元素的基础上减去该元素上次收缩运算的历史纪录即可得 到经k 一1 次收缩后变化元素所应对应的值c c h a n g e 或n - c h a n g e ( 简洁起见, 以后都以符号来代替对角线变化和非对角线变化) 。 如果k 大于b g s ( 零注入功率节点数) ,即新变化的节点为非零注入功率节点, 则完成第一步运算后,就已完成了对矩阵的修萨,将修改后的值直接存入y 。中既可。 如果k 小于或等于b g s ,则需要进行下一步的运算。 2 7 华北电力人学i :挫硕士学位论文 1 y 1 2 1 五3 1 巧 “蚺l 。 i 如2 2 r

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论