numpy.testing.assert_approx_equal — NumPy v1.11 Manual (original) (raw)

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.

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.

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) ... <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