在C#中使用mathnet,需要利用using引入相关类
矩阵运算的相关类:
using MathNet.Numerics.LinearAlgebra.Double;
using MathNet.Numerics.LinearAlgebra.Generic;
- 矩阵定义和初始化
常用矩阵初始化函数:
var matrix2 = new DenseMatrix(3); //3维方阵
var matrix3 = new DenseMatrix(2, 3); //2×3矩阵
var matrix4 = new DenseMatrix(2, 3, 3.0); //2×3矩阵,所有值为3.0
var matrixI = DenseMatrix.Identity(5); //5维单位矩阵
矩阵操作和C#中的数组操作一致,matrix2[m,n]取其m行n列上的值或对其赋值
MathNet中重载了.ToString()函数,可以直接用matrix.ToString()输出整个数组,大大方便了调试和保存数据。
也可以利用C#中的double[,]直接创建
double[,] d_matrix = new double[2,3];
var matrix2 = new DenseMatrix(d_matrix); //2×3矩阵
小记:我曾做过测试,将double