Skip to content

Commit

Permalink
Fix orbit closure dimension boundary for isosceles triangles
Browse files Browse the repository at this point in the history
  • Loading branch information
saraedum committed Jun 21, 2024
1 parent c77f2b9 commit 34b670b
Showing 1 changed file with 12 additions and 1 deletion.
13 changes: 12 additions & 1 deletion flatsurvey/surfaces/ngons.py
Original file line number Diff line number Diff line change
Expand Up @@ -464,10 +464,21 @@ def better(gon):
@property
def orbit_closure_dimension_upper_bound(self):
if not hasattr(self, "_bound"):
angles = self.angles

if len(angles) == 3:
a, b, c = angles
if a == b:
# An isosceles triangles is a double cover of its half.
angles = (2*a, a + b + c, c)
elif b == c:
# An isosceles triangles is a double cover of its half.
angles = (a, 2*b, a + b + c)

from flatsurf import EuclideanPolygonsWithAngles

self._bound = EuclideanPolygonsWithAngles(
*self.angles
*angles
).billiard_unfolding_stratum_dimension(
"half-translation", marked_points=not self._eliminate_marked_points
)
Expand Down

0 comments on commit 34b670b

Please sign in to comment.