def test_reginv(self): # make sure the fancy code is equal to the more literal, but slow way k = self.ref_kernel[10, 20].copy() lm = 8. x = slow_inv(k, lm) k = self.ref_kernel[10, 20].copy() xf = GU.regularized_inverse(k, lm) assert_array_almost_equal(x, xf)
def test_reginv(self): # make sure the fancy code is equal to the more literal, but slow way k = self.ref_kernel[10,20].copy() lm = 8. x = slow_inv(k, lm) k = self.ref_kernel[10,20].copy() xf = GU.regularized_inverse(k, lm) assert_array_almost_equal(x, xf)
def test_invspeed(self): nsl, nfe = self.ref_kernel.shape[:2] lm = 8.0 slcs = range(nsl) cols = range(nfe) t0_slow = time.time() for s in slcs: for fe in cols: ik = slow_inv(self.ref_kernel[s, fe], lm) tf_slow = time.time() t0_fast = time.time() for s in slcs: for fe in cols: ik = GU.regularized_inverse(self.ref_kernel[s, fe], lm) tf_fast = time.time() print "literal numpy solution for %d inverses: %2.4fs" % ( nsl * nfe, tf_slow - t0_slow) print "slick solution for %d inverses: %2.4fs" % (nsl * nfe, tf_fast - t0_fast) print "speedup:", (tf_slow - t0_slow) / (tf_fast - t0_fast)
def test_invspeed(self): nsl, nfe = self.ref_kernel.shape[:2] lm = 8.0 slcs = range(nsl) cols = range(nfe) t0_slow = time.time() for s in slcs: for fe in cols: ik = slow_inv(self.ref_kernel[s,fe], lm) tf_slow = time.time() t0_fast = time.time() for s in slcs: for fe in cols: ik = GU.regularized_inverse(self.ref_kernel[s,fe], lm) tf_fast = time.time() print "literal numpy solution for %d inverses: %2.4fs"%(nsl*nfe, tf_slow-t0_slow) print "slick solution for %d inverses: %2.4fs"%(nsl*nfe, tf_fast-t0_fast) print "speedup:", (tf_slow-t0_slow)/(tf_fast-t0_fast)