|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectorg.mklab.nfc.leq.DoubleComplexLUDecomposer
public final class DoubleComplexLUDecomposer
倍精度(double)型の複素行列のLU分解(P*A=L*U)を求めるためのクラスです。
コンストラクタの概要 | |
---|---|
DoubleComplexLUDecomposer()
|
メソッドの概要 | |
---|---|
LUDecompositionDoubleComplexElements |
decompose(double[][] aRe,
double[][] aIm,
double tolerance)
複素行列のLU分解を返します。 |
LUDecompositionDoubleComplexElements |
decomposeWithPermutation(double[][] aRe,
double[][] aIm,
double tolerance)
複素行列の並べ替え付きLU分解を返します。 |
double[] |
getDeterminant(double[][] aRe,
double[][] aIm,
double tolerance)
行列式を返します。 |
double[][][] |
inverse(double[][] aRe,
double[][] aIm,
double tolerance)
複素行列の逆行列を返します。 |
double[][][] |
leftDivide(double[][] aRe,
double[][] aIm,
double[][] bRe,
double[][] bIm,
double tolerance)
|
double[][] |
solveLinearEquation(double[][] aRe,
double[][] aIm,
double[] bRe,
double[] bIm,
double tolerance)
線形方程式の解を返します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
public DoubleComplexLUDecomposer()
メソッドの詳細 |
---|
public LUDecompositionDoubleComplexElements decompose(double[][] aRe, double[][] aIm, double tolerance)
複素行列をA、下三角行列を行置換した行列をL、上三角行列をUとすると、これらの行列の間には、
A = Q * H * Q#
Q# * Q = Iの関係が成り立ちます。
aRe
- 複素行列の実部aIm
- 複素行列の虚部tolerance
- 許容誤差
public LUDecompositionDoubleComplexElements decomposeWithPermutation(double[][] aRe, double[][] aIm, double tolerance)
複素行列をA、下三角行列を行置換した行列をL、上三角行列をU、置換行列をPとすると、これらの行列の間には、
P * A = Q * H * Q#
Q# * Q = Iの関係が成り立ちます。
aRe
- 複素行列の実部aIm
- 複素行列の虚部tolerance
- 許容誤差
public double[][] solveLinearEquation(double[][] aRe, double[][] aIm, double[] bRe, double[] bIm, double tolerance)
実部aRe、虚部aImで表される複素行列を
の解A*x = b
aRe
- 係数行列の実部aIm
- 係数行列の行列bRe
- 実部bIm
- 行列tolerance
- 許容誤差
public double[][][] inverse(double[][] aRe, double[][] aIm, double tolerance)
aRe
- 複素行列の実部aIm
- 複素行列の虚部tolerance
- 許容誤差
public double[][][] leftDivide(double[][] aRe, double[][] aIm, double[][] bRe, double[][] bIm, double tolerance)
aRe
- 左行列の実部aIm
- 左行列の虚部bRe
- 右行列の実部bIm
- 右行列の虚部tolerance
- 許容誤差
public double[] getDeterminant(double[][] aRe, double[][] aIm, double tolerance)
aRe
- 複素行列の実部aIm
- 複素行列の虚部tolerance
- 許容誤差
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |