问题标签 [numerical]
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.
c++ - 任何人都知道一个好的 Windows 常量列表在哪里
我正在尝试将无效值设置为 -1.. 但我不喜欢幻数.. 任何人都知道在哪里可以找到一组公共常量。我在 VS6 (ish) 中工作。
我正在尝试从网络中读取文件,我需要一个错误的文件总大小值,所以我知道我是否得到了有效的信息。0 是有效的大小,所以我不能使用它。
哈珀谢尔比击中了头上的钉子……只是一个小拇指。他提到了win32常量..这正是我在想的..现在找到一个链接:)
math - MATLAB:使用 ODE 求解器?
这是一个非常基本的问题,但这是我第一次使用 MATLAB,我被困住了。我需要使用 3 种不同的数值积分技术来模拟一个简单的系列 RC 网络。我想我了解如何使用 ode 求解器,但我不知道如何输入系统的微分方程。我需要通过 m 文件来完成吗?
它只是一个简单的 RC 电路,形式如下:
初始条件为零。我有 R、C、步长和仿真时间的值,但我不知道如何特别好地使用 MATLAB。
任何帮助深表感谢!
c++ - C/C++ 中的衍生物?
我有一些表达式,例如x^2+y^2
我想用于一些数学计算的表达式。我想做的一件事是取表达式的偏导数。
因此,如果f(x,y) = x^2 + y^2
then 的部分f
相对于x
将是2x
,则相对于的部分y
将是2y
。
我使用有限差分法编写了一个极小的函数,但我遇到了很多浮点精度问题。例如,我最终得到1.99234
而不是2
. 有没有支持符号微分的库?还有其他建议吗?
algorithm - 超几何函数的有效评估
有人对评估超几何函数的算法有经验吗?我会对一般参考资料感兴趣,但我会描述我的特殊问题,以防有人处理过它。
我的具体问题是评估 3F2(a, b, 1; c, d; 1) 形式的函数,其中 a、b、c 和 d 都是正实数且 c+d > a+b+1。有很多特殊情况都有封闭式公式,但据我所知,一般没有这样的公式。以零为中心的幂级数收敛于 1,但非常缓慢;连续系数的比率在极限内变为 1。也许像 Aitken 加速这样的东西会有所帮助?
sql - SQL ORDER 字符数
我有一列数字存储为字符。当我为此列执行 ORDER BY 时,我得到以下信息:
100
131
200
21
30
31000
等
如何以数字方式订购这些字符?我需要转换一些东西还是已经有一个 SQL 命令或函数?
谢谢你。
matlab - 寻找对微分精度持轻松态度的 ODE 积分器/求解器
我有一个(一阶)ODE 系统,计算导数相当昂贵。
然而,在给定的误差范围内,导数的计算成本要低得多,因为导数是从收敛序列计算的,并且边界可以放在丢弃项的最大贡献上,或者通过使用存储在 kd-tree 中的预先计算的范围信息/octree 查找表。
不幸的是,我还没有找到任何可以从中受益的通用 ODE 求解器;他们似乎都只是给你坐标并想要一个准确的结果。(请注意,我不是 ODE 方面的专家;我熟悉 Runge-Kutta、Numerical Recipies 书中的材料、LSODE 和 Gnu 科学图书馆的求解器)。
即对于我见过的所有求解器,您提供了一个derivs
回调函数,接受 at
和一个数组x
,并返回一个返回数组dx/dt
;但理想情况下,我正在寻找一个能提供回调t
、x
s和一系列可接受的错误,并接收dx/dt_min
和dx/dt_max
返回数组的方法,其导数范围保证在所需的精度范围内。(可能有许多同样有用的变体)。
任何考虑到这种事情而设计的求解器的指针,或解决问题的替代方法(我不敢相信我是第一个想要这样的东西的人)将不胜感激。
java - 数值求解非线性方程
我需要在我的 Java 程序中解决非线性最小化(N 个未知数的最小残差平方)问题。解决这些问题的常用方法是Levenberg-Marquardt算法。我有一些问题
有人对可用的不同 LM 实现有经验吗?LM 的风格略有不同,我听说该算法的确切实现对其数值稳定性有重大影响。我的功能表现得非常好,所以这可能不是问题,但我当然想选择一个更好的选择。以下是我发现的一些替代方案:
FPL 统计组的非线性优化 Java 包。这包括经典 Fortran MINPACK 例程的 Java 翻译。
JLAPACK,另一个 Fortran 翻译。
一些 Python 实现。纯 Python 就可以了,因为它可以用 jythonc 编译成 Java。
是否有任何常用的启发式方法来进行 LM 所需的初始猜测?
在我的应用程序中,我需要对解决方案设置一些约束,但幸运的是它们很简单:我只要求解决方案(为了成为物理解决方案)是非负的。稍微负的解决方案是数据测量不准确的结果,显然应该为零。我正在考虑使用“常规”LM,但会进行迭代,以便如果某些未知数变为负数,我将其设置为零并从中解决其余的问题。真正的数学家可能会嘲笑我,但你认为这可行吗?
感谢您的任何意见!
更新:这不是火箭科学,要解决的参数数量(N)最多为 5 个,数据集几乎不足以解决问题,所以我相信 Java 足够有效地解决这个问题。而且我相信这个问题已经被聪明的应用数学家解决了无数次,所以我只是在寻找一些现成的解决方案,而不是自己做饭。例如,如果它是纯 Python,Scipy.optimize.minpack.leastsq 可能会很好。
physics - 如何与量子谐振子波函数进行数值积分?
如何对无限范围内的一维积分进行数值积分(使用什么数值方法,以及使用什么技巧),其中被积函数中的一个或多个函数是一维量子谐振子波函数。除其他外,我想在谐振子基础上计算某些函数的矩阵元素:
phi n (x) = N n H n (x) exp(-x 2 /2)
其中 H n (x) 是Hermite 多项式V m,n = \int_{-infinity}^{infinity} phi m (x) V(x) phi n (x) dx
在存在宽度不同的量子谐波波函数的情况下也是如此。
问题是波函数 phi n (x) 具有振荡行为,这对于较大的n来说是个问题,并且来自 GSL(GNU 科学图书馆)的自适应 Gauss-Kronrod 正交等算法需要很长时间来计算,并且误差很大。
numpy - 有没有办法降低 scipy/numpy 精度以减少内存消耗?
在我的 64 位 Debian/Lenny 系统(4GByte RAM + 4GByte 交换分区)上,我可以成功地做到:
但是 f 是 anp.complex128
的内存消耗是令人震惊的,我不能对结果做更多的事情(例如调制系数然后f=ifftn(f)
)而没有MemoryError
回溯。
与其安装更多的 RAM 和/或扩展我的交换分区,是否有某种方法可以控制 scipy/numpy “默认精度”并让它计算一个 complex64 数组?
我知道我可以在之后使用f=array(f,dtype=np.complex64)
; 我希望它实际上以 32 位精度和一半的内存进行 FFT 工作。
sorting - 按字母顺序对数字数据进行排序
在任何情况下按字母顺序对数字数据进行排序很有用?例如
当按升序排序时,给出: