numpy.testing.assert_array_almost_equal_nulp
-
numpy.testing.assert_array_almost_equal_nulp(x, y, nulp=1)
[source] -
Compare two arrays relatively to their spacing.
This is a relatively robust method to compare two arrays whose amplitude is variable.
- Parameters
-
-
x, yarray_like
-
Input arrays.
-
nulpint, optional
-
The maximum number of unit in the last place for tolerance (see Notes). Default is 1.
-
- Returns
-
- None
- Raises
-
- AssertionError
-
If the spacing between
x
andy
for one or more elements is larger thannulp
.
See also
-
assert_array_max_ulp
-
Check that all items of arrays differ in at most N Units in the Last Place.
-
spacing
-
Return the distance between x and the nearest adjacent number.
Notes
An assertion is raised if the following condition is not met:
abs(x - y) <= nulps * spacing(maximum(abs(x), abs(y)))
Examples
>>> 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–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.19/reference/generated/numpy.testing.assert_array_almost_equal_nulp.html