以编程方式执行Matrix <double>实例化(Math.Net C#Library)

时间:2017-11-05 17:50:15

标签: c# matrix mathnet

我知道这听起来像是一个非常初学的问题,但是我使用这个C#库,甚至在阅读了参考文献之后,我也无法弄清楚如何编写以下代码。< / p>

Matrix类文档位于https://numerics.mathdotnet.com/api/MathNet.Numerics.LinearAlgebra/Matrix%601.htm

我尝试做类似的事情,但我无法弄清楚

Matrix<double> matrix = new Matrix<double>();
matrix.Add(new List<double> list1());
matrix.Add(new List<double> list2());

这是我到目前为止创建Matrix对象所做的,我尝试做的是创建任意数量的Matrix而不必在我的代码中执行固定数量。

var matrixArrayBuy = CreateMatrix.DenseOfColumnArrays(listMRInfoBuy.ElementAt(0).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(1).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(2).ListValuesBuy.ToArray(),
                            listMRInfoBuy.ElementAt(3).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(4).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(5).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(6).ListValuesBuy.ToArray(),
                            listMRInfoBuy.ElementAt(7).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(8).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(9).ListValuesBuy.ToArray(), listMRInfoBuy.ElementAt(10).ListValuesBuy.ToArray(),
                            listMRInfoBuy.ElementAt(11).ListValuesBuy.ToArray());

1 个答案:

答案 0 :(得分:2)

不确定您的listMRInfoBuy变量是什么,但可以尝试类似:

    List<double[]> matrixParams = new List<double[]>();

    foreach (var item in listMRInfoBuy.Elements)
    {
        matrixParams.Add(item.ListValuesBuy.ToArray());
    }


    var matrixArrayBuy = CreateMatrix.DenseOfColumnArrays(matrixParams);