numpy.testing.assert_approx_equal¶
-
numpy.testing.
assert_approx_equal
(actual, desired, significant=7, err_msg='', verbose=True)[source]¶ Raises an AssertionError if two items are not equal up to significant digits.
Note
It is recommended to use one of
assert_allclose
,assert_array_almost_equal_nulp
orassert_array_max_ulp
instead of this function for more consistent floating point comparisons.Given two numbers, check that they are approximately equal. Approximately equal is defined as the number of significant digits that agree.
- Parameters
- Raises
- AssertionError
If actual and desired are not equal up to specified precision.
See also
assert_allclose
Compare two array_like objects for equality with desired relative and/or absolute precision.
assert_array_almost_equal_nulp
,assert_array_max_ulp
,assert_equal
Examples
>>> np.testing.assert_approx_equal(0.12345677777777e-20, 0.1234567e-20) >>> np.testing.assert_approx_equal(0.12345670e-20, 0.12345671e-20, ... significant=8) >>> np.testing.assert_approx_equal(0.12345670e-20, 0.12345672e-20, ... significant=8) Traceback (most recent call last): ... AssertionError: Items are not equal to 8 significant digits: ACTUAL: 1.234567e-21 DESIRED: 1.2345672e-21
the evaluated condition that raises the exception is
>>> abs(0.12345670e-20/1e-21 - 0.12345672e-20/1e-21) >= 10**-(8-1) True