主題
Search

逐次超鬆弛迭代法


逐次超鬆弛迭代法 (SOR) 是一種透過外推 Gauss-Seidel 迭代法來求解線性方程組 Ax=b 的方法。這種外推的形式是前一次迭代值和計算出的 Gauss-Seidel 迭代值之間針對每個分量的加權平均,

 x_i^((k))=omegax^__i^((k))+(1-omega)x_i^((k-1)),

其中 x^_ 表示 Gauss-Seidel 迭代值,而 omega 是外推因子。 想法是選擇一個 omega 值,以加速迭代收斂到解的速度。

用矩陣術語表示,SOR 演算法可以寫成:

 x^((k))=(D-omegaL)^(-1)[omegaU+(1-omega)D]x^((k-1))+omega(D-omegaL)^(-1)b,

其中矩陣 D-L-U 分別表示 A 的對角部分、嚴格下三角部分和嚴格上三角部分。

如果 omega=1,則 SOR 方法簡化為 Gauss-Seidel 方法。 Kahan (1958) 的一個定理表明,如果 omega 不在區間 (0,2) 內,則 SOR 方法不會收斂。

一般來說,不可能預先計算出能最大化 SOR 收斂速度的 omega 值。 通常,會使用一些啟發式估計,例如 omega=2-O(h),其中 h 是底層物理域離散化的網格間距。


另請參閱

雅可比迭代法, 線性方程組, 非定常迭代法, 定常迭代法, 對稱逐次超鬆弛迭代法

此條目由 Noel Black 和 Shirley Moore 貢獻,改編自 Barrett 等人 (1994) (作者連結)

使用 探索

參考文獻

Barrett, R.; Berry, M.; Chan, T. F.; Demmel, J.; Donato, J.; Dongarra, J.; Eijkhout, V.; Pozo, R.; Romine, C.; and van der Vorst, H. 線性系統求解模板:迭代方法構建塊,第二版 Philadelphia, PA: SIAM, 1994. http://www.netlib.org/linalg/html_templates/Templates.html.Hageman, L. and Young, D. 應用迭代方法 New York: Academic Press, 1981.Kahan, W. 求解大型線性方程組的 Gauss-Seidel 方法。 Ph.D. 論文. Toronto, Canada, University of Toronto, 1958.Press, W. H.; Flannery, B. P.; Teukolsky, S. A.; and Vetterling, W. T. "Successive Overrelaxation (SOR)." FORTRAN 數值 recipes:科學計算的藝術,第二版 Cambridge, England: Cambridge University Press, pp. 866-869, 1992.Varga, R. 矩陣迭代分析 Englewood Cliffs, NJ: Prentice-Hall, 1962.Young, D. 大型線性系統的迭代解法 New York: Academic Press, 1971.

在 中引用

逐次超鬆弛迭代法

引用為

Black, NoelMoore, Shirley. "逐次超鬆弛迭代法。" 來自 —— 資源,由 Eric W. Weisstein 建立。 https://mathworld.tw/SuccessiveOverrelaxationMethod.html

主題分類