行列の極分解計算ツールの使い方
行列の極分解計算ツールは、正方行列Aを A = UP に因数分解します。Uは直交行列、Pは対称半正定値行列です。2×2または3×3の行列サイズを選び、各成分を入力すると、U、P、検算用の積U·P、完全な計算過程を表示します。
- 行列サイズを選ぶ — ドロップダウンから2×2または3×3を選びます。
- 行列Aを入力する — 各要素を入力します。小数および負の値も使用できます。
- 分解結果を読む — 行列の極分解計算ツールは、読みやすい行列形式でU、P、U·Pを表示します。
- 可逆性を確認する — Aが可逆かどうかを表示します。これは分解の一意性に関係します。
成分を変更すると、Aの変化に応じて回転・反射成分と伸長成分がどう変わるかを調べられます。
行列の極分解計算ツールの式と考え方
行列の極分解計算ツールは、右極分解を実装しています。
A = UP
P = √(AᵀA) (対称半正定値)
U = A · P⁻¹ (Aが可逆の場合は直交行列)
| 記号 | 意味 |
|---|---|
| A | 入力するm×m実正方行列 |
| U | 直交因子:UᵀU = I |
| P | 対称半正定値因子 |
| AᵀA | グラム行列。その平方根がPを与える |
P = √(AᵀA)の計算:
行列の極分解計算ツールは、X₀ = AᵀA、Y₀ = Iから始めて次を繰り返すDenman-Beavers反復を使用します。
Xₙ₊₁ = ½(Xₙ + Yₙ⁻¹)
Yₙ₊₁ = ½(Yₙ + Xₙ⁻¹)
この反復はP = √(AᵀA)へ二次収束します。Pが分かれば、U = A·P⁻¹で求められます。
一意性: Aが可逆(行列式がゼロでない)なら極分解は一意です。Aが特異でもPは存在しますが、Uは一意でない場合があります。
前提と制限
現在の行列の極分解計算ツールは2×2および3×3の実正方行列に対応しています。反復は30ステップ実行され、条件のよい入力の多くでは十分です。行列反転時のほぼゼロのピボット(しきい値10⁻¹⁰)は、数値的な特異性として扱われます。
有限精度の計算では、丸め誤差や条件数の大きさが結果に影響します。ほぼ特異な行列、悪条件の行列、入力値の桁が大きく異なる場合は、UᵀU = I や U·P ≈ A の検算に目立つ誤差が出ることがあります。より大きな行列、複素行列、ランク不足行列、厳密な誤差保証が必要な用途では、SVDベースの手法や数値線形代数ライブラリを用いて許容誤差と条件数を確認してください。
行列の極分解計算ツールの活用例
行列の極分解計算ツールは、線形代数と工学のさまざまな用途で役立ちます。
- コンピュータグラフィックス — アフィン変換行列を回転と拡大縮小に分解し、アニメーション補間(slerp)に利用する。
- 連続体力学 — 変形勾配 F = RU(右極分解)から、剛体回転と純粋な伸長を分離する。
- 行列解析 — UとPを個別に調べ、Aのスペクトル的・幾何学的性質を理解する。
- ロボティクス — 極分解からUを取り出し、ノイズを含む姿勢推定に最も近い回転行列を復元する。
- 数値線形代数 — SVDを計算する前の前処理として極分解を使う。
計算後は、UᵀU ≈ I(Uが直交行列)であること、Pが対称かつ半正定値であることを、Pのすべての固有値が非負か確認して検証できます。