[发明专利]一种用于潮流计算稀疏方程组的链表处理方法无效
申请号: | 201210269018.2 | 申请日: | 2012-07-31 |
公开(公告)号: | CN102831103A | 公开(公告)日: | 2012-12-19 |
发明(设计)人: | 姚玉斌;李明武;周国顺;刘莉 | 申请(专利权)人: | 大连海事大学 |
主分类号: | G06F17/16 | 分类号: | G06F17/16 |
代理公司: | 大连东方专利代理有限责任公司 21212 | 代理人: | 李洪福 |
地址: | 116026 辽*** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 潮流 计算 稀疏 方程组 处理 方法 | ||
技术领域
本发明涉及一种电力系统的潮流计算方法,特别是一种用于潮流计算稀疏方程组的链表处理方法。
背景技术
潮流计算是电力系统最基本的一种计算。由于潮流计算涉及的网络方程系数矩阵是非常稀疏的矩阵,因此实用算法采用稀疏矩阵技术和节点优化编号等高级技术,这些技术可以大幅度提高潮流计算速度、降低内存占用量。
潮流计算的基本方程为非线性方程,牛顿法通过对此非线性方程逐次线性化,得到线性化潮流计算的修正方程,反复迭代求解。
潮流计算的修正方程的系数矩阵非常稀疏,即矩阵的大部分元素的值为零,采用稀疏矩阵技术和节点优化编号等高级技术,这些技术可以大幅度提高潮流计算速度、降低内存占用量。
稀疏矩阵主要的存储特点就是“排零存储”,即只存储矩阵中的非零元素以及有关的检索信息。这样存储不仅有效节省存储的空间,而且在计算中能够方便迅速地访问和引用有用数据,大大提高计算速度,这些都对存储的格式有一定的要求。对稀疏矩阵的存储,除了要考虑矩阵的稀疏结构外,还要考虑采用的有关算法,因为不同的算法对非零元素的检索方式有不同的要求。以下是几种对稀疏矩阵不同的存储方法,应用时应根据实际状况选择合适的方式。
1、散居格式
对于一个n×m阶的稀疏矩阵A,假设其非零元素共有γ个,令aij为稀疏矩阵中的第i行第j列非零元素。对稀疏矩阵A的存储,可以使用下面三个数组:
AE:用来记录非零元素aij的值,共γ个;
AR:用来记录非零元素aij的行号i,共γ个;
AC:用来记录非零元素aij的列号j,共γ个。
2、按行或列存储格式
这是一种按行或列顺序来依次存储矩阵A中的非零元素的存储方式,依次将同一行或列的元素排在一起,下面以按行存储为例说明:
AE:按行存储稀疏矩阵A中的非零元素aij,共γ个;
AC:按行存储稀疏矩阵A中的非零元素aij的列号,共γ个;
AS:用来记录矩阵A中每行的第一个非零元素在数组AE中的位置,共n+1个,其中ASn+1用来确定第n行元素的结束位置。
3、链表存储格式
这里以按行存储为例来进行说明。此种存储格式中矩阵每行需要一个链表,每个链表需要一个链表头,通过这个链表头可找到本行的所有非零元素。链表的每个元素又包括3个数据项:
Alist:作为矩阵A中每行链表的链表头,同时存储每行的第1个非零元素,共n个,分别为各行链表的链表头;
AE:存储稀疏矩阵A中本行的非零元素aij;
AC:存储稀疏矩阵A中本行的非零元素aij的列号;
Next:指向本行下一个非零元素的存储位置,对于本行的末尾非零元素,该值置空指针(NULL)。
潮流计算的修正方程的系数矩阵A是非常稀疏的矩阵,即矩阵A的大部分元素的值为零;在对系数矩阵A进行消去时,即使aij原来为0,但如果aik、akj、akk不等于0,新的aij就不等于0了,这种现象称为非零元素注入。稀疏矩阵采用数组存储时,由于存在非零元素注入,数组的大小不好确定,只能根据经验设置一个较大的数组,采用链表存储时,链表内存是用多少申请多少,可以有效解决这个问题。但由于采用链表存储方式时,计算过程中还要涉及频繁内存申请、内存释放和数据检索等操作,内存申请和释放操作时间较长,因而计算速度较慢。
设线性方程的一般形式如下:
AX=B (1)
对于线性方程,采用高斯消去法求解,包括以下步骤:
A、对系数矩阵A的消去,公式如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连海事大学,未经大连海事大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210269018.2/2.html,转载请声明来源钻瓜专利网。