Mol(Math Object Library) fot .Net

The LlsSolver type exposes the following members.

コンストラクター

  名前説明
Public methodLlsSolver
デフォルトのコンストラクター。

メソッド

  名前説明
Public methodDispose
使用しているメモリー領域を破棄します。
(Overrides _Mol..::..Dispose()()()().)
Public methodStatic memberSolveKnownRank(MatrixDenseGeneralComplex, MatrixDenseGeneralComplex)
行列 A を m × n の行列とするとき(A は最大階数行列) A に関する線形最小二乗問題、minimize || b - A x ||2 を QR(優決定:m>nの場合) または LQ(劣決定:m<nの場合) 因子分解を使用して解きます。 A の階数(Rank)は優決定なら n 、劣決定なら m が仮定されます。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveKnownRank(MatrixDenseGeneralComplex, VectorDenseComplex)
行列 A を m × n の行列とするとき(A は最大階数行列) A に関する線形最小二乗問題、minimize || b - A x ||2 を QR(優決定:m>nの場合) または LQ(劣決定:m<nの場合) 因子分解を使用して解きます。 A の階数(Rank)は優決定なら n 、劣決定なら m が仮定されます。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveKnownRank(MatrixDenseGeneralDouble, MatrixDenseGeneralDouble)
行列 A を m × n の行列とするとき(A は最大階数行列) A に関する線形最小二乗問題、minimize || b - A x ||2 を QR(優決定:m>nの場合) または LQ(劣決定:m<nの場合) 因子分解を使用して解きます。 A の階数(Rank)は優決定なら n 、劣決定なら m が仮定されます。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveKnownRank(MatrixDenseGeneralDouble, VectorDenseDouble)
行列 A を m × n の行列とするとき(A は最大階数行列) A に関する線形最小二乗問題、minimize || b - A x ||2 を QR(優決定:m>nの場合) または LQ(劣決定:m<nの場合) 因子分解を使用して解きます。 A の階数(Rank)は優決定なら n 、劣決定なら m が仮定されます。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveKnownRank(MatrixDenseGeneralComplex, MatrixDenseGeneralComplex, _Mol..::..MATRIX_OPERATION)
行列 A を m × n の行列とするとき(A は最大階数行列) A に関する線形最小二乗問題、minimize || b - A x ||2 を QR(優決定:m>nの場合) または LQ(劣決定:m<nの場合) 因子分解を使用して解きます。 A の階数(Rank)は優決定なら n 、劣決定なら m が仮定されます(転置操作が実行される場合は逆になります)。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveKnownRank(MatrixDenseGeneralComplex, VectorDenseComplex, _Mol..::..MATRIX_OPERATION)
行列 A を m × n の行列とするとき(A は最大階数行列) A に関する線形最小二乗問題、minimize || b - A x ||2 を QR(優決定:m>nの場合) または LQ(劣決定:m<nの場合) 因子分解を使用して解きます。 A の階数(Rank)は優決定なら n 、劣決定なら m が仮定されます(転置操作が実行される場合は逆になります)。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveKnownRank(MatrixDenseGeneralDouble, MatrixDenseGeneralDouble, _Mol..::..MATRIX_OPERATION)
行列 A を m × n の行列とするとき(A は最大階数行列) A に関する線形最小二乗問題、minimize || b - A x ||2 を QR(優決定:m>nの場合) または LQ(劣決定:m<nの場合) 因子分解を使用して解きます。 A の階数(Rank)は優決定なら n 、劣決定なら m が仮定されます(転置操作が実行される場合は逆になります)。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveKnownRank(MatrixDenseGeneralDouble, VectorDenseDouble, _Mol..::..MATRIX_OPERATION)
行列 A を m × n の行列とするとき(A は最大階数行列) A に関する線形最小二乗問題、minimize || b - A x ||2 を QR(優決定:m>nの場合) または LQ(劣決定:m<nの場合) 因子分解を使用して解きます。 A の階数(Rank)は優決定なら n 、劣決定なら m が仮定されます(転置操作が実行される場合は逆になります)。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveLSE(VectorDenseComplex, MatrixDenseGeneralComplex, MatrixDenseGeneralComplex, VectorDenseComplex, VectorDenseComplex)
以下のような均衡制約を持つ線形最小二乗 (LSE) 問題を解きます。
minimize || c - A x ||2 ただ し、B x = d
A は m × n の行列、B は p × n の行列、c は与えられたm- ベクトル、d は与えられたp- ベクトル。 さらに、p ≤ n ≤ m+p、で Rrank(B) = p、rank(A|B) = n を仮定します(A|B は A と B を上下に並べた行列とします)。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveLSE(VectorDenseDouble, MatrixDenseGeneralDouble, MatrixDenseGeneralDouble, VectorDenseDouble, VectorDenseDouble)
以下のような均衡制約を持つ線形最小二乗 (LSE) 問題を解きます。
minimize || c - A x ||2 ただ し、B x = d
A は m × n の行列、B は p × n の行列、c は与えられたm- ベクトル、d は与えられたp- ベクトル。 さらに、p ≤ n ≤ m+p、で Rank(B) = p、rank(A|B) = n を仮定します(A|B は A と B を上下に並べた行列とします)。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD(MatrixDenseGeneralComplex, MatrixDenseGeneralComplex)
線形最小二乗問題、minimize || B - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD(MatrixDenseGeneralComplex, VectorDenseComplex)
線形最小二乗問題、minimize || b - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD(MatrixDenseGeneralDouble, MatrixDenseGeneralDouble)
線形最小二乗問題、minimize || B - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD(MatrixDenseGeneralDouble, VectorDenseDouble)
線形最小二乗問題、minimize || b - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD(MatrixDenseGeneralComplex, MatrixDenseGeneralComplex, Double)
線形最小二乗問題、minimize || B - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD(MatrixDenseGeneralComplex, VectorDenseComplex, Double)
線形最小二乗問題、minimize || b - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD(MatrixDenseGeneralDouble, MatrixDenseGeneralDouble, Double)
線形最小二乗問題、minimize || B - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD(MatrixDenseGeneralDouble, VectorDenseDouble, Double)
線形最小二乗問題、minimize || b - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD2(MatrixDenseGeneralComplex, MatrixDenseGeneralComplex)
線形最小二乗問題、minimize || B - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) と分割統治法を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD2(MatrixDenseGeneralComplex, VectorDenseComplex)
線形最小二乗問題、minimize || b - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) と分割統治法を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD2(MatrixDenseGeneralDouble, MatrixDenseGeneralDouble)
線形最小二乗問題、minimize || B - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) と分割統治法を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD2(MatrixDenseGeneralDouble, VectorDenseDouble)
線形最小二乗問題、minimize || b - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) と分割統治法を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD2(MatrixDenseGeneralComplex, MatrixDenseGeneralComplex, Double)
線形最小二乗問題、minimize || B - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) と分割統治法を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD2(MatrixDenseGeneralComplex, VectorDenseComplex, Double)
線形最小二乗問題、minimize || b - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) と分割統治法を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD2(MatrixDenseGeneralDouble, MatrixDenseGeneralDouble, Double)
線形最小二乗問題、minimize || B - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) と分割統治法を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveSVD2(MatrixDenseGeneralDouble, VectorDenseDouble, Double)
線形最小二乗問題、minimize || b - A x ||2 の最小ノルム解を、 A の特異値分解 (SVD) と分割統治法を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveUnknownRank(MatrixDenseGeneralComplex, MatrixDenseGeneralComplex)
線形最小二乗問題、minimize || B - A x ||2 の最小ノルム解を、 A の完全直交因子分解 (COF) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveUnknownRank(MatrixDenseGeneralComplex, VectorDenseComplex)
線形最小二乗問題、minimize || b - A x ||2 の最小ノルム解を、 A の完全直交因子分解 (COF) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveUnknownRank(MatrixDenseGeneralDouble, MatrixDenseGeneralDouble)
線形最小二乗問題、minimize || B - A x ||2 の最小ノルム解を、 A の完全直交因子分解 (COF) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveUnknownRank(MatrixDenseGeneralDouble, VectorDenseDouble)
線形最小二乗問題、minimize || b - A x ||2 の最小ノルム解を、 A の完全直交因子分解 (COF) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveUnknownRank(MatrixDenseGeneralComplex, MatrixDenseGeneralComplex, Double)
線形最小二乗問題、minimize || B - A x ||2 の最小ノルム解を、 A の完全直交因子分解 (COF) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveUnknownRank(MatrixDenseGeneralComplex, VectorDenseComplex, Double)
線形最小二乗問題、minimize || b - A x ||2 の最小ノルム解を、 A の完全直交因子分解 (COF) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveUnknownRank(MatrixDenseGeneralDouble, MatrixDenseGeneralDouble, Double)
線形最小二乗問題、minimize || B - A x ||2 の最小ノルム解を、 A の完全直交因子分解 (COF) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。
Public methodStatic memberSolveUnknownRank(MatrixDenseGeneralDouble, VectorDenseDouble, Double)
線形最小二乗問題、minimize || b - A x ||2 の最小ノルム解を、 A の完全直交因子分解 (COF) を使用して求めます。 A は m × n の行列で、階数不足でもかまいません(Rank<min(m,n))。 この計算では A の特異値は計算しないので、SingularValuesは null となります。
指定した全ての行列・ベクトルは内容が書き換えられます(必要なら呼び出し前に Clone() してください)。

フィールド

  名前説明
Public fieldTag
ユーザが自由に設定・使用できるオブジェクトです。 Mol が内部で参照することはありません。
(Inherited from _Mol.)

プロパティ

  名前説明
Public propertyMolHandle
Mol.C++.dll(ネイティブDLL)と Mol.Net.Dll(.Net 用マネージドDLL)間の情報を管理するハンドル。 NativeDll クラスでユーザ作成のネイティブDLLを作成する場合等に利用できます。
(Inherited from _Mol.)
Public propertyMolType
Molオブジェクトの属性(_Mol..::..MOL_TYPE)。
(Inherited from _Mol.)
Public propertyRank
行列 A の階数です。
Public propertySingularValues
行列 A の特異値ベクトルです。 最小二乗計算の途中で計算されます。解法によっては計算されない場合があり、その時は null になります。
Public propertyUserType
Molオブジェクトの追加属性(_Mol..::..USER_TYPE)。 例えば一般行列でも要素が対称なら、その属性を積極的にセットすることでソルバーは最適な手法を選択することができます。 当然ながら、間違った設定は間違った値や計算不能な状態に陥りますので注意して設定してください。
(Inherited from _Mol.)

参照