def test_band_ce(self, its=100): """Checks band_ce against its definition and required properties.""" for it in range(its): l = random.choice([0, 1, randint(0, 10)]) u = random.choice([0, 1, randint(0, 10)]) size = random.choice([0, 1, randint(0, 10), randint(0, 100)]) mat_rect = randn(l + u + 1, size) mat_rect_new = fl.band_ce(l, u, mat_rect) mat_rect_new_good = fl.band_e(l, u, fl.band_c(l, u, mat_rect)) assert_allequal(mat_rect_new, mat_rect_new_good) assert not np.may_share_memory(mat_rect_new, mat_rect) # check idempotent assert_allequal(fl.band_ce(l, u, mat_rect_new), mat_rect_new)
def test_band_cTe(self, its=100): """Checks band_cTe against its definition and required properties.""" for it in range(its): l = random.choice([0, 1, randint(0, 10)]) u = random.choice([0, 1, randint(0, 10)]) size = random.choice([0, 1, randint(0, 10), randint(0, 100)]) mat_rect = randn(l + u + 1, size) mat_rect_new = fl.band_cTe(l, u, mat_rect) mat_rect_new_good = fl.band_e(u, l, fl.band_c(l, u, mat_rect).T) assert_allequal(mat_rect_new, mat_rect_new_good) assert not np.may_share_memory(mat_rect_new, mat_rect) # check a property to do with doing band_cTe twice assert_allequal( fl.band_cTe(u, l, mat_rect_new), fl.band_ce(l, u, mat_rect) ) # check version that uses pre-specified target mat_rect_new2 = np.empty((l + u + 1, size)) array_mem = get_array_mem(mat_rect, mat_rect_new2) ret = fl.band_cTe(l, u, mat_rect, target_rect=mat_rect_new2) self.assertIsNone(ret) assert_allequal(mat_rect_new2, mat_rect_new) assert get_array_mem(mat_rect, mat_rect_new2) == array_mem
def test_band_ce(self, its=100): """Checks band_ce against its definition and required properties.""" for it in range(its): l = random.choice([0, 1, randint(0, 10)]) u = random.choice([0, 1, randint(0, 10)]) size = random.choice([0, 1, randint(0, 10), randint(0, 100)]) mat_rect = randn(l + u + 1, size) mat_rect_new = fl.band_ce(l, u, mat_rect) mat_rect_new_good = fl.band_e(l, u, fl.band_c(l, u, mat_rect)) assert_allequal(mat_rect_new, mat_rect_new_good) assert not np.may_share_memory(mat_rect_new, mat_rect) # check idempotent assert_allequal( fl.band_ce(l, u, mat_rect_new), mat_rect_new )