def test_regular_cyclic(self): g = CyclicGroup(15) rr = g.regular_representation N = 4 size = rr.size * N p = np.eye(size, size) p = p[:, np.random.permutation(size)] repr = directsum([rr]*N, change_of_basis=p) self.check_disentangle(repr)
def test_mix_cyclic(self): g = CyclicGroup(15) rr = directsum(list(g.representations.values())) N = 3 size = rr.size * N bcob = ortho_group.rvs(dim=size//5) bsize = bcob.shape[0] p = np.eye(size, size) for i in range(size//bsize): p[i*bsize:(i+1)*bsize, i*bsize:(i+1)*bsize] = bcob p = p[:, np.random.permutation(size)] repr = directsum([rr]*N, change_of_basis=p) self.check_disentangle(repr)
def test_restrict_irreps_cyclic_even_cyclic_odd(self): dg = CyclicGroup(10) sg_id = 5 for name, irrep in dg.irreps.items(): self.check_restriction(dg, sg_id, irrep)
def test_restrict_rr_cyclic_odd_cyclic_odd(self): dg = CyclicGroup(15) repr = dg.regular_representation sg_id = 5 self.check_restriction(dg, sg_id, repr)
def test_restrict_rr_cyclic_even_cyclic_even(self): dg = CyclicGroup(16) repr = dg.regular_representation sg_id = 8 self.check_restriction(dg, sg_id, repr)
def test_restrict_rr_cyclic_even_cyclic_odd(self): dg = CyclicGroup(14) repr = dg.regular_representation sg_id = 7 self.check_disentangle(dg.restrict_representation(sg_id, repr))
def test_cyclic_even(self): g = CyclicGroup(16) self.check_group(g)
def test_restrict_irreps_cyclic_even_cyclic_odd(self): dg = CyclicGroup(10) sg_id = 5 for name, irrep in dg.irreps.items(): self.check_disentangle(dg.restrict_representation(sg_id, irrep))
def test_cyclic_odd(self): g = CyclicGroup(15) self.check_group(g)
def test_mix_cyclic(self): g = CyclicGroup(15) rr = directsum(list(g.representations.values())) self.check_representation(rr) self.check_character(rr)
def test_regular_cyclic(self): g = CyclicGroup(15) rr = g.regular_representation self.check_representation(rr) self.check_character(rr)
def test_cyclic_rr_small(self): cg = CyclicGroup(2) self.cyclic_rr_eval(cg, cg.representations['regular'])
def test_cyclic_rr_odd(self): cg = CyclicGroup(11) self.cyclic_rr_eval(cg, cg.representations['regular'])