Skip to content

Latest commit

 

History

History

examples

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

bella/examples

Basic examples

Run these with plain vanilla python [filename]. The utility bash script generate_zoo.sh will run all of the examples that just produce PNG files.

  • cayley_graph_speed.py -- demonstrate that walking the Cayley group of a non-free group incurs a massive speed overhead.
  • parabolic_slice_hidef.py -- draw a PNG file containing a high-res picture of the parabolic Riley slice.
  • parabolic_slice_pleating_rays.py -- plot rational pleating rays around the parabolic Riley slice.
  • apollonian_gasket.py -- draw a PNG file containing a picture of the Apollonian Gasket.
  • padic.py -- demonstrate that it is possible to use other number types (e.g. $p$-adic numbers) as long as you are sufficiently masochistic.
  • farey.py -- produce TeX tables of Farey and Riley words and polynomials.
  • jorgensen_marden.py -- plot the limit sets of the Jørgensen--Marden groups which are not quasiconformally conjugate but which uniformise homeomorphic 3-manifolds.
  • geometrically_infinite.py -- plot the limit set of a geometrically infinite group with non-empty domain of discontinuity.
  • modular_group.py -- plot the isometric circles of $\mathrm{PSL}(2,\mathbb{Z})$.
  • connected_component_bound.py -- a Schottky-type group on $N$ parabolic generators with $2(N-1)$ components.
  • apanasov.py -- a quasi-Fuchsian group with four components.
  • web.py -- a group which is not quasi-Fuchsian, but has quasi-Fuchsian component stabilisers.
  • elementary.py -- an elementary group obtained as the orientation-preserving half of the group of reflections of a parallelogram.
  • beads.py -- draw limit sets of bead groups along arbitrary polygonal paths.
  • atom.py -- draw the limit set of an approximation of Accola's atom group (an infinitely generated group).
  • accidental_parabolic.py -- draw the limit set of a B-group with an accidental parabolic.
  • riley_slice_cusps.py -- produce cusp points on the Riley slice corresponding to various irrational numbers.
  • cusp_groups.py -- plot the limit sets of some cusp groups.
  • fig8lattice.py -- plot the limit set of the holonomy group of the figure 8 knot along with the lattice of traces.
  • bianchi.py -- Bianchi group limit sets.

Interactive panel scripts

Run these with panel serve [filename]. You need the optional panel dependency.

  • riley_limits.py -- dynamically draw limit sets and fixed points of Riley groups in a very interactive way (this is the replacement for the older graphical_limits.py).
  • maskit_limits.py -- dynamically draw limit sets and fixed points of Maskit groups (Chapter 9 of Indra's pearls) in a very interactive way.
  • dunfield_tiozzo.py -- draw limit sets and fixed points of Schottky representations of Br(3) (https://arxiv.org/abs/2402.06771). Points in the slice exterior are drawn by dunfield_tiozzo.sage, which is painfully slow and so the result is stored in dunfield_tiozzo.csv.
  • parabolic_slices.py -- draw a lot of different level sets of the Farey polynomials, and the zero set of the Riley polynomials.
  • isometric_circles.py -- dynamically draw isometric circles of Riley groups.
  • elliptic_parabolic_slice.py -- draw a particular elliptic slice, showing that non-primitive words give subsets of the slice exterior.
  • peripheral_subgroups.py -- modification of limits.py to highlight peripheral subgroups.
  • indras_necklace.py -- draw limit sets of the Indra's Necklace groups, Chapter 6 of Indra's pearls.
  • theta_schottky.py -- draw limit sets of θ-Schottky groups, Project 4.2 of Indra's pearls.
  • grandma.py -- draw limit sets of Grandma's Recipe groups, Chapter 8 of Indra's pearls.
  • schottky.py -- draw limit sets of Schottky groups.
  • lackenby_purcell.py -- draw limit sets of groups with one rank 2 cusp and an additional loxodromic.

Animation examples

Each of these examples produces the frames for an animation in the subdirectory named the same as the example but without the .py suffix. Then you can run something like

ffmpeg -framerate 30 -pattern_type glob -i 'animate_slices/*.png' -c:v libx264 -pix_fmt yuv420p animate_slices.mp4

to generate a video file from those frames.