问题标签 [numerical-computing]
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.
julia - 如何显示二阶数值微分的截断误差是一阶数值微分的平方
我试图证明二阶数值微分的截断误差确实比一阶数值微分给了我们双倍的精度(考虑到机器误差/舍入误差eps()
)
这是我在 Julia 中的代码:
如果我减去(这里我使用加法,因为实际的泰勒展开式表明舍入误差和截断误差在它们前面都有一个负号)round_off_err_f
项,这应该会给我正确的截断误差。
有关分析推导/证明,请参见: https ://www.uio.no/studier/emner/matnat/math/MAT-INF1100/h10/kompendiet/kap11.pdf http://www2.math.umd.edu/~dlevy /classes/amsc466/lecture-notes/differentiation-chap.pdf
但结果表明:
在哪里:
second_order_truncation_err_f()
应该在1e-16
而不是的顺序左右1e-8
,我不知道为什么这不起作用。
floating-point - 正确舍入的双精度除法
我正在使用以下算法进行双精度除法,并尝试在浮点的软件仿真中使其正确舍入。令a为被除数,b为除数。
所有操作都在 Q2.62 中执行。
b/2是b的有效位,添加了隐式位,并右移了一位。对于接下来的内容,当写成a或b时,它是指a或b的有效位加上隐含的位。
近似为0x17504f333f9de6
(在Q2.620x5D413CCCFE779800
中)。
倒数r有 6 次这样的迭代。商q是通过将r乘以 a (的有效数)来计算的。
最后的四舍五入是:
除了以下两种情况外,这可以正常工作:a)结果是次正规的或 b)a和b都是次正规的。在这些情况下,它没有正确四舍五入,结果偏移 1 位(与 x86 结果相比)。(数字a和b被归一化,当a或b被归一化时,指数相应地缩放。)
对于这些情况,我还能做些什么来正确舍入它?
在我看来,精度在第 x5 步丢失了。由于在第 x4 步,倒数近似为 ~54 位,它适合 64 位变量。在步骤 x5 中,倒数近似为 ~108 位。所以在第 x5 步,倒数的全宽不适合 64 位。我感觉当我将乘法后的 128 位截断为 64 位时,我没有正确考虑到这一点。
c++ - MPI_Reduce 是否也做 MPI_Barrier 的工作?
由于 MPI_Reduce 和 MPI_Barrier 是昂贵的命令,所以我必须减少线程之间的一些通信。我知道 MPI_Reduce 和 MPI_Barrier 的主要工作。有时我观察到 MPI_Reduce 正在减少一个线程中的所有值,并且它也在做 MPI_Barrier 的工作。如果我必须使用 mpi_Reduce 那么我可以跳过 MPI_Barrier 吗?
python - 具有两个变量的指数函数的 Python 数值解
我有一个具有两个已知变量 x 和 y 的指数函数。当我输入一个 x 时,我需要找到 y 的值。但是,我的代码无法通过并解决问题。我的函数和所有相关常量如下所示:
目前的输出:
预期输出:
matlab - MATLAB 中的分而治之 SVD
我正在尝试实现上双对角矩阵 B 的分而治之 SVD,但我的代码不起作用。错误是:
“无法执行赋值,因为左侧的大小是 3×3,右侧的大小是 2×
2。V_bar(1:k,1:k) = V1;”
有人可以帮我解决吗?谢谢。
python - 如何求解大型非线性方程?
scipy.optimize.fsolve
当我得到一个10^85
太大的答案时,我有 3 个带有三个未知数的大型非线性方程。也会引发运行时警告。
答案是:
我的错误是什么?
matlab - Matlab中的函数fzero不收敛
我正在解决我的宏观经济学课上的一个问题。考虑以下等式:
这里,k 是固定的,c(k) 是通过 Matlab 中的“interp1”函数定义的。这是我的代码:
当我运行此代码时,对于某些索引 $i$,它运行良好并且 fzero 可以找到解决方案。但是对于索引,它只返回 NaN 并退出而不找到根。这是经济学中一个表现良好的问题,我们正在寻找的解决方案确实存在,并且我尝试实现的算法保证可以工作。但是我在 MATLAB 中解决这个问题没有太多经验,我想我在某个地方犯了一个愚蠢的错误。关于如何进行的任何想法?
这是典型的错误信息:
退出 fzero:中止对包含符号更改的区间的搜索,因为在搜索期间遇到了复杂的函数值。(-2.61092 处的函数值为 0.74278-0.30449i。)检查函数或使用不同的起始值重试。
提前非常感谢!
numeric - Romberg 积分方法是否实现为数值上正确的加权函数值?
我必须f(x) * g(x)
为许多不同的功能集成表达式,f
但只有一个g
。
我想将它整合为加权值的总和,f(x) * g(x)
而不是计算表格。请注意,在 Python 中,我可能会写:
作为:
其中w[i]
是 Romberg 方法使用的函数值的权重,其计算方式如下:
Romberg 方法的这种实现是否安全?
(在 CS 上也提出了这个问题:https ://scicomp.stackexchange.com/questions/35469/is-romberg-integration-method-implemented-as-weighted-function-values-numericall )