LU分解計算機

ドゥーリトル法の消去操作で、正方行列を下三角行列と上三角行列に分解します。

行列を分解
列の要素はカンマまたは空白で、行と行はセミコロンで区切ってください。

LU分解について

LU分解は正方行列 A を L と U の積で表します。L は下三角行列で、主対角線より上の要素はすべてゼロです。U は上三角行列で、主対角線より下の要素はすべてゼロです。ここで用いるドゥーリトル法では、L の対角要素はすべて一になります。表示された二つの因子を掛けると、通常の浮動小数点の丸め誤差を除き、元の入力行列が再現されます。 分解はガウス消去法に基づいています。ピボットの下の要素を消去するために使う各乗数を L に保存し、変形されていく行階段行列が U になります。この構成は、消去の処理内容を捨てずに記録する点で有用です。L と U が得られれば、係数行列が同じで右辺だけが異なる多数の連立方程式を、毎回最初から消去するより効率よく解けます。 A × x = b を解くには、まず前進代入で L × y = b を解き、次に後退代入で U × x = y を解きます。三角系では各段階の式に新しい未知数が一つしか現れないため、計算は単純です。LU因子は行列式にも使えます。L の対角成分が一なら、行列式は U の対角要素の積です。逆行列の計算や数値シミュレーションでも基本構造として利用されます。 この計算機は簡潔な行列記法に対応しています。各行の値をカンマまたは空白で区切り、行と行の間にセミコロンを入れてください。この形式のLU分解には正方行列が必要なので、各行の要素数は行数と同じにします。負数と小数も入力できます。丸めは表示時のみ行い、消去計算には JavaScript の倍精度演算を使用します。 実装はピボット選択なしのドゥーリトル分解を使うため、消去中に現れる各ピボットはゼロ以外である必要があります。正則な行列でも最初のピボットがゼロとなり、分解前に行の置換が必要な場合があります。完全な数値計算ライブラリでは、この操作を置換行列 P で表し、P × A = L × U とします。ピボットエラーが出た場合は、適切に行を並べ替えて入力するか、ピボット選択付きのソルバーを使ってください。条件の良い授業用の例や、対角ピボットが利用できる行列では、分解結果を明確かつすぐに確認できます。

LU分解の計算例

行列 A分解因子確認
4,3;6,3L: 1,0;1.5,1 と U: 4,3;0,-1.5L と U を掛けると、元の二行の行列になります。
2,0;0,5L: 単位行列、U: 2,0;0,5対角行列はそのまま上三角行列です。
2,1,1;4,-6,0;-2,7,2L: 1,0,0;2,1,0;-1,-1,1対応する U の行は 2,1,1;0,-8,-2;0,0,1 です。

LU分解の計算方法

  1. 各行をカンマまたは空白で区切った数値として記述します。
  2. 行をセミコロンでつなぎ、正方行列になっていることを確認します。
  3. 「行列を分解」を選び、ドゥーリトル法によるガウス消去を実行します。
  4. L と U を読み取り、掛け合わせて入力行列と一致することを確認します。

LU分解のよくある質問

LU分解とは何ですか?

正方行列を下三角行列と上三角行列に分解することです。行の置換が不要な場合、両者の積は元の行列になります。

LU分解はなぜ便利なのですか?

同じ係数行列を持つ複数の連立方程式で消去結果を再利用できます。行列式、逆行列、数値解析の計算も簡単になります。

行列はどの形式で入力しますか?

行内の要素をカンマまたは空白で区切り、行同士をセミコロンで区切ります。各行の要素数を行数と同じにしてください。

ピボットエラーが出るのはなぜですか?

ピボット選択なしのドゥーリトル法では、ゼロのピボットで割ることができません。行の並べ替えで解決する場合があります。汎用ソフトでは置換行列と部分ピボット選択を使います。

小数や負数を入力できますか?

はい。有限の小数や負数を入力できます。因子を読みやすくするため、表示値は小数点以下八桁に丸められます。