You need to enable JavaScript to run this app. MPFR/MPFI下非负项幂级数及导数计算的求和终止条件判定
优惠活动
大模型
产品
解决方案
定价
更多

MPFR/MPFI下非负项幂级数及导数计算的求和终止条件判定

可行的停止判据方案

你用MPFI区间算术的前提下,完全可以用余项上界估计+区间宽度校验的方案,比你提到的相邻部分和比较的方案可靠得多,也不会浪费计算资源:

  1. 先对导数后的级数做重编号:令 k = n - m,级数可改写为 series(h,m) = sum_{k=0}^∞ t_k,其中所有项 t_k ≥ 0,部分和严格单调递增收敛到真值。
  2. 不要硬算每一项的表达式,推导相邻项的递推关系:t_{k+1} = t_k * r_k,其中 r_k 是相邻项比值,可通过 a(n) 的定义和排列数的性质化简得到,数值上恒小于1。
  3. 每累加完第k项后,计算剩余无穷项的上界:因为r_k < 1,剩余余项和 R_k = sum_{i=k+1}^∞ t_i < t_{k+1}/(1 - r_k),是等比级数的上界。
  4. 此时真值必然落在区间 [S_k, S_k + R_k] 内,用MPFI表示这个区间后,只要区间宽度小于 2^{-(p+32)} * max(|S_k|, MPFR最小正浮点数),就说明已经满足p+32位的精度要求,直接停止累加即可。
  5. 最后把区间结果舍入到p位输出,因为真值完全被区间包裹,且区间宽度小于1个p+32位的最小精度单位,忠实舍入的要求完全可以满足。

你提到的四步策略的问题

这个策略存在可靠性缺陷:当级数收敛较慢(比如h接近1)时,相邻两项的差可能已经小于p+32位的舍入阈值,但剩余无穷余项的总和仍可能大于p+32位的最小精度单位,此时提前停止会导致结果精度不足,无法满足忠实舍入要求。

关于你提到的项数上界的问题

不需要提前计算固定的项数上界,上面的递推余项估计是边算边做的,当h接近0时,r_k会非常小,余项会快速收敛到阈值以下,自动减少需要计算的项数,不会出现h=1最坏情况假设带来的资源浪费。
工作精度不需要设到p*4,仅需设置为p+40左右,比目标精度多留8位余量覆盖舍入误差和余项估计的误差即可。


内容的提问来源于stack exchange,提问作者user2373145

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 00:12:03