问题标签 [numerical-methods]

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 投票
3 回答
6747 浏览

r - 如何评估 R 中样条函数的导数?

R 可以使用 spline 库中的 splinefun() 生成样条函数。但是,我需要评估这个函数的一阶和二阶导数。有没有办法做到这一点?

例如

如何评估 x 向量的 f'(x)?

0 投票
1 回答
4028 浏览

c - 将数值二维数组保存到图像

最近我一直在用 C 语言进行一些数值方法编程。对于错误修复和故障排除,很高兴能够对正在发生的事情进行一些可视化表示。到目前为止,我一直在将数组区域输出到标准输出,但这并没有提供那么多信息。我也一直在玩gnuplot,但我不能让它只保存图像,而不是坐标系和所有其他东西。

所以我正在寻找一个教程或者一个库来向我展示如何将数组从 c 保存到图像中,能够保存到彩色图像会特别好。从数值到颜色的转换不是问题,我可以计算出来。如果有人能向我指出该领域中一些有用的库的方向,那就太好了。

此致

0 投票
1 回答
1598 浏览

python - LDA 变换的良好数值解

我正在为我正在处理的应用程序计算 LDA(线性判别分析)变换,并且我一直在关注这些注释(从第 36 页开始,尤其是第 47 页的绿色幻灯片)。

我在 Python 中执行此操作(使用 numpy 和 scipy),这就是我想出的:

我知道这个实现是正确的,因为我已经将它与其他实现进行了比较。我关心的是这在数字意义上是否是好的解决方案。在将我的解决方案与其他解决方案进行比较时,它们仅匹配到小数点后 6 位。有没有更好的方法在数字上做到这一点?

0 投票
0 回答
814 浏览

math - 闭式立方根查找器实现

我正在寻找一个非迭代函数来找到三次多项式的实根。所以,这样的实现。我当然可以自己写,但如果有人已经有了实现并且不介意分享它,那将节省我编写它所需的 1-2 小时,但代价是该人需要 30 秒来粘贴它在这里,那就太好了。

谢谢你。

0 投票
0 回答
824 浏览

c++ - C++ 的 numpy 替代方案:线性代数/FFT/数字好东西?

我使用 python + numpy 已经有一段时间了,并且对它很熟悉(并且很着迷)。现在,我需要使用 C++ 进行一些计算,并且正在寻找一个不错的库来快速轻松地进行数值计算(TM:P)。我一直在环顾四周,发现了几个选择:

  • GSL
  • 本征
  • NT2
  • 提升 uBlast

由于理解和使用新库是一项艰巨的任务,我想知道 SO 人员是否可以对此发表评论。现在我需要基本的 FFT 和 SVD 分解,但是像数组切片、函数矢量化等好东西将不胜感激。

在这方面你有什么想法?

0 投票
5 回答
6169 浏览

math - 有效地确定多项式是否在区间 [0,T] 中有根

我有非平凡次数(4+)的多项式,需要稳健有效地确定它们是否在区间 [0,T] 中有根。根的精确位置或数量与我无关,我只需要知道是否至少有一个。

现在我正在使用区间算术作为快速检查,看看我是否可以证明不存在根。如果不能,我将使用 Jenkins-Traub 来求解所有多项式根。这显然是低效的,因为它正在检查所有真正的根并找到它们的确切位置,而我最终不需要的信息。

我应该使用标准算法吗?如果没有,在对所有根进行完整的 Jenkins-Traub 求解之前,我还能做其他有效的检查吗?

例如,我可以做的一种优化是检查我的多项式 f(t) 在 0 和 T 处是否具有相同的符号。如果不是,则区间中显然有一个根。如果是这样,我可以求解 f'(t) 的根,并在区间 [0,T] 内计算 f' 的所有根处的 f。当且仅当所有这些评估与 f(0) 和 f(T) 具有相同的符号时,f(t) 在该区间中没有根。这将我必须求根的多项式的次数减少了一个。不是一个巨大的优化,但也许总比没有好。

0 投票
12 回答
4763 浏览

java - 正如 Java 之于 Scala,C++ 之于……?

尽管 C++0x 是对 C++ 的相当大的改进(类型推断、匿名函数等),但我不得不说 Scala 似乎更好。问题是 Scala 只在 JVM 上运行,尽管它似乎也可以在 C# 之上运行。

理想情况下,我想要一种像 Scala 一样好的语言,但运行在“C++ 之上”——使用标准库,轻松链接 C/C++ 目标文件,整个交易。我做了很多基于完善的 C/C++ 库(快速且可靠)构建的数值编程,这不是我可以放弃的。

有人知道这种语言吗?

更新:

我正在寻找的功能是:

  • 与 C/C++ 库无缝集成,就像 Scala 可以访问 Java 库一样,无需生成/维护绑定

  • 一个强大的类型系统,具有精心设计的类型推断系统,使我不必编写冗长和冗余的类型注释

  • 语言内置的功能和 OO 特性,支持其自己的库,而不是仅依赖于标准 C/C++ 库。

看起来现在正在进行的许多 clang/LLVM 工作可能会促进这些工作,但很高兴发现类似的事情已经在进行中。

0 投票
11 回答
141751 浏览

tsql - 检查 varchar 是否为数字 (TSQL)

有没有一种简单的方法可以确定 varchar 是否为数字?

例子:

abc123 --> 没有数字

123 --> 是的,它是一个数字

谢谢 :)

0 投票
4 回答
5309 浏览

php - 如何在 PHP 中获取浮点数的二进制表示?

有没有办法在 PHP 中获取浮点数的二进制表示?类似于 Java 的Double.doubleToRawLongBits()

给定一个正浮点数,我想获得小于该数字的最大可表示浮点数。在 Java 中,我可以这样做:

但是我在 PHP 中没有看到任何类似的东西。

0 投票
1 回答
12294 浏览

algorithm - 在三角形中采样随机点

假设您有一个任意三角形,其顶点A为 、BC这篇论文(第 4.2 节)说,您可以通过以下顶点的凸组合P从三角形内均匀地生成一个随机点 :ABC

其中r1r2是从 中统一绘制的[0, 1]sqrt是平方根函数。

您如何证明在三角形内均匀分布ABC的采样点是合理的?

编辑

正如在 mathoverflow 问题的评论中指出的那样, Graphical Gems 讨论了这个算法