在这个出色的答案中,建议使用函数来避免计算处理(大约)时的舍入误差。缩放他们的答案,然后缩小,我想(?)恢复他们真正想要的数字?erfcxx<25ex2
如果我们有需要计算的情况怎么办?我可以写:erfc(a)−erfc(b)
erfcx(a)−erfcx(b)=ea2erfc(a)−eb2erfc(b)
但如果我想对函数进行数值积分(),这并不是特别有用:x,a,b∈R
∫baex2(erf(x)−erf(a))dx=∫baex2(erfc(a)−erfc(x))dx
如果和的大小足够接近/足够大(就符号而言不是很大),那么我们会得到灾难性的抵消。例如,尝试和。在被积函数内部重新缩放似乎没有帮助,而不是有帮助!aba=−16.85b=−16.08
做什么?
如果你有 Python,这里是 Github Gist 上的玩具问题脚本。它实现了此答案中提供的许多建议以避免溢出错误,但仍会遇到下溢问题。