Time for action – comparing using maxulp of 2

Let's do the same comparisons as in the previous Time for action tutorial, but specify a maxulp of 2 when necessary:

  1. Determine the machine epsilon with the finfo function:
    eps = np.finfo(float).eps
    print "EPS", eps

    The epsilon would be:

    EPS 2.22044604925e-16
  2. Do the comparisons as done in the previous Time for action tutorial, but use the assert_array_max_ulp function with the appropriate maxulp value:
    print "1", np.testing.assert_array_max_ulp(1.0, 1.0 + eps)
    print "2", np.testing.assert_array_max_ulp(1.0, 1 + 2 * eps, maxulp=2)

    The output:

    1 1.0
    2 2.0

What just happened?

We compared the same values as the previous Time for action tutorial, but specified a maxulp of 2 in the second comparison. Using the assert_array_max_ulp function with the appropriate maxulp value, these tests passed with a return value of the number of ULPs.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.17.174.156