一種基於稀疏存儲的非零元遍歷的電網網絡方程求解方法
2023-05-15 05:43:21
一種基於稀疏存儲的非零元遍歷的電網網絡方程求解方法
【專利摘要】本發明是一種基於稀疏存儲的非零元遍歷的電網網絡方程求解方法。包括以下步驟:1)在進入仿真時步求解之前,根據電網結構參數和待計算故障擾動信息,形成電力系統網絡方程;2)對電力系統網絡方程中的方程係數矩陣進行因子分解,得到因子分解後的因子表矩陣;3)進入仿真時步求解。本發明可以儘可能地消除常規高維稀疏線性方程求解方法中方程係數矩陣非零元檢索和雙重循環、條件判斷中冗餘的操作和運算,形成新的實用的高維稀疏線性方程組求解方法和流程,提升基於稀疏存儲和前代回代求解高維線性方程組方法的效率,有效消除大規模電力系統高效仿真計算和(超)實時仿真中線性電網絡和電路部分求解瓶頸。
【專利說明】—種基於稀疏存儲的非零元遍歷的電網網絡方程求解方法【技術領域】
[0001]本發明涉及一種基於稀疏存儲的非零元遍歷的電網網絡方程求解方法,本發明用於大規模電力系統機電暫態(超)實時仿真中網絡方程快速求解,屬於大網電數字仿真【技術領域】。
【背景技術】
[0002]電力系統計算分析和仿真中廣泛涉及矩陣、矢量相關運算,特別是線性電力網絡、電路等部分的計算,本質是電壓、電流相關的線性方程求解。對大規模電力系統,方程維數較高,常常達到上萬維,其運算量比重較大,因而高維線性方程求解是影響大規模電力系統計算分析和仿真程序和軟體運行效率的主要因素之一。
[0003]工程中多將線性方程矩陣進行因子分解,繼而基於因子表通過前代、回代過程求解線性方程。此外,由於電力網絡自身的結構特點,描述上述線性方程的矩陣多採用稀疏結構存儲,即矩陣中僅含有少量的非零元。矩陣經過因子分解,存儲因子表矩陣也只含有少量的非零元。
[0004]在電力系統仿真中,特別是嚴格實時仿真中,全網動態元件的求解和網絡方程求解交替迭代進行。其中,動態元件均為分立元件接入電網絡,各個動態元件在單次求解中相對獨立,解算過程可以自然解耦,可以分組進行同步並行解算,動態元件包括電機、動負荷等一次設備和控制保護等二次設備。然而,電力系統完整的電網絡緊密耦合,網絡方程求解則難以自然解耦,從而進行同步並行解算。因此,網絡方程求解環節成為決定大規模電力系統仿真計算效率的主要瓶頸,特別是在(超)實時仿真中,成為能否保證仿真實時性的重要因素。
[0005]常規的高維稀疏線性方程組求解方法,雖然有效節約了計算機內存存儲空間,但在線性方程組求解的前代和回代過程中,除了必要的浮點數代數運算外,還需通過雙重循環對線性方程組係數矩陣非零元進行檢索,其中包含若干冗餘操作,從而降低了方程求解效率。因此,在(超)實時仿真中,有必要儘可能地消除常規的高維線性方程組求解方法流程中的冗餘操作和運算,有效提高高維線性方程組求解效率。
【發明內容】
[0006]本發明的目的在於考慮上述問題而提供一種基於稀疏存儲的非零元遍歷的電網網絡方程求解方法。本發明可以儘可能地消除常規高維稀疏線性方程求解方法中方程係數矩陣非零元檢索和雙重循環、條件判斷中冗餘的操作和運算,形成新的實用的高維稀疏線性方程組求解方法和流程,提升基於稀疏存儲和前代回代求解高維線性方程組方法的效率,有效消除大規模電力系統高效仿真計算和(超)實時仿真中線性電網絡和電路部分求解瓶頸。
[0007]本發明的技術方案是:本發明基於稀疏存儲的非零元遍歷的電網網絡方程求解方法,包括以下步驟:[0008]I)在進入仿真時步求解之前,根據電網結構參數和待計算故障擾動信息,形成電力系統網絡方程,方程可描述為
[0009]I = Ylj(I)
[0010]其中/為電力系統節點注入電流基波相量,為電力系統節點電壓基波相量,Y為電力系統網絡節點導納陣,方程維數記為η ;
[0011]2)在進入仿真時步求解之前,式(I)中方程係數矩陣Y進行因子分解,得到因子分解後的因子表矩陣,記為
[0012]A=L+D+U (2)
[0013]其中為L因子表矩陣下三角部分,D為因子表矩陣的主對角元部分,U為因子表矩陣的上三角部分;
[0014]上述矩陣均採用稀疏格式進行存儲,非零元按行排列;
[0015]記錄矩陣L、U非零元總數k:L、ku ;
[0016]記錄矩陣L、U非零元所在行號Rp Ru,以及記錄矩陣L、U非零元所在列號Q、Cu,矩陣L中第i個非零元所在行、列記為<、Cl,矩陣U中第i個非零元所在行、列記為R C
[0017]3)進入仿真時步求解。
[0018]上述步驟3)的仿真時步求解中,每個仿真步長需進行網絡方程求解,具體包括如下步驟:`
[0019]31)為方程求解前代過程初始化中間變量X,X為η維向量,令
[0020]χ = ?(3);
[0021]32)依照矩陣L非零元數量,單重循環進行如下運算
[0022]x(R[J ^ X(R^-UXX11i)XX(C1), -2 --,kL (4);
[0023]33)依照矩陣D全部對角元素,單重循環進行如下運算
[0024]x(i)=x(i)/D(i, i), i=l, ···, η (5);
[0025]34)依照矩陣U非零元數量,單重循環進行如下運算
[0026]XiR1丨)= XiRi丨)-U(RilO(Cil ), i = kv-1,--,1(6);
[0027]35)方程求解結束,將中間變量賦值給
[0028]Jj = X(7)。
[0029]電力系統計算分析和仿真中普遍涉及到電網絡和電路相關的大規模稀疏線性方程組求解,方程組維數往往非常高,運算量比重較大;相對電網動態元件計算,電網絡和電路相關的線性方程組解算難以分網並行化同步進行,因此網絡相關的線性方程求解環節成為電力系統計算和仿真效率的瓶頸。在常規的高維稀疏線性方程組求解方法的前代和回代過程中,需通過雙重循環對線性方程組係數矩陣非零元進行檢索,其中包含若干冗餘操作。因此,在(超)實時仿真中,有必要儘可能地消除常規的高維線性方程組求解方法流程中的冗餘操作和運算。本發明基於稀疏存儲的非零元遍歷的電網網絡方程求解方法,儘可能地消除常規高維稀疏線性方程求解方法中方程係數矩陣非零元檢索和雙重循環、條件判斷中冗餘的操作和運算,形成新的實用的高維稀疏線性方程組求解方法和流程,提升基於稀疏存儲和前代回代求解高維線性方程組方法的效率。本發明是一種方便實用的基於稀疏存儲的非零元遍歷的電網網絡方程求解方法。
【具體實施方式】[0030]本發明提出了一種基於稀疏存儲的非零元遍歷的電網網絡方程求解方法,該方法包括以下步驟:
[0031]I)在進入仿真時步求解之前,根據電網結構參數和待計算故障擾動信息,形成電力系統網絡方程,方程可描述為
[0032]j = Ylj(I)
[0033]其中/為電力系統節點注入電流基波相量,[j為電力系統節點電壓基波相量,為
方程待求解未知量,Y為電力系統網絡節點導納陣,方程維數記為η。
[0034]2)在進入仿真時步求解之前,式(I)中方程係數矩陣Y進行因子分解,得到因子分解後的因子表矩陣,記為
[0035]A=L+D+U (2)
[0036]其中為L因子表矩陣下三角部分,D為因子表矩陣的主對角元部分,U為因子表矩陣的上三角部分。
[0037]上述矩陣均採用稀疏格式進行存儲,非零元按行緊密排列,在計算機中以兩個雙精度類型數組變量連續存儲A矩陣的實部和虛部。
[0038]記錄矩陣L、U非零元總數kp ku;在計算機中以長整型變量存儲。
[0039]記錄矩陣L、U非零元所在行號RpRu,以及記錄矩陣L、U非零元所在列號CpCu,在
計算機中以長整型數組變量連續存儲;矩陣L中第i個非零元所在行、列記為Ri丨、Q,矩陣U中第i個非零元所在行、列記為巧、C;。
[0040]3)進入仿真時步求解,每個仿真步長需進行網絡方程求解,則採用如下步驟。
[0041]31)為方程求解前代過程初始化中間變量X,X為η維向量,在計算機中以兩個雙精度數組變量連續存儲X的實部和虛部,令
[0042]X = i(3)
[0043]32)依照矩陣L非零元數量,單重循環進行如下運算
[0044]X(Ril ) = X(R1l)-L(R^q)XXiq ), i = U丨O)
[0045]上述運算為複數運算。
[0046]33)依照矩陣D全部對角元素,單重循環進行如下運算
[0047]x(i)=x(i)/D(i, i), i=l, ···, η (5)
[0048]上述運算為複數運算。
[0049]34)依照矩陣U非零元數量,單重循環進行如下運算
[0050]X(R11) = x(R[)-U(Ri,Cil) X X(Cil), i = kr-1,---,1(6)
[0051]上述運算為複數運算。[0052]35)方程求解結束,將中間變量賦值給?
[0053]V = x(7)
[0054]在配置為處理器i72720m、內存4g的計算機上進行測試,較常規稀疏線性方程組求解方法,本方法效率提高約3倍,以南方電網13年豐大系統電網網絡方程求解為例,單次求解時間由約O. 32毫秒減少到約O`. 12毫`秒。
【權利要求】
1.一種基於稀疏存儲的非零元遍歷的電網網絡方程求解方法,其特徵在於包括以下步驟:1)在進入仿真時步求解之前,根據電網結構參數和待計算故障擾動信息,形成電力系 統網絡方程,方程可描述為i = yu(1)其中/為電力系統節點注入電流基波相量,&為電力系統節點電壓基波相量,Y為電力 系統網絡節點導納陣,方程維數記為n ;2)在進入仿真時步求解之前,式(1)中方程係數矩陣Y進行因子分解,得到因子分解後 的因子表矩陣,記為A=L+D+U (2)其中為L因子表矩陣下三角部分,D為因子表矩陣的主對角元部分,U為因子表矩陣的 上三角部分;上述矩陣均採用稀疏格式進行存儲,非零元按行排列;記錄矩陣L、U非零元總數匕、ku ;記錄矩陣L、U非零元所在行號&、!--,以及記錄矩陣L、U非零元所在列號CpCu,矩陣L 中第i個非零元所在行、列記為圮、CL矩陣U中第i個非零元所在行、列記為片,、Q,;3)進入仿真時步求解。
2.根據權利要求1所述的基於稀疏存儲的非零元遍歷的電網網絡方程求解方法,其特 徵在於上述步驟3)的仿真時步求解中,每個仿真步長需進行網絡方程求解,具體包括如下 步驟:31)為方程求解前代過程初始化中間變量x,x為n維向量,令 x = i⑶;32)依照矩陣L非零元數量,單重循環進行如下運算x(R\) = ,v(R)) — L{R\,C ) x ,v(Q ),i = …,kL(1)33)依照矩陣D全部對角元素,單重循環進行如下運算 x(i)=x(i)/D(i, i), i=l, ...,n (5);34)依照矩陣U非零元數量,單重循環進行如下運算 x(R;,) = x(Ri)-U(Ri,C[)xx(C[), i = kr —(b;35)方程求解結束,將中間變量賦值給泣 U = x(7)。
【文檔編號】G06F17/11GK103488610SQ201310404191
【公開日】2014年1月1日 申請日期:2013年9月6日 優先權日:2013年9月6日
【發明者】歐開健, 張樹卿, 李偉, 童陸園, 胡云, 梁旭, 郭海平, 胡明亮 申請人:南方電網科學研究院有限責任公司, 清華大學