Mol(Math Object Library) fot .Net
A を (m × n) の一般行列として、A の特異値分解 (SVD) を実行します。
A の特異値分解は A = UΣVH の形に分解することです(VHは行列 V の複素共役転置)。 ここで、U (m × m) と V (n × n) は、ユニタリ行列 (A が複素行列の場合) または直交行列 (Aが実行列の場合)です。 Σ は、次に示す対角成分σi を持つm × n の対角行列(対角成分のみの帯行列でAが複素数の場合は対角要素の虚数部は全てゼロ)になります。 σ1 ≥ σ2 ≥ ... ≥ σmin(m, n) ≥ 0 ここで σi は、 A の特異値となります。また、非ゼロの特異値の個数は A の階数(Rank)となります。 さらに A の条件数(Condition number)は 最大特異値/最小特異値 で表現可能です。 行列 U と V の先頭から min(m, n) の列は、それぞれ、A の左特異ベクトルと右特異ベクトルとなります。 対応する特異値と特異ベクトルは、Avi = σiui かつ AHui = σivi を満たします。ここで ui と vi は、 それぞれ、U と V の i 番目の成分です。
※現時点の特異値分解計算では疎な行列はサポートしていません。

名前空間: Mol
アッセンブリー: Mol.Net (in Mol.Net.dll)

構文

C#
public sealed class SvdSolver : _Mol
Visual Basic
Public NotInheritable Class SvdSolver
	Inherits _Mol
Visual C++
public ref class SvdSolver sealed : public _Mol
[<SealedAttribute>]
type SvdSolver =  
    class
        inherit _Mol
    end

派生階層

System..::..Object
  Mol..::.._Mol
    Mol..::..SvdSolver

参照