问题标签 [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 投票
1 回答
271 浏览

.net - F#:对于 MathNet Numerics,未定义值或构造函数矩阵

我正在尝试学习 F#,并按照以下说明创建矩阵:http: //numerics.mathdotnet.com/

然后我得到这个错误:未定义值或构造函数矩阵

0 投票
1 回答
6360 浏览

c# - 使 Math.NET 傅里叶工作

我试图找到一个解决方案已经有几个星期了,我真的已经阅读了与这个主题相关的所有线程,所以我真的希望有人能帮助我解决这个问题。

我想要做的是使用波形文件作为输入,对其进行傅立叶变换并将这些值与另一个文件进行比较并获得差异。

我一直在努力的挑战是让傅里叶变换发挥作用。

我没有给我合理的结果,而是只得到 NaN 值。

我有以下代码:

4096 通常被一个更大的数字代替,它仍然是 2 的幂,但它甚至不能与那个数字一起使用。

更详细的描述:我设置了 4096 个值的长度,因为这是两倍,这个长度仅用于测试目的,因此这比使用数百万个值的原始声音文件检查要快一点; ) 所以这只是这样,只要算法没有被证明有效。这也是奇怪的for循环的原因。即使是艰难的 Math.Net 也使用 Bluestein 的算法进行计算,无论如何都要尝试使用两个数组的因子,因为即使他们使用任何其他算法 atm,它们也应该可以工作。

由于浮点十进制转换,尝试使用该 try-catch 获取错误消息,但它没有引发任何错误。

我现在的问题是,我在那个 fft 中发送了 4096 个复数,它们都有 Y = 0,但是 X 取决于音频文件(在另一个线程中读取音频 fft 不需要 Y 值,所以你应将它们设置为 0)。所有 X 值都是正常的浮点数,没有 NaN。但是,FFT 仍然返回一个充满 NaN 的数组。

我首先尝试转换为 System.Numerics.Complex 隐式,但没有成功,所以我使用 tmp 变量来构造。

编辑:我最终阅读了更多关于 FFT 算法的文章。现在我仍然让我的声音值浮动并将它们转换为复杂数组。我检查了所有转换步骤的一致性,这在那个区域很好。所以我的问题是我是否真的只需要使用它

或者如果我需要在此之前在 Math.NET 中进行干净的 FFT

0 投票
1 回答
99 浏览

f# - MathNet Numerics 需要 FsUnit.CustomMatchers 才能成功构建。用完了选项

在尝试MathNet NumericsGitHub构建最新版本时Visual Studio Community 15MathNet.Numerics.sln需要安装用于单元测试的 DLL。

因此,在 Visual Studio 中使用 NuGet 可以成功安装以下内容。

剩下的唯一DLL是

我无法找到。

提示..\..\packages\test\FsUnit\lib\FsUnit.CustomMatchers.dll,但下没有test目录packages

我该如何正确解决这个问题?
我需要 DLL,如果需要,它在哪里?
我需要手动修复代码吗?
我需要更新提示吗?

TLDR;

如果我在没有丢失 DLL 的情况下构建,则基本错误是:

可以通过安装解决

并添加

签名为

但这不正确,因为它没有安装正确的 DLL ( Microsoft.VisualStudio.QualityTools.UnitTestFramework.dllvs FsUnit.CustomMatchers),并且根据过去的 F# 单元测试经验,我知道这样做可能会导致误报的字幕。

编辑:

成功安装后,我想知道这是在哪里记录的。

请参阅:构建 Math.NET 数值

unit tests包括文档和 api 参考、NuGet 和 Zip 包在内的全自动构建使用 FAKE。

0 投票
1 回答
369 浏览

c# - 如何在 MathNet.Symbolics Evaluate 函数中设置双精度?

我有一个Dictionary<string, double> values价值观,精确度对我来说很重要。我有一个中缀可以解析的字符串公式。我想知道如何做这样的事情:

获得双精度结果?

0 投票
1 回答
143 浏览

c# - 用于 c# 的 MathNet.Symbolics 中的 MathML 在哪里?

这里是F#;这是在 UnitTests 中。所以它至少应该在 F# 发行版中,因此在 .net dll 中。然而它并没有在Assembly Explorer中显示出来 在此处输入图像描述

如何在 CSharp 中使用 MathNet.Symbolics MathML 类?

0 投票
1 回答
771 浏览

matrix - F# 函数采用太多参数或在不期望的上下文中使用

我正在尝试实现成本函数,我目前有

出于某种原因,在第一个 * 说“此函数需要太多参数,或者在不期望函数的上下文中使用”之后,我得到了一个错误。

但是,当我这样做时

它工作得很好,它说val J:float这就是我所期望的。但是只要添加第二部分,这是(1.0/(2.0*m))我得到错误的部分。我对所有内容都有括号,所以我看不出它是如何应用一些部分功能或类似的东西。我确定这很愚蠢,但我似乎无法弄清楚。

0 投票
1 回答
363 浏览

c# - 在 MathNet.Numerics 命名空间中查询向量的长度

有没有办法在 MathNet.Numerics 命名空间中找到向量数据结构的向量(甚至矩阵)的维度。类似的东西

0 投票
1 回答
1232 浏览

c# - Math.Net 数值库转置不起作用

所以我想转置一个我定义的矩阵

所以我得到的结果是一个非常奇怪的矩阵,它不是转置。我认为这是因为矩阵被定义为 DenseColumnMajor,但是我该如何更改呢?

所以我有一个 3 x 2 矩阵,例如:

我想要的结果是:

0 投票
2 回答
866 浏览

c# - 二维数组 - 需要一个嵌套数组初始值设定项。C#

我使用 MathNet.Numerics 包进行矩阵计算。

对于矩阵声明和初始化,预期的代码如下:

在我自己的代码中,我有三个一维数组——xPointsSquared、yPoints、一个。

尝试以以下方式初始化矩阵时出现错误-“需要嵌套数组初始化程序”,

0 投票
0 回答
109 浏览

c# - MathNet-矩阵将错误系数返回到多项式最佳拟合-C#

我使用 MathNet 矩阵计算来计算二次多项式的系数。

然而,由此产生的系数并不能给出准确的曲线。它创建了一条沿着数据点的散点图无处延伸的线。

我怀疑这是因为函数使用双精度而不是十进制。谁能帮我解决这个问题?