文章目录
安装
MathNet.Numerics中提供了线性代数、微积分、特殊函数、概率论、随机函数、插值、最优化等一系列功能,是.net技术中首选的数值计算包。
其中,线性代数包LinearAlgebra包提供了向量、矩阵等数据结构,这些是数值计算的前提,故而相比于其他包更加基础。
下面用VS新建一个控制台项目,并启用顶级语句。点击工具->NuGet包管理器->管理解决方案的NuGet程序包,进入浏览选项卡,搜索MathNet.Numerics,选中安装。
创建和显示矩阵
在使用命名空间之后,可通过Matrix.Build来创建矩阵,矩阵中重写了ToString方法,所以可直接使用$字符串,示例如下
cs
using MathNet.Numerics.LinearAlgebra;
Matrix<double> m = Matrix<double>.Build.Random(3,4);
Console.WriteLine($"{m}");
/* 输出结果如下
DenseMatrix 3x4-Double
-1.34532 0.209099 1.64422 0.13664
1.15024 -0.751815 0.242772 -1.90048
0.0985362 -1.02023 0.727527 0.137225
*/
即创建的矩阵为
− 1.34532 0.209099 1.64422 0.13664 1.15024 − 0.751815 0.242772 − 1.90048 0.0985362 − 1.02023 0.727527 0.137225 \] \\begin{bmatrix} -1.34532\& 0.209099\& 1.64422\& 0.13664\\\\ 1.15024\&-0.751815\&0.242772\&-1.90048\\\\ 0.0985362\& -1.02023\&0.727527\&0.137225\\\\ \\end{bmatrix} −1.345321.150240.09853620.209099−0.751815−1.020231.644220.2427720.7275270.13664−1.900480.137225
Matrix.Build是MatrixBuilder对象,后文简称MB,用于生成矩阵,如果需要频繁创建矩阵,则可创建一个矩阵生成器,示例如下
```cs
var MB = Matrix