0

我正在编写一个代码,我需要表示少量矩阵(大约 10 个)并对它们进行一些操作(例如求逆、转置等)。我的一位同事推荐使用 Math.Net Iridium 库。提到的页面说该项目已停止并与之合并MathNeh.Numerics,在此处找到。

我设法成功安装了软件包。但是现在,我正在努力正确使用这些操作。

总而言之,我要问的是:如何将数据放入矩阵并使用MathNet.Numerics例如,如何将值添加到给定矩阵 m1 中的特定行 x 列 y。它是否允许我们访问特定的索引?

还有一点需要注意的是,矩阵的列数和行数总是相同的,但是这个数字只在运行时才知道。

我试图在谷歌上搜索教程,找到了这个,但我没有得到我需要知道的东西。任何帮助表示赞赏。

-- PS:到目前为止我使用的方法是创建嵌套列表来表示每个矩阵,并使用 for 循环来填充它。我相信当转置/反转/乘法的时间到来时,我会很难过。

4

1 回答 1

1

答案在问题本身链接的文档中。http://numerics.mathdotnet.com/Matrix.html#Manipulating-Matrices-and-Vectors

给定的示例是:

var m = Matrix<double>.Build.Dense(3,4,(i,j) => 10*i + j);
m[0,0]; // 0   (row 0, column 0)
m[2,0]; // 20 (row 2, column 0)
m[0,2]; // 2   (row 0, column 2)
m[0,2] = -1.0;
m[0,2]; // -1
于 2015-06-17T15:42:33.187 回答