问题标签 [mathnet-numerics]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2252 浏览

c# - 我可以将 Math.NET 运行时与 .NET 2.0 或 .NET 3.5 应用程序一起使用吗?

我刚刚下载了最新版本的 Math.NET,但在使用时遇到了一些麻烦。

难道这个库是为了在 .NET 4.0 项目上运行?

更新:

编译后的 dll 位于“Net40”文件夹中,这是否意味着我无法在 2.0 项目中引用它?

尝试了这段代码,我得到了一个TypeLoadException(VS2008,目标框架 3.5)

0 投票
2 回答
10408 浏览

c# - 使用 Math.Net Numerics 和 C# 的叉积

我有两个向量MathNet.Numerics.LinearAlgebra.Generic.Vector<double>,如下所示:

我基本上想对它们进行交叉乘积,但是找不到官方功能。我知道叉积是一个非常简单的函数,我可以自己编写,但我想使用 API 的函数。

以下两个都对我有用:(在 API 中找不到这样的函数。)

我找到了这个,但是当我尝试编写它时找不到该函数:API Reference

0 投票
2 回答
1598 浏览

c# - c# Mathnet Numerics -- 获取非零稀疏矩阵元素的索引

我想使用 MathNet.numerics 为 csharp 创建一个自定义优化矩阵运算(基于我对我正在使用的稀疏矩阵的了解的智能 kronecker 产品)。

是否有获取稀疏矩阵的非零元素的访问器?(或索引?或其迭代器?或 CSR 表示?)

0 投票
2 回答
8499 浏览

c# - Math.Net 数值中的多重回归

我使用这样的 math.net 回归方法实现了简单的单回归:

问题是:我可以用这种方法应用多重回归?所以,我也有zdata数组,我想用它来进行多元回归。

0 投票
1 回答
2445 浏览

c# - 使用 math.net 进行多重回归

您好,我正在尝试使用 math.net 进行多重回归,但我有点困惑。

我想我不懂 Math.Net,对此有任何帮助都会很棒。基本上我有多个 x 和一个 y 并且需要从中获取系数数据。

0 投票
1 回答
913 浏览

mathnet-numerics - Math.NET Numerics 中的 QR 分解

Math.NET Numerics 中如何实现 QR 分解?

是使用 Gram-Schimdt 还是使用 Givens 旋转?我感觉它是用 Gram-Schimdt 实现的,但我不确定。我找不到实现。

就结果而言,使用 Gram-Schimdt 的 QR 分解与使用 Givens 旋转的不同吗?

我使用Givens旋转矩阵生成(手动)QR分解,然后使用MathNet.Numerics.LinearAlgebra.Generic.Factorization.QRMethod(我相信它实现了Gram-Schimdt)生成QR分解,结果略有不同。数字之间的差异大约为 1E-16(不是那么大),并且某些行具有相反的符号 (*-1)(这是真正的问题 - 我认为这是因为 MathNet.Numerics 实现了不同的 QR 算法)。

你能推荐一些使用 Givens 旋转执行 QR 分解的库吗?

0 投票
1 回答
1240 浏览

c# - 泛型类型层次结构的 DebuggerTypeProxy

我正在尝试为 Math.NET Numerics 中的矩阵和向量编写调试器类型代理/代理,因此调试器会显示更多有用的信息(也在 F# FSI 中)。类型层次结构如下:

  • Generic.Matrix<T>
  • Double.Matrix : Generic.Matrix<double>
  • Double.DenseMatrix : Double.Matrix

什么有效

具有封闭的泛型类型的非泛型代理。Matrix<double>如果不是构造函数接受 aDouble.Matrix或 a ,它也以相同的方式工作Double.DenseMatrix

然后,用以下内容装饰 Double.DenseMatrix:

我想做什么

我宁愿不必为每种类型实现单独的代理,所以让我们让它通用:

然后,用以下内容装饰 Double.DenseMatrix:

或者也许关闭:

和/或如果需要也可以将该属性添加到基类中。

这些都不起作用,例如在调试单元测试时,即使文档说它应该在使用开放的泛型类型(即MatrixSummary<>)声明属性时起作用。毕竟它也适用于List<T>等。

有任何想法吗?

有关的:

0 投票
1 回答
3897 浏览

c# - C# 可以使来自 Math.NET Numerics 的 LinearRegression 代码更快吗?

我需要有效地进行多元线性回归。我正在尝试使用 Math.NET Numerics 包,但它似乎很慢 - 也许这是我编写它的方式?对于这个例子,我只有简单的(1 x 值)回归。

我有这个片段:

这比这个纯 C# 运行大约慢 20 倍:

另外,如果 Math.NET 是问题所在,那么如果有人知道为多个 X 更改我的纯代码的简单方法,我将不胜感激

0 投票
1 回答
1210 浏览

c# - 获取密集矩阵元素的最小值和最大值

使用MathNet.numericsC# ,我创建了密集的双精度矩阵。

我希望找到矩阵的最小和最大元素值。

是否有获取密集矩阵元素的最大值/最小值的访问器?

其实我这样做

0 投票
1 回答
817 浏览

c# - MathNet.Numerics operation return types

I'm using MathsNet.Numerics lib. I want to do operations on Complex Vectors i.e. I'm
using MathNet.Numerics.LinearAlgebra.Complex
which gives me Vector as Complex version of MathNet.Numerics.LinearAlgebra.Generic.Vector<T>
Operatations on Vectors however don't return objects assignable to Vector:

error CS0266: Cannot implicitly convert type 'MathNet.Numerics.LinearAlgebra.Generic.Vector<System.Numerics.Complex>' to 'MathNet.Numerics.LinearAlgebra.Complex.Vector'

Why are the return values of methods that operate on Vectors (e.g. Conjugate and PointwiseMultiply) not assignable to Vectors?