Я попробовал этот очень простой код, чтобы увидеть недолив python в действии, рассчитав абсолютную и относительную погрешность между двумя функциями:
from pylab import *
n = 2000
x = logspace(-17,-16,n)
y1 = 1/(1+x) - 1/(1-x)
y2 = (-2 *x)/((1+x)*(1-x))
ea = abs(y1 - y2)
er = ea/abs(y2)
loglog(x[ea>0], er[ea>0])
Обычно для x <= 2 ^ 53, но здесь он появляется для x <= 2 ^ -54 = 5.55e-17. ср: </p>
кривая эволюции относительной ошибки
Я не могу понять, почему, любая помощь будет принята с благодарностью.