数値線形代数の数学分野では、 行列分割とは、与えられた行列を行列の和または差として表す式のことです。多くの反復法(例えば、 微分方程式系の場合)は、三重対角行列よりも一般的な行列を含む行列方程式の直接解法に依存しています。これらの行列方程式は、行列分割として記述すると、多くの場合、直接かつ効率的に解くことができます。この手法は、1960 年にRichard S. Vargaによって考案されました。[ 1 ]
我々は行列方程式を解こうとする
ここで、Aは与えられたn × nの非特異行列であり、kはn個の成分を持つ与えられた列ベクトルです。行列A を次のように分割します。
ここで、 BとCはn × n行列です。任意のn × n行列Mについて、M の要素が非負である場合、M ≥ 0と書きます。Mの要素が正のみである場合、 M > 0と書きます。同様に、行列M 1 − M 2の要素が非負である場合、 M 1 ≥ M 2と書きます。
定義: A = B − Cは、 B − 1 ≥ 0かつC ≥ 0の場合、A の正則分割である。
行列方程式の形式を仮定します。
ここで、gは与えられた列ベクトルであり、ベクトルxについて直接解くことができます。( 2 ) がAの正則分割を表す場合、反復法
ここで、x (0)は任意のベクトルであり、実行可能である。同様に、( 4 )を次の形式で記述する。
行列D = B − 1 Cは、( 2 ) がAの正則分割を表す場合、非負の要素を持つ。[ 2 ]
A − 1 > 0の場合、< 1、はDのスペクトル半径を表し、したがってDは収束行列である。結果として、反復法 ( 5 ) は必然的に収束する。[ 3 ] [ 4 ]
さらに、分割(2)が、行列B が対角行列となるように選択されている場合( B は可逆でなければならないため、対角要素はすべて非ゼロ)、B は線形時間で逆行列にすることができます(時間計算量を参照)。
多くの反復法は行列分割として記述できます。行列Aの対角成分がすべて非ゼロである場合、行列Aを行列の和として表します。
ここで、DはAの対角部分であり、UとLはそれぞれ厳密に上三角および下三角のn × n行列である。すると、次のようになる。
ヤコビ法は、行列形式で分割として表すことができる。
ガウス・ザイデル法は、分割行列として表すことができる。
逐次過緩和法は、行列形式で分割として表すことができる。
式(1)において、
ヤコビ法で用いられる分割(7 )を適用してみましょう。Aを、 BがAのすべての対角要素からなり、CがAのすべての非対角要素の符号を反転させたものとなるように分割します。(もちろん、これは行列を2つの行列に分割する唯一の有効な方法ではありません。)
B − 1 ≥ 0かつC ≥ 0であるため、分割 ( 11 ) は正則分割である。A − 1 > 0であるため、スペクトル半径は < 1. ( Dの近似固有値はしたがって、行列Dは収束し、方法 ( 5 ) は問題 ( 10 ) に対して必ず収束します。A の対角要素はすべてゼロより大きく、 Aの非対角要素はすべてゼロより小さく、Aは厳密に対角優位であることに注意してください。[ 11 ]
方程式( 12)の厳密解は
式( 12 )の最初の数回の反復は、 x (0) =(0.0、0.0、0.0)Tから始まる以下の表に示されています。この表から、この方法は明らかに解( 13 )に収束していることがわかりますが、かなりゆっくりです。
前述のように、ヤコビ法(7 )は、上記で示した特定の正則分割( 11 )と同じです。
問題(10 )の行列Aの対角成分はすべて非ゼロであるため、行列Aを分割(6)として表すことができる。
次に
問題(10 )にガウス・ザイデル法(8 )を適用すると、次の形式になる。
式( 15 )の最初の数回の反復は、 x (0) =(0.0、0.0、0.0)Tから始まる以下の表に示されています。この表から、この方法は明らかに解( 13)に収束しており、上記のヤコビ法よりもやや速いことがわかります。
ω = 1.1とする。逐次過緩和法における問題 ( 10 ) の行列Aの分割 ( 14 ) を用いると、次のようになる。
問題(10 )に適用される逐次過緩和法(9 )は、次の形式をとる。
式( 16 )の最初の数回の反復は、 x (0) =(0.0、0.0、0.0)Tから始まる以下の表に示されています。この表から、この方法は明らかに解( 13)に収束しており、上記のガウス・ザイデル法よりもわずかに速いことがわかります。