예제 #1
0
   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))
예제 #2
0
    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))
예제 #3
0
 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))
예제 #4
0
    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))