Two floating-point numbers should not be compared with the == comparison, because the result of a computation is often slightly off due to rounding errors. There are numerous tools to test the equality of floats for testing purposes.
First, allclose checks that two arrays are almost equal. It can be used in a test function, as shown:
self.assertTrue(allclose(computed, expected))
Here, self refers to a unittest.Testcase instance. There are also testing tools in the numpy package testing. These are imported by using:
import numpy.testing
Testing that two scalars or two arrays are equal is done using numpy.testing.assert_array_allmost_equal or numpy.testing.assert_allclose. These methods differ in the way they describe the required accuracy, as shown in the preceding table, Table 15.1.
factorization decomposes a given matrix into a product of an orthogonal matrix and an upper triangular...