sagemath / sage

Main repository of SageMath
https://www.sagemath.org
Other
1.32k stars 453 forks source link

Compute fundamental domain for symmetry groups of polyhedra #20278

Open jdemeyer opened 8 years ago

jdemeyer commented 8 years ago

Given a finite affine matrix group fixing a polyhedron (the restricted automorphism group by default), compute a fundamental domain for that group action.

CC: @tscrim

Component: geometry

Author: Jeroen Demeyer

Branch/Commit: u/mkoeppe/ticket/20278 @ 9e2c927

Issue created by migration from https://trac.sagemath.org/ticket/20278

jdemeyer commented 8 years ago

Description changed:

--- 
+++ 
@@ -1 +1 @@
-
+Given a finite affine matrix group fixing a polyhedron (the restricted automorphism group by default), compute a fundamental domain for that group action.
jdemeyer commented 8 years ago

Changed dependencies from #20259 to #20259, #20277

jdemeyer commented 8 years ago

Branch: u/jdemeyer/ticket/20278

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

f9663a7Implement the Moore-Penrose pseudoinverse
dc2eb79Merge remote-tracking branch 'trac/u/jdemeyer/homogeneous_coordinates_of_polyhedron_v_representation_objects' into t/20259/polyhedron_restricted_automorphism_group____allow_returning_the_affine_matrix_group
4966468Allow returning the matrix group in restricted_automorphism_group()
5b13494Merge remote-tracking branch 'trac/u/jdemeyer/polyhedron_restricted_automorphism_group____allow_returning_the_affine_matrix_group' into t/20278/ticket/20278
19baadbCompute fundamental domain for symmetry groups of polyhedra
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Commit: 19baadb

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 19baadb to 9d6c094

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

a579410Fix for changed line number in rook_vector.__doc__
3a3f552Numerical noise: mark test as random
c5a766eMerge commit '496646879d95208d240ea521340f41029cf9bdfc'; commit '3a3f5521eb8ced6c64a329918ac3544633286e89' into t/20278/ticket/20278
9d6c094Compute fundamental domain for symmetry groups of polyhedra
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

3b9ece8Compute fundamental domain for symmetry groups of polyhedra
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 9d6c094 to 3b9ece8

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 3b9ece8 to 1297c96

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

1297c96Compute fundamental domain for symmetry groups of polyhedra
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

7555e52Compute fundamental domain for symmetry groups of polyhedra
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 1297c96 to 7555e52

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

e70a1eaAllow returning the matrix group in restricted_automorphism_group()
a10822dMerge commit 'e70a1eae87ee937b21bd8f2767ffcb8353c914ea'; commit '3a3f5521eb8ced6c64a329918ac3544633286e89' into t/20278/ticket/20278
6f0649eCompute fundamental domain for symmetry groups of polyhedra
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 7555e52 to 6f0649e

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

b1576d6Compute fundamental domain for symmetry groups of polyhedra
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 6f0649e to b1576d6

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from b1576d6 to 80a3a4e

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

d82fa6eAllow returning the matrix group in restricted_automorphism_group()
80a3a4eCompute fundamental domain for symmetry groups of polyhedra
jdemeyer commented 8 years ago

Changed dependencies from #20259, #20277 to #20259

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 80a3a4e to f6465af

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

d9f8bdeFix conversions matrix -> AffineGroup
4163d00Allow returning the matrix group in restricted_automorphism_group()
f6465afCompute fundamental domain for symmetry groups of polyhedra
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

10934f2Compute fundamental domain for symmetry groups of polyhedra
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from f6465af to 10934f2

jdemeyer commented 8 years ago

Changed dependencies from #20259 to none

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Changed commit from 10934f2 to 990f3f7

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 8 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

990f3f7Compute fundamental domain for symmetry groups of polyhedra
mkoeppe commented 8 years ago

Changed branch from u/jdemeyer/ticket/20278 to u/mkoeppe/ticket/20278

mkoeppe commented 8 years ago

Changed commit from 990f3f7 to 9e2c927

mkoeppe commented 8 years ago
comment:18

There should be better error handling when the user passes a group that is not finite. By wishful thinking, I thought I could do:

sage: P = Polyhedron(lines=[(1,0), (0,1)])
sage: T2 = MatrixGroup(matrix(QQ,[[1, 0, 1], [0, 1, 0], [0, 0, 1]]), [[1, 0, 0], [0, 1, 1], [0, 0, 1]])
sage: P.fundamental_domain(T2)

but it gives an unhelpful error:

AttributeError                            Traceback (most recent call last)
<ipython-input-6-3e2d754d11ba> in <module>()
----> 1 P.fundamental_domain(T2)

/Users/mkoeppe/cvs/sage/local/lib/python2.7/site-packages/sage/geometry/polyhedron/base.pyc in fundamental_domain(self, group)
   4882             from sage.groups.affine_gps.affine_group import AffineGroup
   4883             AGL = AffineGroup(self.ambient_dim(), self.base_ring().fraction_field())
-> 4884             G = [AGL(g).matrix() for g in group]
   4885 
   4886         # We need to find a good "center" point for the fundamental

/Users/mkoeppe/cvs/sage/local/lib/python2.7/site-packages/sage/groups/matrix_gps/matrix_group.pyc in __iter__(self)
    612         if not self.is_finite():
    613             # use implementation from category framework
--> 614             for g in super(Group, self).__iter__():
    615                 yield g
    616             return

AttributeError: 'super' object has no attribute '__iter__'

New commits:

0d449b9Merge tag '7.3' into t/20278/ticket/20278
9e2c927Change 'kind' to 'output' following #20259
mkoeppe commented 8 years ago
comment:20

See also #21228.