mvpa2.testing.assert_approx_equal¶
-
mvpa2.testing.assert_approx_equal(actual, desired, significant=7, err_msg='', verbose=True)¶ 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_nulporassert_array_max_ulpinstead 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: actual : scalar
The object to check.
desired : scalar
The expected object.
significant : int, optional
Desired precision, default is 7.
err_msg : str, optional
The error message to be printed in case of failure.
verbose : bool, optional
If True, the conflicting values are appended to the error message.
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_equalExamples
>>> 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) ... <type 'exceptions.AssertionError'>: Items are not equal to 8 significant digits: ACTUAL: 1.234567e-021 DESIRED: 1.2345672000000001e-021
the evaluated condition that raises the exception is
>>> abs(0.12345670e-20/1e-21 - 0.12345672e-20/1e-21) >= 10**-(8-1) True



