let v = [| 5.0; 2.0; 3.0; 11.0 |]
let m2 = new DenseMatrix(2, 2, v)
let invm = m2.Inverse()
let invt = m2.Transpose()
ここm2
に がありMatrix
ます。ただし、invm
とinvt
ですGeneric.Matrix<float>
。なぜこの変換?
let v = [| 5.0; 2.0; 3.0; 11.0 |]
let m2 = new DenseMatrix(2, 2, v)
let invm = m2.Inverse()
let invt = m2.Transpose()
ここm2
に がありMatrix
ます。ただし、invm
とinvt
ですGeneric.Matrix<float>
。なぜこの変換?
すぐに、 と のDenseMatrix.Inverse()
シグネチャDenseMatrix.Transpose()
は
DenseMatrix.Inverse: unit -> Matrix<float>
DenseMatrix.Transpose: unit -> Matrix<float>
Matrix
は、任意のマトリックスにInverse
およびメソッドの共通の実装を提供する抽象クラスです。Transpose
具体的な派生サブクラスDenseMatrix
、SparseMatrix
、およびDiagonalMatrix
は、各ユース ケースに応じて行列データの格納方法を最適化するだけです。
あなたはアップキャストすることができます
let m2 = new DenseMatrix(2, 2, v) :> Matrix<float>
マトリックスの作成後にジェネリック型で操作します。詳細については、関連トピックMatrix vs DenseMatrixを確認してください。