Mol(Math Object Library) fot .Net
The LuSolver type exposes the following members.
コンストラクター
名前 | 説明 | |
---|---|---|
LuSolver |
デフォルトのコンストラクタ
|
メソッド
名前 | 説明 | |
---|---|---|
ConditionNumber1 |
因子分解された行列の条件数(Condition number)を1-ノルムから推定します。条件数は、連立 1 次方程式の解の誤差の分析に役立ちます。 ※Mol V1.0.0.0.3 から仕様が変更されています。 ※現時点ではスパース行列の条件数の計算はサポートされていません。 | |
ConditionNumberI |
因子分解された行列の条件数(Condition number)を無限ノルムから推定します。条件数は、連立 1 次方程式の解の誤差の分析に役立ちます。 ※Mol V1.0.0.0.3 から仕様が変更されています。 ※現時点ではスパース行列の条件数の計算はサポートされていません。 | |
Create(MatrixDenseBandComplex) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixDenseBandDouble) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixDenseGeneralComplex) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixDenseGeneralDouble) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixDenseHermite) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixDenseLowerTriangleComplex) |
三角行列 A 用の LuSolver を作成してリターンします。
| |
Create(MatrixDenseLowerTriangleDouble) |
三角行列 A 用の LuSolver を作成してリターンします。
| |
Create(MatrixDenseSymmetricComplex) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixDenseSymmetricDouble) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixDenseUpperTriangleComplex) |
三角行列 A 用の LuSolver を作成してリターンします。
| |
Create(MatrixDenseUpperTriangleDouble) |
三角行列 A 用の LuSolver を作成してリターンします。
| |
Create(MatrixSparseGeneralComplex) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixSparseGeneralDouble) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixSparseHermite) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixSparseLowerTriangleComplex) |
三角行列 A 用の LuSolver を作成してリターンします。
| |
Create(MatrixSparseLowerTriangleDouble) |
三角行列 A 用の LuSolver を作成してリターンします。
| |
Create(MatrixSparseSymmetricComplex) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixSparseSymmetricDouble) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixSparseUpperTriangleComplex) |
三角行列 A 用の LuSolver を作成してリターンします。
| |
Create(MatrixSparseUpperTriangleDouble) |
三角行列 A 用の LuSolver を作成してリターンします。
| |
Create(MatrixDenseGeneralComplex, Boolean) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixDenseGeneralDouble, Boolean) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixDenseHermite, Boolean) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixDenseSymmetricComplex, Boolean) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Create(MatrixDenseSymmetricDouble, Boolean) |
行列 A を因子分解してから LuSolver を作成してリターンします。
因子分解の結果は LuSolver オブジェクトが保持します。
| |
Dispose |
IDisposable インターフェースメンバ。C++ Dll に割り当てられたメモリー資源を解放します。
メモリー資源は当然ながらガベージコレクションによって解放されますが、いつ解法されるかはわかりません。
以後、完全に使用しないと判明したオブジェクトは Dispose() を呼び出して積極的に資源を解法することをお勧めします。
(Overrides _Mol..::..Dispose()()()().) | |
Solve(MatrixDenseGeneralComplex) |
因子分解された行列の情報を元に A*x = b という形の連立方程式を解きます。
ここで、A はLuSolver.Create() に指定した行列。 x は解行列。b は定数項行列です。
Solve()メソッドは繰り返し実行できます。 | |
Solve(MatrixDenseGeneralDouble) |
因子分解された行列の情報を元に A*x = b という形の連立方程式を解きます。
ここで、A はLuSolver.Create() に指定した行列。 x は解行列。b は定数項行列です。
Solve()メソッドは繰り返し実行できます。 | |
Solve(VectorDenseComplex) |
因子分解された行列の情報を元に A*x = b という形の連立方程式を解きます。
ここで、A はLuSolver.Create() に指定した行列。 x は解ベクトル。b は定数項ベクトルです。
Solve()メソッドは繰り返し実行できます。 | |
Solve(VectorDenseDouble) |
因子分解された行列の情報を元に A*x = b という形の連立方程式を解きます。
ここで、A はLuSolver.Create() に指定した行列。 x は解ベクトル。b は定数項ベクトルです。
Solve()メソッドは繰り返し実行できます。 | |
Solve(MatrixDenseGeneralComplex, MatrixDenseGeneralComplex) |
因子分解された行列の情報を元に A*x = b という形の連立方程式を解きます。
ここで、A はLuSolver.Create() に指定した行列。 x は解行列。b は定数項行列です。
Solve()メソッドは繰り返し実行できます。 | |
Solve(MatrixDenseGeneralDouble, MatrixDenseGeneralDouble) |
因子分解された行列の情報を元に A*x = b という形の連立方程式を解きます。
ここで、A はLuSolver.Create() に指定した行列。 x は解行列。b は定数項行列です。
Solve()メソッドは繰り返し実行できます。 | |
Solve(VectorDenseComplex, VectorDenseComplex) |
因子分解された行列の情報を元に A*x = b という形の連立方程式を解きます。
ここで、A はLuSolver.Create() に指定した行列。 x は解ベクトル。b は定数項ベクトルです。
Solve()メソッドは繰り返し実行できます。 | |
Solve(VectorDenseDouble, VectorDenseDouble) |
因子分解された行列の情報を元に A*x = b という形の連立方程式を解きます。
ここで、A はLuSolver.Create() に指定した行列。 x は解ベクトル。b は定数項ベクトルです。
Solve()メソッドは繰り返し実行できます。 |
フィールド
プロパティ
名前 | 説明 | |
---|---|---|
MatrixOperation |
連立方程式を解く前に係数行列に施す操作を指定します(_Mol..::..MATRIX_OPERATION)
デフォルトは MATRIX_OPERATION.AS_IS(転置操作無し)です。
ただし、係数行列が疎な場合、対称行列、エルミート行列の場合はデフォルト値を変更できません。
密な一般行列でも、対称行列やエルミート行列と指定した場合は指定はデフォルト値以外効果ありません。
| |
MolHandle |
Mol.C++.dll(ネイティブDLL)と Mol.Net.Dll(.Net 用マネージドDLL)間の情報を管理するハンドル。
NativeDll クラスでユーザ作成のネイティブDLLを作成する場合等に利用できます。
(Inherited from _Mol.) | |
MolType |
Molオブジェクトの属性(_Mol..::..MOL_TYPE)。
(Inherited from _Mol.) | |
UserType |
Molオブジェクトの追加属性(_Mol..::..USER_TYPE)。
例えば一般行列でも要素が対称なら、その属性を積極的にセットすることでソルバーは最適な手法を選択することができます。
当然ながら、間違った設定は間違った値や計算不能な状態に陥りますので注意して設定してください。
(Inherited from _Mol.) |