numpy.testing.assert_array_almost_equal_nulp
- testing.assert_array_almost_equal_nulp(x, y, nulp=1)[source]
-
Сравнение двух массивов относительно их расстояния.
Это относительно надёжный метод для сравнения двух массивов, амплитуда которых меняется.
- Параметры
-
- x, yarray_like
-
Входящие массивы.
- nulpint, необязательно
-
Максимальное количество единиц в последнем разряде для допуска (см. Примечания). По умолчанию равно 1.
- Возвращает
-
- None
- Исключения
-
- AssertionError
-
Если расстояние между
xиyдля одного или нескольких элементов большеnulp.
См. также
assert_array_max_ulp-
Проверка, что все элементы массивов отличаются не более чем на N единиц в последнем разряде.
spacing-
Возвращает расстояние между x и ближайшим соседним числом.
Примечания
Возникает утверждение, если не выполняется следующее условие:
abs(x - y) <= nulps * 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: X and Y are not equal to 1 ULP (max is 2)
© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/generated/numpy.testing.assert_array_almost_equal_nulp.html