LU分解
数学における行列のLU分解(エルユーぶんかい、英: LU decomposition)とは、正方行列 A を下三角行列 L と上三角行列 U の積に分解すること。すなわち A = LU が成立するような L と U を求めることをいう。正方行列 A のLU分解が存在する必要十分条件はすべての首座小行列式が 0 でないことである。また L の対角成分をすべて 1 とすれば分解はただ一通りに定まる。文献によってはLR分解とも呼ばれる(それはAを左三角(left triangular)と右三角(right triangular)の行列の積に分解するということにちなむ)。
LU分解の手法
[編集]以下、n 次正方行列の場合で説明する。基本的にはA = LU の各成分について書き下した n2 個の式を解くことにより、行列 L , U を求めるのだが、このままでは未知の係数の個数(n (n + 1) 個)が式の個数(n2個)より多いので解けない。これを解くための解法には ドゥーリトル法 と クラウト法 の2つがある。
- ドゥーリトル法では、行列 L の対角成分の全てを 1 とおき、(1, 1) 成分 , (2, 1) 成分 , (3, 1) 成分 , ... , (1, 2) 成分, (2, 2) 成分, ... の順に n2 個の式を解く。
- クラウト法では、行列 U の対角成分の全てを 1 とおき、(1, 1) 成分 , (1, 2) 成分 , (1, 3) 成分 , ... , (2, 1) 成分, (2, 2) 成分, ... の順に n2 個の式を解く。
例
[編集]ドゥーリトル法による2次行列のLU分解を行う。与えられた正方行列A の成分をaij とする。
- 下三角行列 L の対角成分を全て 1 とおき、残りの成分、(1, 2)を0、(2, 1)を変数l21 とおく。
- 上三角行列 U の対角成分と対角成分より上の成分を変数におく。
- A=LU の両辺を係数比較する。
- 上式を上から順に解くことでL , U が求められる。
応用
[編集]連立1次方程式
[編集]の解き方に、行列 A を LU分解する方法がある。L , U は下三角行列、上三角行列であるため、逆行列を求めることなく計算することが可能である。このため、同じA に対しb だけを変えていくつも連立方程式を解く場合、LU分解は有用である[1]。
与えられた方程式
に対し、変数y を
とおき、これを上式に代入する。
から変数y を求める[注釈 1]。求めた解y をUx = y の右辺に代入し、解 x を求めることができる[注釈 2]。
Ly = bはガウスの消去法の前進消去、Ux = yは後退代入に対応する。
逆行列
[編集]行列 A を LU 分解すると、
により逆行列A-1 を求められる。
また、
- (ei は単位行列I の第i 列)
の解xi を並べた行列は AX = I を満たすので、このようにしても逆行列A-1 を求めることができる。
行列式
[編集]行列 A を LU 分解できれば、その行列式は簡単に求めることができる。なぜならば、行列 L および U は三角行列であることから、それらの行列式 |L | , |U | は対角成分の積で表され、|A | は、
と計算できるからである。
変種
[編集]- LDU 分解
- 下三角行列 L と対角行列 D と上三角行列 U の積に分解する。
- LUP 分解
- 下三角行列 L と上三角行列 U と置換行列 P の積に分解する。
脚注
[編集]注釈
[編集]出典
[編集]- ^ Joel H. Ferziger; Milovan Perić 著、小林敏雄、谷口伸行、坪倉誠 訳『コンピュータによる流体力学』シュプリンガー・フェアラーク東京、2003年、90頁。ISBN 4-431-70842-1。