Python underflow должен быть менее точным - PullRequest
1 голос
/ 25 марта 2020

Я попробовал этот очень простой код, чтобы увидеть недолив 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>

кривая эволюции относительной ошибки

Я не могу понять, почему, любая помощь будет принята с благодарностью.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...