numpy.testing.assert_array_almost_equal_nulp#

тестирование.assert_array_almost_equal_nulp(x, y, nulp=1)[источник]#

Сравните два массива относительно их интервалов.

Это относительно надежный метод сравнения двух массивов с переменной амплитудой.

Параметры:
x, yarray_like

Входные массивы.

nulpint, необязательный

Максимальное количество единиц в последнем разряде для допуска (см. Примечания). По умолчанию равно 1.

Возвращает:
None
Вызывает:
AssertionError

Если расстояние между x и y для одного или нескольких элементов больше, чем nulp.

Смотрите также

assert_array_max_ulp

Проверьте, что все элементы массивов отличаются не более чем на N единиц в последнем знаке.

spacing

Возвращает расстояние между x и ближайшим соседним числом.

Примечания

Утверждение вызывается, если следующее условие не выполняется:

abs(x - y) <= nulp * spacing(maximum(abs(x), abs(y)))

Примеры

>>> x = np.array([1., 1e-10, 1e-20])
>>> eps = np.finfo(x.dtype).eps
>>> np.testing.assert_array_almost_equal_nulp(x, x*eps/2 + x)
>>> np.testing.assert_array_almost_equal_nulp(x, x*eps + x)
Traceback (most recent call last):
  ...
AssertionError: Arrays are not equal to 1 ULP (max is 2)