def almostEqual(self, A, B, precision=15): if FLOATING_PRECISION == 32: precision = 7 elif FLOATING_PRECISION == 64: precision = 16 else: print "FLOATING_PRECISION has invalid value (neither 32 nor 64)." exit() # Unwrap the array object one dimension at a time: def dissembleAndTest(A,B): for i in range(A.shape[0]): if A.shape.__len__() > 1: dissembleAndTest(A[i],B[i]) else: self.assertAlmostEqual(A[i], B[i], precision, "expected %f+%fj, was %f+%fj (diff %e+%ej)"\ %(A[i].real,A[i].imag,B[i].real,B[i].imag,A[i].real-B[i].real, A[i].imag-B[i].imag)) if is_np_type(A.__class__): if is_np_type(B.__class__) and A.shape == B.shape: dissembleAndTest(A,B) else: self.fail("variables are not of the same type and/or shape") else: self.assertEqual(A, B, "expected %f+%fj, was %f+%fj (diff %e+%ej)"\ %(A.real,A.imag,B.real,B.imag,A.real-B.real, A.imag-B.imag))
def almostEqual(self, A, B, precision=15): if FLOATING_PRECISION == 32: precision = 7 elif FLOATING_PRECISION == 64: precision = 16 else: print "FLOATING_PRECISION has invalid value (neither 32 nor 64)." exit() # Unwrap the array object one dimension at a time: def dissembleAndTest(A, B): for i in range(A.shape[0]): if A.shape.__len__() > 1: dissembleAndTest(A[i], B[i]) else: self.assertAlmostEqual(A[i], B[i], precision, "expected %f+%fj, was %f+%fj (diff %e+%ej)"\ %(A[i].real,A[i].imag,B[i].real,B[i].imag,A[i].real-B[i].real, A[i].imag-B[i].imag)) if is_np_type(A.__class__): if is_np_type(B.__class__) and A.shape == B.shape: dissembleAndTest(A, B) else: self.fail("variables are not of the same type and/or shape") else: self.assertEqual(A, B, "expected %f+%fj, was %f+%fj (diff %e+%ej)"\ %(A.real,A.imag,B.real,B.imag,A.real-B.real, A.imag-B.imag))
def equal(self, A, B): # Unwrap the array object one dimension at a time: def dissembleAndTest(A,B): for i in range(A.shape[0]): if A.shape.__len__() > 1: dissembleAndTest(A[i],B[i]) else: self.assertEqual(A[i], B[i], "expected %f+%fj, was %f+%fj (diff %e+%ej)"\ %(A[i].real,A[i].imag,B[i].real,B[i].imag,A[i].real-B[i].real, A[i].imag-B[i].imag)) if is_np_type(A.__class__): if is_np_type(B.__class__) and A.shape == B.shape: dissembleAndTest(A,B) else: self.fail("variables are not of the same type and/or shape") else: self.assertEqual(A, B, "expected %f+%fj, was %f+%fj (diff %e+%ej)"\ %(A.real,A.imag,B.real,B.imag,A.real-B.real, A.imag-B.imag))
def equal(self, A, B): # Unwrap the array object one dimension at a time: def dissembleAndTest(A, B): for i in range(A.shape[0]): if A.shape.__len__() > 1: dissembleAndTest(A[i], B[i]) else: self.assertEqual(A[i], B[i], "expected %f+%fj, was %f+%fj (diff %e+%ej)"\ %(A[i].real,A[i].imag,B[i].real,B[i].imag,A[i].real-B[i].real, A[i].imag-B[i].imag)) if is_np_type(A.__class__): if is_np_type(B.__class__) and A.shape == B.shape: dissembleAndTest(A, B) else: self.fail("variables are not of the same type and/or shape") else: self.assertEqual(A, B, "expected %f+%fj, was %f+%fj (diff %e+%ej)"\ %(A.real,A.imag,B.real,B.imag,A.real-B.real, A.imag-B.imag))