def test_eye(self): test_mat = sp.eye(3) cols, rr_test_mat, rank = select_basis(test_mat) self.assertEqual(cols, [0, 1, 2]) self.assertEqual(rank, 3)
def test_blank_first_row(self): test_mat = sp.lil_matrix((4, 6), dtype=np.int8) test_mat.rows = [[], [0, 2], [4, 5], [1, 3]] test_mat.data = [[1]*len(row) for row in test_mat.rows] cols, rr_test_mat, rank = select_basis(test_mat) self.assertEqual(cols, [0, 1, 4]) self.assertEqual(rank, 3)
def test_augmented_eye(self): test_mat = sp.eye(3) test_mat = sp.hstack([test_mat, test_mat]) cols, rr_test_mat, rank = select_basis(test_mat) self.assertEqual(cols, [0, 1, 2]) self.assertEqual(rank, 3)
def test_upper_triangular(self): test_mat = sp.lil_matrix((4, 4), dtype=np.int8) test_mat.rows = [[0, 3], [1], [2, 3], [3]] test_mat.data = [[1]*len(row) for row in test_mat.rows] cols, rr_test_mat, rank = select_basis(test_mat) self.assertEqual(cols, [0, 1, 2, 3]) self.assertEqual(rank, 4)
def test_augmented_eye_shuffled(self): test_mat = sp.lil_matrix((3, 6), dtype=np.int8) test_mat.rows = [[0, 2], [4, 5], [1, 3]] test_mat.data = [[1]*len(row) for row in test_mat.rows] cols, rr_test_mat, rank = select_basis(test_mat) self.assertEqual(cols, [0, 1, 4]) self.assertEqual(rank, 3)