snappy 3.1.1__cp311-cp311-macosx_11_0_arm64.whl → 3.2__cp311-cp311-macosx_11_0_arm64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (464) hide show
  1. snappy/CyOpenGL.cpython-311-darwin.so +0 -0
  2. snappy/SnapPy.cpython-311-darwin.so +0 -0
  3. snappy/SnapPyHP.cpython-311-darwin.so +0 -0
  4. snappy/__init__.py +299 -402
  5. snappy/app.py +70 -20
  6. snappy/browser.py +18 -17
  7. snappy/canonical.py +249 -0
  8. snappy/{verify/cusp_shapes.py → cusps/__init__.py} +8 -18
  9. snappy/cusps/cusp_area_matrix.py +101 -0
  10. snappy/{verify/cusp_areas.py → cusps/cusp_areas_from_matrix.py} +23 -39
  11. snappy/cusps/maximal_cusp_area_matrix.py +136 -0
  12. snappy/cusps/test.py +21 -0
  13. snappy/cusps/trig_cusp_area_matrix.py +63 -0
  14. snappy/database.py +10 -9
  15. snappy/decorated_isosig.py +337 -114
  16. snappy/dev/extended_ptolemy/complexVolumesClosed.py +40 -7
  17. snappy/dev/extended_ptolemy/extended.py +3 -3
  18. snappy/dev/extended_ptolemy/phc_wrapper.py +10 -10
  19. snappy/dev/vericlosed/oneVertexTruncatedComplex.py +1 -1
  20. snappy/doc/_images/m004_paper_plane_on_systole.jpg +0 -0
  21. snappy/doc/_images/m125_paper_plane.jpg +0 -0
  22. snappy/doc/_images/o9_00000_systole_paper_plane.jpg +0 -0
  23. snappy/doc/_images/o9_00000_systole_paper_plane_closer.jpg +0 -0
  24. snappy/doc/_sources/development.rst.txt +66 -46
  25. snappy/doc/_sources/index.rst.txt +72 -5
  26. snappy/doc/_sources/installing.rst.txt +145 -162
  27. snappy/doc/_sources/news.rst.txt +73 -1
  28. snappy/doc/_sources/ptolemy_examples1.rst.txt +8 -7
  29. snappy/doc/_sources/ptolemy_examples3.rst.txt +2 -2
  30. snappy/doc/_sources/triangulation.rst.txt +2 -2
  31. snappy/doc/_sources/verify.rst.txt +89 -29
  32. snappy/doc/_sources/verify_internals.rst.txt +5 -16
  33. snappy/doc/_static/basic.css +23 -1
  34. snappy/doc/_static/css/badge_only.css +1 -1
  35. snappy/doc/_static/css/theme.css +1 -1
  36. snappy/doc/_static/doctools.js +1 -1
  37. snappy/doc/_static/documentation_options.js +2 -3
  38. snappy/doc/_static/fonts/Lato/lato-bold.eot +0 -0
  39. snappy/doc/_static/fonts/Lato/lato-bold.ttf +0 -0
  40. snappy/doc/_static/fonts/Lato/lato-bold.woff +0 -0
  41. snappy/doc/_static/fonts/Lato/lato-bold.woff2 +0 -0
  42. snappy/doc/_static/fonts/Lato/lato-bolditalic.eot +0 -0
  43. snappy/doc/_static/fonts/Lato/lato-bolditalic.ttf +0 -0
  44. snappy/doc/_static/fonts/Lato/lato-bolditalic.woff +0 -0
  45. snappy/doc/_static/fonts/Lato/lato-bolditalic.woff2 +0 -0
  46. snappy/doc/_static/fonts/Lato/lato-italic.eot +0 -0
  47. snappy/doc/_static/fonts/Lato/lato-italic.ttf +0 -0
  48. snappy/doc/_static/fonts/Lato/lato-italic.woff +0 -0
  49. snappy/doc/_static/fonts/Lato/lato-italic.woff2 +0 -0
  50. snappy/doc/_static/fonts/Lato/lato-regular.eot +0 -0
  51. snappy/doc/_static/fonts/Lato/lato-regular.ttf +0 -0
  52. snappy/doc/_static/fonts/Lato/lato-regular.woff +0 -0
  53. snappy/doc/_static/fonts/Lato/lato-regular.woff2 +0 -0
  54. snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot +0 -0
  55. snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf +0 -0
  56. snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff +0 -0
  57. snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2 +0 -0
  58. snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot +0 -0
  59. snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf +0 -0
  60. snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff +0 -0
  61. snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2 +0 -0
  62. snappy/doc/_static/js/versions.js +228 -0
  63. snappy/doc/_static/language_data.js +2 -2
  64. snappy/doc/_static/pygments.css +1 -0
  65. snappy/doc/_static/searchtools.js +125 -71
  66. snappy/doc/_static/sphinx_highlight.js +13 -3
  67. snappy/doc/additional_classes.html +291 -122
  68. snappy/doc/bugs.html +17 -20
  69. snappy/doc/censuses.html +34 -53
  70. snappy/doc/credits.html +18 -21
  71. snappy/doc/development.html +88 -68
  72. snappy/doc/genindex.html +66 -145
  73. snappy/doc/index.html +86 -31
  74. snappy/doc/installing.html +164 -182
  75. snappy/doc/manifold.html +1168 -556
  76. snappy/doc/manifoldhp.html +18 -21
  77. snappy/doc/news.html +91 -33
  78. snappy/doc/objects.inv +0 -0
  79. snappy/doc/other.html +20 -22
  80. snappy/doc/platonic_census.html +31 -34
  81. snappy/doc/plink.html +19 -22
  82. snappy/doc/ptolemy.html +20 -22
  83. snappy/doc/ptolemy_classes.html +102 -105
  84. snappy/doc/ptolemy_examples1.html +34 -36
  85. snappy/doc/ptolemy_examples2.html +28 -31
  86. snappy/doc/ptolemy_examples3.html +26 -29
  87. snappy/doc/ptolemy_examples4.html +20 -23
  88. snappy/doc/ptolemy_prelim.html +25 -28
  89. snappy/doc/py-modindex.html +16 -19
  90. snappy/doc/screenshots.html +22 -24
  91. snappy/doc/search.html +15 -18
  92. snappy/doc/searchindex.js +1 -1
  93. snappy/doc/snap.html +18 -21
  94. snappy/doc/snappy.html +18 -20
  95. snappy/doc/spherogram.html +84 -87
  96. snappy/doc/todo.html +17 -20
  97. snappy/doc/triangulation.html +324 -215
  98. snappy/doc/tutorial.html +17 -20
  99. snappy/doc/verify.html +100 -46
  100. snappy/doc/verify_internals.html +106 -563
  101. snappy/drilling/__init__.py +153 -235
  102. snappy/drilling/barycentric.py +103 -0
  103. snappy/drilling/constants.py +0 -2
  104. snappy/drilling/crush.py +56 -130
  105. snappy/drilling/cusps.py +12 -6
  106. snappy/drilling/debug.py +2 -1
  107. snappy/drilling/exceptions.py +7 -40
  108. snappy/drilling/moves.py +302 -243
  109. snappy/drilling/perturb.py +63 -37
  110. snappy/drilling/shorten.py +36 -0
  111. snappy/drilling/subdivide.py +0 -5
  112. snappy/drilling/test.py +23 -0
  113. snappy/drilling/test_cases.py +126 -0
  114. snappy/drilling/tracing.py +9 -37
  115. snappy/exceptions.py +18 -5
  116. snappy/exterior_to_link/barycentric_geometry.py +2 -4
  117. snappy/exterior_to_link/main.py +8 -7
  118. snappy/exterior_to_link/mcomplex_with_link.py +2 -2
  119. snappy/exterior_to_link/rational_linear_algebra.py +1 -1
  120. snappy/exterior_to_link/rational_linear_algebra_wrapped.py +1 -1
  121. snappy/exterior_to_link/test.py +21 -33
  122. snappy/geometric_structure/__init__.py +212 -0
  123. snappy/geometric_structure/cusp_neighborhood/__init__.py +3 -0
  124. snappy/geometric_structure/cusp_neighborhood/complex_cusp_cross_section.py +697 -0
  125. snappy/geometric_structure/cusp_neighborhood/cusp_cross_section_base.py +484 -0
  126. snappy/geometric_structure/cusp_neighborhood/exceptions.py +42 -0
  127. snappy/geometric_structure/cusp_neighborhood/real_cusp_cross_section.py +298 -0
  128. snappy/geometric_structure/cusp_neighborhood/tiles_for_cusp_neighborhood.py +159 -0
  129. snappy/geometric_structure/cusp_neighborhood/vertices.py +32 -0
  130. snappy/geometric_structure/geodesic/__init__.py +0 -0
  131. snappy/geometric_structure/geodesic/add_core_curves.py +152 -0
  132. snappy/geometric_structure/geodesic/avoid_core_curves.py +369 -0
  133. snappy/geometric_structure/geodesic/canonical_keys.py +52 -0
  134. snappy/geometric_structure/geodesic/check_away_from_core_curve.py +60 -0
  135. snappy/geometric_structure/geodesic/constants.py +6 -0
  136. snappy/geometric_structure/geodesic/exceptions.py +22 -0
  137. snappy/{drilling → geometric_structure/geodesic}/fixed_points.py +34 -9
  138. snappy/{drilling/geodesic_info.py → geometric_structure/geodesic/geodesic_start_point_info.py} +139 -180
  139. snappy/geometric_structure/geodesic/graph_trace_helper.py +67 -0
  140. snappy/geometric_structure/geodesic/line.py +30 -0
  141. snappy/geometric_structure/geodesic/multiplicity.py +127 -0
  142. snappy/geometric_structure/geodesic/tiles_for_geodesic.py +101 -0
  143. snappy/geometric_structure/test.py +22 -0
  144. snappy/gui.py +23 -13
  145. snappy/horoviewer.py +7 -7
  146. snappy/hyperboloid/__init__.py +96 -31
  147. snappy/hyperboloid/distances.py +245 -0
  148. snappy/hyperboloid/horoball.py +19 -0
  149. snappy/hyperboloid/line.py +35 -0
  150. snappy/hyperboloid/point.py +9 -0
  151. snappy/hyperboloid/triangle.py +29 -0
  152. snappy/isometry_signature.py +382 -0
  153. snappy/len_spec/__init__.py +596 -0
  154. snappy/len_spec/geodesic_info.py +110 -0
  155. snappy/len_spec/geodesic_key_info_dict.py +117 -0
  156. snappy/len_spec/geodesic_piece.py +143 -0
  157. snappy/len_spec/geometric_structure.py +182 -0
  158. snappy/len_spec/geometry.py +80 -0
  159. snappy/len_spec/length_spectrum_geodesic_info.py +170 -0
  160. snappy/len_spec/spine.py +206 -0
  161. snappy/len_spec/test.py +24 -0
  162. snappy/len_spec/test_cases.py +69 -0
  163. snappy/len_spec/tile.py +275 -0
  164. snappy/len_spec/word.py +86 -0
  165. snappy/math_basics.py +39 -13
  166. snappy/matrix.py +52 -9
  167. snappy/number.py +12 -6
  168. snappy/numeric_output_checker.py +2 -3
  169. snappy/pari.py +8 -4
  170. snappy/phone_home.py +2 -1
  171. snappy/polyviewer.py +8 -8
  172. snappy/ptolemy/__init__.py +1 -1
  173. snappy/ptolemy/component.py +2 -2
  174. snappy/ptolemy/coordinates.py +25 -25
  175. snappy/ptolemy/findLoops.py +9 -9
  176. snappy/ptolemy/manifoldMethods.py +27 -29
  177. snappy/ptolemy/polynomial.py +50 -57
  178. snappy/ptolemy/processFileBase.py +60 -0
  179. snappy/ptolemy/ptolemyVariety.py +109 -41
  180. snappy/ptolemy/reginaWrapper.py +4 -4
  181. snappy/ptolemy/rur.py +1 -1
  182. snappy/ptolemy/solutionsToPrimeIdealGroebnerBasis.py +9 -9
  183. snappy/ptolemy/test.py +99 -54
  184. snappy/ptolemy/utilities.py +1 -1
  185. snappy/raytracing/__init__.py +64 -0
  186. snappy/raytracing/additional_horospheres.py +64 -0
  187. snappy/raytracing/additional_len_spec_choices.py +63 -0
  188. snappy/raytracing/cohomology_fractal.py +0 -3
  189. snappy/raytracing/eyeball.py +123 -0
  190. snappy/raytracing/finite_raytracing_data.py +17 -17
  191. snappy/raytracing/finite_viewer.py +15 -15
  192. snappy/raytracing/geodesic_tube_info.py +93 -63
  193. snappy/raytracing/geodesics.py +94 -64
  194. snappy/raytracing/geodesics_window.py +56 -34
  195. snappy/raytracing/gui_utilities.py +21 -6
  196. snappy/raytracing/hyperboloid_navigation.py +29 -4
  197. snappy/raytracing/hyperboloid_utilities.py +73 -73
  198. snappy/raytracing/ideal_raytracing_data.py +121 -91
  199. snappy/raytracing/inside_viewer.py +199 -66
  200. snappy/raytracing/pack.py +22 -0
  201. snappy/raytracing/raytracing_data.py +37 -25
  202. snappy/raytracing/raytracing_view.py +70 -65
  203. snappy/raytracing/shaders/Eye.png +0 -0
  204. snappy/raytracing/shaders/NonGeometric.png +0 -0
  205. snappy/raytracing/shaders/__init__.py +39 -3
  206. snappy/raytracing/shaders/fragment.glsl +451 -133
  207. snappy/raytracing/test.py +29 -0
  208. snappy/raytracing/tooltip.py +146 -0
  209. snappy/raytracing/upper_halfspace_utilities.py +42 -9
  210. snappy/sage_helper.py +67 -134
  211. snappy/settings.py +90 -77
  212. snappy/shell.py +2 -0
  213. snappy/snap/character_varieties.py +2 -2
  214. snappy/snap/find_field.py +4 -3
  215. snappy/snap/fundamental_polyhedron.py +2 -2
  216. snappy/snap/kernel_structures.py +5 -1
  217. snappy/snap/nsagetools.py +9 -8
  218. snappy/snap/peripheral/dual_cellulation.py +4 -3
  219. snappy/snap/peripheral/peripheral.py +2 -2
  220. snappy/snap/peripheral/surface.py +5 -5
  221. snappy/snap/peripheral/test.py +1 -1
  222. snappy/snap/polished_reps.py +8 -8
  223. snappy/snap/slice_obs_HKL.py +16 -14
  224. snappy/snap/t3mlite/arrow.py +3 -3
  225. snappy/snap/t3mlite/edge.py +3 -3
  226. snappy/snap/t3mlite/homology.py +2 -2
  227. snappy/snap/t3mlite/mcomplex.py +3 -3
  228. snappy/snap/t3mlite/simplex.py +12 -0
  229. snappy/snap/t3mlite/spun.py +18 -17
  230. snappy/snap/t3mlite/test_vs_regina.py +4 -4
  231. snappy/snap/test.py +37 -53
  232. snappy/snap/utilities.py +4 -5
  233. snappy/test.py +121 -138
  234. snappy/test_cases.py +263 -0
  235. snappy/testing.py +131 -0
  236. snappy/tiling/__init__.py +2 -0
  237. snappy/tiling/canonical_key_dict.py +59 -0
  238. snappy/tiling/dict_based_set.py +79 -0
  239. snappy/tiling/floor.py +49 -0
  240. snappy/tiling/hyperboloid_dict.py +54 -0
  241. snappy/tiling/iter_utils.py +78 -0
  242. snappy/tiling/lifted_tetrahedron.py +22 -0
  243. snappy/tiling/lifted_tetrahedron_set.py +54 -0
  244. snappy/tiling/real_hash_dict.py +164 -0
  245. snappy/tiling/test.py +23 -0
  246. snappy/tiling/tile.py +215 -0
  247. snappy/tiling/triangle.py +33 -0
  248. snappy/tkterminal.py +113 -84
  249. snappy/twister/main.py +1 -7
  250. snappy/twister/twister_core.cpython-311-darwin.so +0 -0
  251. snappy/upper_halfspace/__init__.py +78 -17
  252. snappy/verify/__init__.py +3 -7
  253. snappy/verify/{verifyCanonical.py → canonical.py} +78 -70
  254. snappy/verify/complex_volume/adjust_torsion.py +1 -2
  255. snappy/verify/complex_volume/closed.py +13 -13
  256. snappy/verify/complex_volume/cusped.py +6 -6
  257. snappy/verify/complex_volume/extended_bloch.py +5 -8
  258. snappy/verify/{cuspTranslations.py → cusp_translations.py} +1 -1
  259. snappy/verify/edge_equations.py +80 -0
  260. snappy/verify/exceptions.py +0 -55
  261. snappy/verify/{verifyHyperbolicity.py → hyperbolicity.py} +3 -3
  262. snappy/verify/interval_newton_shapes_engine.py +7 -5
  263. snappy/verify/interval_tree.py +5 -5
  264. snappy/verify/krawczyk_shapes_engine.py +17 -18
  265. snappy/verify/maximal_cusp_area_matrix/__init__.py +7 -74
  266. snappy/verify/maximal_cusp_area_matrix/cusp_tiling_engine.py +3 -4
  267. snappy/verify/maximal_cusp_area_matrix/cusp_translate_engine.py +1 -1
  268. snappy/verify/{realAlgebra.py → real_algebra.py} +1 -1
  269. snappy/verify/shapes.py +5 -3
  270. snappy/verify/short_slopes.py +39 -41
  271. snappy/verify/{squareExtensions.py → square_extensions.py} +14 -11
  272. snappy/verify/test.py +57 -60
  273. snappy/verify/upper_halfspace/extended_matrix.py +1 -1
  274. snappy/verify/upper_halfspace/finite_point.py +3 -4
  275. snappy/verify/upper_halfspace/ideal_point.py +9 -9
  276. snappy/verify/volume.py +2 -2
  277. snappy/version.py +2 -2
  278. {snappy-3.1.1.dist-info → snappy-3.2.dist-info}/METADATA +26 -11
  279. snappy-3.2.dist-info/RECORD +503 -0
  280. {snappy-3.1.1.dist-info → snappy-3.2.dist-info}/WHEEL +1 -1
  281. {snappy-3.1.1.dist-info → snappy-3.2.dist-info}/top_level.txt +6 -1
  282. snappy/__pycache__/__init__.cpython-311.pyc +0 -0
  283. snappy/__pycache__/browser.cpython-311.pyc +0 -0
  284. snappy/__pycache__/cache.cpython-311.pyc +0 -0
  285. snappy/__pycache__/database.cpython-311.pyc +0 -0
  286. snappy/__pycache__/db_utilities.cpython-311.pyc +0 -0
  287. snappy/__pycache__/decorated_isosig.cpython-311.pyc +0 -0
  288. snappy/__pycache__/exceptions.cpython-311.pyc +0 -0
  289. snappy/__pycache__/export_stl.cpython-311.pyc +0 -0
  290. snappy/__pycache__/filedialog.cpython-311.pyc +0 -0
  291. snappy/__pycache__/gui.cpython-311.pyc +0 -0
  292. snappy/__pycache__/horoviewer.cpython-311.pyc +0 -0
  293. snappy/__pycache__/infowindow.cpython-311.pyc +0 -0
  294. snappy/__pycache__/math_basics.cpython-311.pyc +0 -0
  295. snappy/__pycache__/matrix.cpython-311.pyc +0 -0
  296. snappy/__pycache__/number.cpython-311.pyc +0 -0
  297. snappy/__pycache__/numeric_output_checker.cpython-311.pyc +0 -0
  298. snappy/__pycache__/pari.cpython-311.pyc +0 -0
  299. snappy/__pycache__/polyviewer.cpython-311.pyc +0 -0
  300. snappy/__pycache__/sage_helper.cpython-311.pyc +0 -0
  301. snappy/__pycache__/version.cpython-311.pyc +0 -0
  302. snappy/doc/_sources/verify_canon.rst.txt +0 -90
  303. snappy/doc/_static/js/html5shiv-printshiv.min.js +0 -4
  304. snappy/doc/_static/js/html5shiv.min.js +0 -4
  305. snappy/doc/verify_canon.html +0 -304
  306. snappy/drilling/__pycache__/__init__.cpython-311.pyc +0 -0
  307. snappy/drilling/__pycache__/constants.cpython-311.pyc +0 -0
  308. snappy/drilling/__pycache__/crush.cpython-311.pyc +0 -0
  309. snappy/drilling/__pycache__/cusps.cpython-311.pyc +0 -0
  310. snappy/drilling/__pycache__/debug.cpython-311.pyc +0 -0
  311. snappy/drilling/__pycache__/epsilons.cpython-311.pyc +0 -0
  312. snappy/drilling/__pycache__/exceptions.cpython-311.pyc +0 -0
  313. snappy/drilling/__pycache__/fixed_points.cpython-311.pyc +0 -0
  314. snappy/drilling/__pycache__/geodesic_info.cpython-311.pyc +0 -0
  315. snappy/drilling/__pycache__/geodesic_tube.cpython-311.pyc +0 -0
  316. snappy/drilling/__pycache__/geometric_structure.cpython-311.pyc +0 -0
  317. snappy/drilling/__pycache__/line.cpython-311.pyc +0 -0
  318. snappy/drilling/__pycache__/moves.cpython-311.pyc +0 -0
  319. snappy/drilling/__pycache__/peripheral_curves.cpython-311.pyc +0 -0
  320. snappy/drilling/__pycache__/perturb.cpython-311.pyc +0 -0
  321. snappy/drilling/__pycache__/quotient_space.cpython-311.pyc +0 -0
  322. snappy/drilling/__pycache__/spatial_dict.cpython-311.pyc +0 -0
  323. snappy/drilling/__pycache__/subdivide.cpython-311.pyc +0 -0
  324. snappy/drilling/__pycache__/tracing.cpython-311.pyc +0 -0
  325. snappy/drilling/geodesic_tube.py +0 -441
  326. snappy/drilling/geometric_structure.py +0 -366
  327. snappy/drilling/line.py +0 -122
  328. snappy/drilling/quotient_space.py +0 -94
  329. snappy/drilling/spatial_dict.py +0 -128
  330. snappy/exterior_to_link/__pycache__/__init__.cpython-311.pyc +0 -0
  331. snappy/exterior_to_link/__pycache__/barycentric_geometry.cpython-311.pyc +0 -0
  332. snappy/exterior_to_link/__pycache__/exceptions.cpython-311.pyc +0 -0
  333. snappy/exterior_to_link/__pycache__/hyp_utils.cpython-311.pyc +0 -0
  334. snappy/exterior_to_link/__pycache__/link_projection.cpython-311.pyc +0 -0
  335. snappy/exterior_to_link/__pycache__/main.cpython-311.pyc +0 -0
  336. snappy/exterior_to_link/__pycache__/mcomplex_with_expansion.cpython-311.pyc +0 -0
  337. snappy/exterior_to_link/__pycache__/mcomplex_with_link.cpython-311.pyc +0 -0
  338. snappy/exterior_to_link/__pycache__/mcomplex_with_memory.cpython-311.pyc +0 -0
  339. snappy/exterior_to_link/__pycache__/pl_utils.cpython-311.pyc +0 -0
  340. snappy/exterior_to_link/__pycache__/put_in_S3.cpython-311.pyc +0 -0
  341. snappy/exterior_to_link/__pycache__/rational_linear_algebra.cpython-311.pyc +0 -0
  342. snappy/exterior_to_link/__pycache__/simplify_to_base_tri.cpython-311.pyc +0 -0
  343. snappy/exterior_to_link/__pycache__/stored_moves.cpython-311.pyc +0 -0
  344. snappy/hyperboloid/__pycache__/__init__.cpython-311.pyc +0 -0
  345. snappy/manifolds/__pycache__/__init__.cpython-311.pyc +0 -0
  346. snappy/ptolemy/__pycache__/__init__.cpython-311.pyc +0 -0
  347. snappy/ptolemy/__pycache__/component.cpython-311.pyc +0 -0
  348. snappy/ptolemy/__pycache__/coordinates.cpython-311.pyc +0 -0
  349. snappy/ptolemy/__pycache__/fieldExtensions.cpython-311.pyc +0 -0
  350. snappy/ptolemy/__pycache__/findLoops.cpython-311.pyc +0 -0
  351. snappy/ptolemy/__pycache__/homology.cpython-311.pyc +0 -0
  352. snappy/ptolemy/__pycache__/manifoldMethods.cpython-311.pyc +0 -0
  353. snappy/ptolemy/__pycache__/matrix.cpython-311.pyc +0 -0
  354. snappy/ptolemy/__pycache__/numericalSolutionsToGroebnerBasis.cpython-311.pyc +0 -0
  355. snappy/ptolemy/__pycache__/polynomial.cpython-311.pyc +0 -0
  356. snappy/ptolemy/__pycache__/processComponents.cpython-311.pyc +0 -0
  357. snappy/ptolemy/__pycache__/processFileBase.cpython-311.pyc +0 -0
  358. snappy/ptolemy/__pycache__/processFileDispatch.cpython-311.pyc +0 -0
  359. snappy/ptolemy/__pycache__/processMagmaFile.cpython-311.pyc +0 -0
  360. snappy/ptolemy/__pycache__/processRurFile.cpython-311.pyc +0 -0
  361. snappy/ptolemy/__pycache__/ptolemyGeneralizedObstructionClass.cpython-311.pyc +0 -0
  362. snappy/ptolemy/__pycache__/ptolemyObstructionClass.cpython-311.pyc +0 -0
  363. snappy/ptolemy/__pycache__/ptolemyVariety.cpython-311.pyc +0 -0
  364. snappy/ptolemy/__pycache__/ptolemyVarietyPrimeIdealGroebnerBasis.cpython-311.pyc +0 -0
  365. snappy/ptolemy/__pycache__/rur.cpython-311.pyc +0 -0
  366. snappy/ptolemy/__pycache__/solutionsToPrimeIdealGroebnerBasis.cpython-311.pyc +0 -0
  367. snappy/ptolemy/__pycache__/utilities.cpython-311.pyc +0 -0
  368. snappy/raytracing/__pycache__/__init__.cpython-311.pyc +0 -0
  369. snappy/raytracing/__pycache__/finite_raytracing_data.cpython-311.pyc +0 -0
  370. snappy/raytracing/__pycache__/gui_utilities.cpython-311.pyc +0 -0
  371. snappy/raytracing/__pycache__/hyperboloid_navigation.cpython-311.pyc +0 -0
  372. snappy/raytracing/__pycache__/hyperboloid_utilities.cpython-311.pyc +0 -0
  373. snappy/raytracing/__pycache__/ideal_raytracing_data.cpython-311.pyc +0 -0
  374. snappy/raytracing/__pycache__/inside_viewer.cpython-311.pyc +0 -0
  375. snappy/raytracing/__pycache__/raytracing_data.cpython-311.pyc +0 -0
  376. snappy/raytracing/__pycache__/raytracing_view.cpython-311.pyc +0 -0
  377. snappy/raytracing/__pycache__/upper_halfspace_utilities.cpython-311.pyc +0 -0
  378. snappy/raytracing/__pycache__/view_scale_controller.cpython-311.pyc +0 -0
  379. snappy/raytracing/zoom_slider/__pycache__/__init__.cpython-311.pyc +0 -0
  380. snappy/snap/__pycache__/__init__.cpython-311.pyc +0 -0
  381. snappy/snap/__pycache__/character_varieties.cpython-311.pyc +0 -0
  382. snappy/snap/__pycache__/fundamental_polyhedron.cpython-311.pyc +0 -0
  383. snappy/snap/__pycache__/interval_reps.cpython-311.pyc +0 -0
  384. snappy/snap/__pycache__/kernel_structures.cpython-311.pyc +0 -0
  385. snappy/snap/__pycache__/mcomplex_base.cpython-311.pyc +0 -0
  386. snappy/snap/__pycache__/nsagetools.cpython-311.pyc +0 -0
  387. snappy/snap/__pycache__/polished_reps.cpython-311.pyc +0 -0
  388. snappy/snap/__pycache__/shapes.cpython-311.pyc +0 -0
  389. snappy/snap/__pycache__/slice_obs_HKL.cpython-311.pyc +0 -0
  390. snappy/snap/__pycache__/utilities.cpython-311.pyc +0 -0
  391. snappy/snap/peripheral/__pycache__/__init__.cpython-311.pyc +0 -0
  392. snappy/snap/peripheral/__pycache__/dual_cellulation.cpython-311.pyc +0 -0
  393. snappy/snap/peripheral/__pycache__/link.cpython-311.pyc +0 -0
  394. snappy/snap/peripheral/__pycache__/peripheral.cpython-311.pyc +0 -0
  395. snappy/snap/peripheral/__pycache__/surface.cpython-311.pyc +0 -0
  396. snappy/snap/t3mlite/__pycache__/__init__.cpython-311.pyc +0 -0
  397. snappy/snap/t3mlite/__pycache__/arrow.cpython-311.pyc +0 -0
  398. snappy/snap/t3mlite/__pycache__/corner.cpython-311.pyc +0 -0
  399. snappy/snap/t3mlite/__pycache__/edge.cpython-311.pyc +0 -0
  400. snappy/snap/t3mlite/__pycache__/face.cpython-311.pyc +0 -0
  401. snappy/snap/t3mlite/__pycache__/files.cpython-311.pyc +0 -0
  402. snappy/snap/t3mlite/__pycache__/homology.cpython-311.pyc +0 -0
  403. snappy/snap/t3mlite/__pycache__/linalg.cpython-311.pyc +0 -0
  404. snappy/snap/t3mlite/__pycache__/mcomplex.cpython-311.pyc +0 -0
  405. snappy/snap/t3mlite/__pycache__/perm4.cpython-311.pyc +0 -0
  406. snappy/snap/t3mlite/__pycache__/simplex.cpython-311.pyc +0 -0
  407. snappy/snap/t3mlite/__pycache__/spun.cpython-311.pyc +0 -0
  408. snappy/snap/t3mlite/__pycache__/surface.cpython-311.pyc +0 -0
  409. snappy/snap/t3mlite/__pycache__/tetrahedron.cpython-311.pyc +0 -0
  410. snappy/snap/t3mlite/__pycache__/vertex.cpython-311.pyc +0 -0
  411. snappy/togl/__init__.py +0 -3
  412. snappy/togl/darwin-tk8.6/Togl2.1/LICENSE +0 -28
  413. snappy/togl/darwin-tk8.6/Togl2.1/libTogl2.1.dylib +0 -0
  414. snappy/togl/darwin-tk8.6/Togl2.1/pkgIndex.tcl +0 -5
  415. snappy/togl/darwin-tk8.7/Togl2.1/LICENSE +0 -28
  416. snappy/togl/darwin-tk8.7/Togl2.1/libTogl2.1.dylib +0 -0
  417. snappy/togl/darwin-tk8.7/Togl2.1/pkgIndex.tcl +0 -5
  418. snappy/togl/linux2-x86_64-tk8.6/Togl2.1/LICENSE +0 -28
  419. snappy/togl/linux2-x86_64-tk8.6/Togl2.1/libTogl2.1.so +0 -0
  420. snappy/togl/linux2-x86_64-tk8.6/Togl2.1/pkgIndex.tcl +0 -5
  421. snappy/togl/win32VC-tk8.6/Togl2.1/LICENSE +0 -28
  422. snappy/togl/win32VC-tk8.6/Togl2.1/Togl21.dll +0 -0
  423. snappy/togl/win32VC-tk8.6/Togl2.1/Togl21.lib +0 -0
  424. snappy/togl/win32VC-tk8.6/Togl2.1/pkgIndex.tcl +0 -6
  425. snappy/togl/win32VC-x86_64-tk8.6/Togl2.1/LICENSE +0 -28
  426. snappy/togl/win32VC-x86_64-tk8.6/Togl2.1/Togl21.dll +0 -0
  427. snappy/togl/win32VC-x86_64-tk8.6/Togl2.1/Togl21.lib +0 -0
  428. snappy/togl/win32VC-x86_64-tk8.6/Togl2.1/pkgIndex.tcl +0 -6
  429. snappy/twister/__pycache__/__init__.cpython-311.pyc +0 -0
  430. snappy/twister/__pycache__/main.cpython-311.pyc +0 -0
  431. snappy/upper_halfspace/__pycache__/__init__.cpython-311.pyc +0 -0
  432. snappy/upper_halfspace/__pycache__/ideal_point.cpython-311.pyc +0 -0
  433. snappy/verify/__pycache__/__init__.cpython-311.pyc +0 -0
  434. snappy/verify/__pycache__/cuspCrossSection.cpython-311.pyc +0 -0
  435. snappy/verify/__pycache__/cuspTranslations.cpython-311.pyc +0 -0
  436. snappy/verify/__pycache__/cusp_areas.cpython-311.pyc +0 -0
  437. snappy/verify/__pycache__/cusp_shapes.cpython-311.pyc +0 -0
  438. snappy/verify/__pycache__/exceptions.cpython-311.pyc +0 -0
  439. snappy/verify/__pycache__/interval_newton_shapes_engine.cpython-311.pyc +0 -0
  440. snappy/verify/__pycache__/interval_tree.cpython-311.pyc +0 -0
  441. snappy/verify/__pycache__/krawczyk_shapes_engine.cpython-311.pyc +0 -0
  442. snappy/verify/__pycache__/realAlgebra.cpython-311.pyc +0 -0
  443. snappy/verify/__pycache__/shapes.cpython-311.pyc +0 -0
  444. snappy/verify/__pycache__/short_slopes.cpython-311.pyc +0 -0
  445. snappy/verify/__pycache__/squareExtensions.cpython-311.pyc +0 -0
  446. snappy/verify/__pycache__/verifyCanonical.cpython-311.pyc +0 -0
  447. snappy/verify/__pycache__/verifyHyperbolicity.cpython-311.pyc +0 -0
  448. snappy/verify/__pycache__/volume.cpython-311.pyc +0 -0
  449. snappy/verify/complex_volume/__pycache__/__init__.cpython-311.pyc +0 -0
  450. snappy/verify/complex_volume/__pycache__/adjust_torsion.cpython-311.pyc +0 -0
  451. snappy/verify/complex_volume/__pycache__/closed.cpython-311.pyc +0 -0
  452. snappy/verify/complex_volume/__pycache__/compute_ptolemys.cpython-311.pyc +0 -0
  453. snappy/verify/complex_volume/__pycache__/cusped.cpython-311.pyc +0 -0
  454. snappy/verify/complex_volume/__pycache__/extended_bloch.cpython-311.pyc +0 -0
  455. snappy/verify/cuspCrossSection.py +0 -1422
  456. snappy/verify/maximal_cusp_area_matrix/__pycache__/__init__.cpython-311.pyc +0 -0
  457. snappy/verify/maximal_cusp_area_matrix/__pycache__/cusp_tiling_engine.cpython-311.pyc +0 -0
  458. snappy/verify/maximal_cusp_area_matrix/__pycache__/cusp_translate_engine.cpython-311.pyc +0 -0
  459. snappy/verify/upper_halfspace/__pycache__/__init__.cpython-311.pyc +0 -0
  460. snappy/verify/upper_halfspace/__pycache__/extended_matrix.cpython-311.pyc +0 -0
  461. snappy/verify/upper_halfspace/__pycache__/finite_point.cpython-311.pyc +0 -0
  462. snappy/verify/upper_halfspace/__pycache__/ideal_point.cpython-311.pyc +0 -0
  463. snappy-3.1.1.dist-info/RECORD +0 -585
  464. {snappy-3.1.1.dist-info → snappy-3.2.dist-info}/entry_points.txt +0 -0
@@ -1,23 +1,24 @@
1
+
2
+
1
3
  <!DOCTYPE html>
2
- <html class="writer-html5" lang="en" >
4
+ <html class="writer-html5" lang="en" data-content_root="./">
3
5
  <head>
4
- <meta charset="utf-8" /><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" />
6
+ <meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" />
5
7
 
6
8
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
- <title>Additional Classes &mdash; SnapPy 3.1.1 documentation</title>
8
- <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
9
- <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
10
- <link rel="stylesheet" href="_static/snappy_sphinx_rtd_theme.css" type="text/css" />
11
- <link rel="shortcut icon" href="_static/SnapPy.ico"/>
12
- <!--[if lt IE 9]>
13
- <script src="_static/js/html5shiv.min.js"></script>
14
- <![endif]-->
9
+ <title>Additional Classes &mdash; SnapPy 3.2 documentation</title>
10
+ <link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
11
+ <link rel="stylesheet" type="text/css" href="_static/css/theme.css?v=e59714d7" />
12
+ <link rel="stylesheet" type="text/css" href="_static/snappy_sphinx_rtd_theme.css?v=1b8ec2a8" />
13
+
15
14
 
16
- <script src="_static/jquery.js"></script>
17
- <script src="_static/_sphinx_javascript_frameworks_compat.js"></script>
18
- <script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
19
- <script src="_static/doctools.js"></script>
20
- <script src="_static/sphinx_highlight.js"></script>
15
+ <link rel="shortcut icon" href="_static/SnapPy.ico"/>
16
+ <script src="_static/jquery.js?v=5d32c60e"></script>
17
+ <script src="_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
18
+ <script src="_static/documentation_options.js?v=828ea960"></script>
19
+ <script src="_static/doctools.js?v=9a2dae69"></script>
20
+ <script src="_static/sphinx_highlight.js?v=dc90522c"></script>
21
+ <script async="async" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
21
22
  <script src="_static/js/theme.js"></script>
22
23
  <link rel="index" title="Index" href="genindex.html" />
23
24
  <link rel="search" title="Search" href="search.html" />
@@ -37,9 +38,6 @@
37
38
  SnapPy
38
39
  <img src="_static/SnapPy-horizontal-128.png" class="logo" alt="Logo"/>
39
40
  </a>
40
- <div class="version">
41
- 3.1.1
42
- </div>
43
41
  <div role="search">
44
42
  <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
45
43
  <input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
@@ -71,11 +69,15 @@
71
69
  <li class="toctree-l4"><a class="reference internal" href="#snappy.HolonomyGroup"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup</span></code></a><ul>
72
70
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.O31"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.O31()</span></code></a></li>
73
71
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.SL2C"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.SL2C()</span></code></a></li>
72
+ <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.category"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.category()</span></code></a></li>
74
73
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.character_variety_vars_and_polys"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.character_variety_vars_and_polys()</span></code></a></li>
75
74
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.complex_length"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.complex_length()</span></code></a></li>
75
+ <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.dump"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.dump()</span></code></a></li>
76
+ <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.dumps"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.dumps()</span></code></a></li>
76
77
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.gap_string"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.gap_string()</span></code></a></li>
77
78
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.generators"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.generators()</span></code></a></li>
78
79
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.generators_in_originals"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.generators_in_originals()</span></code></a></li>
80
+ <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.get_custom_name"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.get_custom_name()</span></code></a></li>
79
81
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.longitude"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.longitude()</span></code></a></li>
80
82
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.magma_string"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.magma_string()</span></code></a></li>
81
83
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.meridian"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.meridian()</span></code></a></li>
@@ -83,9 +85,13 @@
83
85
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.num_original_generators"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.num_original_generators()</span></code></a></li>
84
86
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.num_relators"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.num_relators()</span></code></a></li>
85
87
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.original_generators"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.original_generators()</span></code></a></li>
88
+ <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.parent"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.parent()</span></code></a></li>
86
89
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.peripheral_curves"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.peripheral_curves()</span></code></a></li>
87
90
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.relators"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.relators()</span></code></a></li>
91
+ <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.rename"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.rename()</span></code></a></li>
92
+ <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.reset_name"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.reset_name()</span></code></a></li>
88
93
  <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.sage"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.sage()</span></code></a></li>
94
+ <li class="toctree-l5"><a class="reference internal" href="#snappy.HolonomyGroup.save"><code class="docutils literal notranslate"><span class="pre">HolonomyGroup.save()</span></code></a></li>
89
95
  </ul>
90
96
  </li>
91
97
  </ul>
@@ -133,7 +139,6 @@
133
139
  <li class="toctree-l5"><a class="reference internal" href="#snappy.DirichletDomain.spine_radius"><code class="docutils literal notranslate"><span class="pre">DirichletDomain.spine_radius()</span></code></a></li>
134
140
  <li class="toctree-l5"><a class="reference internal" href="#snappy.DirichletDomain.triangulation"><code class="docutils literal notranslate"><span class="pre">DirichletDomain.triangulation()</span></code></a></li>
135
141
  <li class="toctree-l5"><a class="reference internal" href="#snappy.DirichletDomain.vertex_list"><code class="docutils literal notranslate"><span class="pre">DirichletDomain.vertex_list()</span></code></a></li>
136
- <li class="toctree-l5"><a class="reference internal" href="#snappy.DirichletDomain.view"><code class="docutils literal notranslate"><span class="pre">DirichletDomain.view()</span></code></a></li>
137
142
  <li class="toctree-l5"><a class="reference internal" href="#snappy.DirichletDomain.volume"><code class="docutils literal notranslate"><span class="pre">DirichletDomain.volume()</span></code></a></li>
138
143
  </ul>
139
144
  </li>
@@ -207,7 +212,7 @@
207
212
  <div itemprop="articleBody">
208
213
 
209
214
  <section id="module-snappy">
210
- <span id="additional-classes"></span><h1>Additional Classes<a class="headerlink" href="#module-snappy" title="Permalink to this heading"></a></h1>
215
+ <span id="additional-classes"></span><h1>Additional Classes<a class="headerlink" href="#module-snappy" title="Link to this heading"></a></h1>
211
216
  <p>SnapPy is a Cython wrapping of Jeff Weeks’ SnapPea kernel.</p>
212
217
  <dl class="simple">
213
218
  <dt>The module defines the following classes:</dt><dd><p>Triangulation, Manifold, ManifoldHP, AbelianGroup, FundamentalGroup,
@@ -229,10 +234,10 @@ InfinityTangle, IdentityBraid, random_link, DTcodec.</p>
229
234
  </dd>
230
235
  </dl>
231
236
  <section id="abeliangroup">
232
- <h2>AbelianGroup<a class="headerlink" href="#abeliangroup" title="Permalink to this heading"></a></h2>
237
+ <h2>AbelianGroup<a class="headerlink" href="#abeliangroup" title="Link to this heading"></a></h2>
233
238
  <dl class="py class">
234
239
  <dt class="sig sig-object py" id="snappy.AbelianGroup">
235
- <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">snappy.</span></span><span class="sig-name descname"><span class="pre">AbelianGroup</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">presentation</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">elementary_divisors</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">[]</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.AbelianGroup" title="Permalink to this definition"></a></dt>
240
+ <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">snappy.</span></span><span class="sig-name descname"><span class="pre">AbelianGroup</span></span><a class="headerlink" href="#snappy.AbelianGroup" title="Link to this definition"></a></dt>
236
241
  <dd><p>An AbelianGroup object represents a finitely generated abelian group,
237
242
  usually the first homology group of a snappy Manifold.</p>
238
243
  <p>Instantiate an abelian group by its elementary divisors:</p>
@@ -265,26 +270,26 @@ Snappy stores an abelian group as a list of elementary divisors:</p>
265
270
  </div>
266
271
  <dl class="py method">
267
272
  <dt class="sig sig-object py" id="snappy.AbelianGroup.betti_number">
268
- <span class="sig-name descname"><span class="pre">betti_number</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.AbelianGroup.betti_number" title="Permalink to this definition"></a></dt>
273
+ <span class="sig-name descname"><span class="pre">betti_number</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.AbelianGroup.betti_number" title="Link to this definition"></a></dt>
269
274
  <dd><p>The rank of the maximal free abelian subgroup.</p>
270
275
  </dd></dl>
271
276
 
272
277
  <dl class="py method">
273
278
  <dt class="sig sig-object py" id="snappy.AbelianGroup.elementary_divisors">
274
- <span class="sig-name descname"><span class="pre">elementary_divisors</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.AbelianGroup.elementary_divisors" title="Permalink to this definition"></a></dt>
279
+ <span class="sig-name descname"><span class="pre">elementary_divisors</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.AbelianGroup.elementary_divisors" title="Link to this definition"></a></dt>
275
280
  <dd><p>The elementary divisors of this finitely generated abelian group.</p>
276
281
  </dd></dl>
277
282
 
278
283
  <dl class="py method">
279
284
  <dt class="sig sig-object py" id="snappy.AbelianGroup.order">
280
- <span class="sig-name descname"><span class="pre">order</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.AbelianGroup.order" title="Permalink to this definition"></a></dt>
285
+ <span class="sig-name descname"><span class="pre">order</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.AbelianGroup.order" title="Link to this definition"></a></dt>
281
286
  <dd><p>The order of the group. Returns the string ‘infinite’ if the
282
287
  group is infinite.</p>
283
288
  </dd></dl>
284
289
 
285
290
  <dl class="py method">
286
291
  <dt class="sig sig-object py" id="snappy.AbelianGroup.rank">
287
- <span class="sig-name descname"><span class="pre">rank</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.AbelianGroup.rank" title="Permalink to this definition"></a></dt>
292
+ <span class="sig-name descname"><span class="pre">rank</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.AbelianGroup.rank" title="Link to this definition"></a></dt>
288
293
  <dd><p>The rank of the group.</p>
289
294
  </dd></dl>
290
295
 
@@ -292,10 +297,10 @@ group is infinite.</p>
292
297
 
293
298
  </section>
294
299
  <section id="fundamentalgroup">
295
- <h2>FundamentalGroup<a class="headerlink" href="#fundamentalgroup" title="Permalink to this heading"></a></h2>
300
+ <h2>FundamentalGroup<a class="headerlink" href="#fundamentalgroup" title="Link to this heading"></a></h2>
296
301
  <dl class="py class">
297
302
  <dt class="sig sig-object py" id="snappy.HolonomyGroup">
298
- <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">snappy.</span></span><span class="sig-name descname"><span class="pre">HolonomyGroup</span></span><a class="headerlink" href="#snappy.HolonomyGroup" title="Permalink to this definition"></a></dt>
303
+ <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">snappy.</span></span><span class="sig-name descname"><span class="pre">HolonomyGroup</span></span><a class="headerlink" href="#snappy.HolonomyGroup" title="Link to this definition"></a></dt>
299
304
  <dd><p>A FundamentalGroup represents a presentation of the fundamental
300
305
  group of a SnapPea Triangulation. Group elements are described as
301
306
  words in the generators a,b,…, where the inverse of a is denoted
@@ -347,24 +352,32 @@ with the FundamentalGroup class.</p>
347
352
  </div>
348
353
  <dl class="py method">
349
354
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.O31">
350
- <span class="sig-name descname"><span class="pre">O31</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">word</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.O31" title="Permalink to this definition"></a></dt>
355
+ <span class="sig-name descname"><span class="pre">O31</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">word</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.O31" title="Link to this definition"></a></dt>
351
356
  <dd><p>Return the image of the element represented by the input word
352
- under the holonomy representation, where Isom(H^3) is
353
- identified with SO(3,1).</p>
357
+ under the holonomy representation, where
358
+ <span class="math notranslate nohighlight">\(\text{Isom}(\mathbb{H}^3)\)</span> is
359
+ identified with <span class="math notranslate nohighlight">\(\text{SO}(3,1)\)</span>.</p>
354
360
  </dd></dl>
355
361
 
356
362
  <dl class="py method">
357
363
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.SL2C">
358
- <span class="sig-name descname"><span class="pre">SL2C</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">word</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.SL2C" title="Permalink to this definition"></a></dt>
364
+ <span class="sig-name descname"><span class="pre">SL2C</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">word</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.SL2C" title="Link to this definition"></a></dt>
359
365
  <dd><p>Return the image of the element represented by the input word
360
- under some SL(2,C) representation that lifts the holonomy
361
- representation. Note: the choice of lift is not guaranteed to
366
+ under some <span class="math notranslate nohighlight">\(\text{SL}(2,\mathbb{C})\)</span>-representation that
367
+ lifts the holonomy representation.
368
+ Note: the choice of lift is not guaranteed to
362
369
  vary continuously when filling coefficients are changed.</p>
363
370
  </dd></dl>
364
371
 
372
+ <dl class="py method">
373
+ <dt class="sig sig-object py" id="snappy.HolonomyGroup.category">
374
+ <span class="sig-name descname"><span class="pre">category</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.category" title="Link to this definition"></a></dt>
375
+ <dd><p>File: sage/structure/sage_object.pyx (starting at line 514)</p>
376
+ </dd></dl>
377
+
365
378
  <dl class="py method">
366
379
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.character_variety_vars_and_polys">
367
- <span class="sig-name descname"><span class="pre">character_variety_vars_and_polys</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">as_ideal</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.character_variety_vars_and_polys" title="Permalink to this definition"></a></dt>
380
+ <span class="sig-name descname"><span class="pre">character_variety_vars_and_polys</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">as_ideal</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.character_variety_vars_and_polys" title="Link to this definition"></a></dt>
368
381
  <dd><p>Returns a list of variables and a list polynomials where the
369
382
  polynomials generate the ideal defining the SL(2, C) character
370
383
  variety of this group. Each variable is of the form “Tw” where
@@ -395,14 +408,49 @@ ideal:</p>
395
408
 
396
409
  <dl class="py method">
397
410
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.complex_length">
398
- <span class="sig-name descname"><span class="pre">complex_length</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">word</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.complex_length" title="Permalink to this definition"></a></dt>
411
+ <span class="sig-name descname"><span class="pre">complex_length</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">word</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.complex_length" title="Link to this definition"></a></dt>
399
412
  <dd><p>Return the complex length of the isometry represented by the
400
413
  input word.</p>
401
414
  </dd></dl>
402
415
 
416
+ <dl class="py method">
417
+ <dt class="sig sig-object py" id="snappy.HolonomyGroup.dump">
418
+ <span class="sig-name descname"><span class="pre">dump</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">compress</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.dump" title="Link to this definition"></a></dt>
419
+ <dd><p>File: sage/structure/sage_object.pyx (starting at line 475)</p>
420
+ <p>Same as self.save(filename, compress)</p>
421
+ </dd></dl>
422
+
423
+ <dl class="py method">
424
+ <dt class="sig sig-object py" id="snappy.HolonomyGroup.dumps">
425
+ <span class="sig-name descname"><span class="pre">dumps</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">compress</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.dumps" title="Link to this definition"></a></dt>
426
+ <dd><p>File: sage/structure/sage_object.pyx (starting at line 481)</p>
427
+ <p>Dump <code class="docutils literal notranslate"><span class="pre">self</span></code> to a string <code class="docutils literal notranslate"><span class="pre">s</span></code>, which can later be reconstituted
428
+ as <code class="docutils literal notranslate"><span class="pre">self</span></code> using <code class="docutils literal notranslate"><span class="pre">loads(s)</span></code>.</p>
429
+ <p>There is an optional boolean argument <code class="docutils literal notranslate"><span class="pre">compress</span></code> which defaults to <code class="docutils literal notranslate"><span class="pre">True</span></code>.</p>
430
+ <p>EXAMPLES:</p>
431
+ <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">sage</span><span class="p">:</span> <span class="kn">from</span> <span class="nn">sage.misc.persist</span> <span class="kn">import</span> <span class="n">comp</span>
432
+ <span class="n">sage</span><span class="p">:</span> <span class="n">O</span> <span class="o">=</span> <span class="n">SageObject</span><span class="p">()</span>
433
+ <span class="n">sage</span><span class="p">:</span> <span class="n">p_comp</span> <span class="o">=</span> <span class="n">O</span><span class="o">.</span><span class="n">dumps</span><span class="p">()</span>
434
+ <span class="n">sage</span><span class="p">:</span> <span class="n">p_uncomp</span> <span class="o">=</span> <span class="n">O</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="n">compress</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
435
+ <span class="n">sage</span><span class="p">:</span> <span class="n">comp</span><span class="o">.</span><span class="n">decompress</span><span class="p">(</span><span class="n">p_comp</span><span class="p">)</span> <span class="o">==</span> <span class="n">p_uncomp</span>
436
+ <span class="kc">True</span>
437
+ <span class="n">sage</span><span class="p">:</span> <span class="kn">import</span> <span class="nn">pickletools</span>
438
+ <span class="n">sage</span><span class="p">:</span> <span class="n">pickletools</span><span class="o">.</span><span class="n">dis</span><span class="p">(</span><span class="n">p_uncomp</span><span class="p">)</span>
439
+ <span class="mi">0</span><span class="p">:</span> \<span class="n">x80</span> <span class="n">PROTO</span> <span class="mi">2</span>
440
+ <span class="mi">2</span><span class="p">:</span> <span class="n">c</span> <span class="n">GLOBAL</span> <span class="s1">&#39;sage.structure.sage_object SageObject&#39;</span>
441
+ <span class="mi">41</span><span class="p">:</span> <span class="n">q</span> <span class="n">BINPUT</span> <span class="o">...</span>
442
+ <span class="mi">43</span><span class="p">:</span> <span class="p">)</span> <span class="n">EMPTY_TUPLE</span>
443
+ <span class="mi">44</span><span class="p">:</span> \<span class="n">x81</span> <span class="n">NEWOBJ</span>
444
+ <span class="mi">45</span><span class="p">:</span> <span class="n">q</span> <span class="n">BINPUT</span> <span class="o">...</span>
445
+ <span class="mi">47</span><span class="p">:</span> <span class="o">.</span> <span class="n">STOP</span>
446
+ <span class="n">highest</span> <span class="n">protocol</span> <span class="n">among</span> <span class="n">opcodes</span> <span class="o">=</span> <span class="mi">2</span>
447
+ </pre></div>
448
+ </div>
449
+ </dd></dl>
450
+
403
451
  <dl class="py method">
404
452
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.gap_string">
405
- <span class="sig-name descname"><span class="pre">gap_string</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.gap_string" title="Permalink to this definition"></a></dt>
453
+ <span class="sig-name descname"><span class="pre">gap_string</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.gap_string" title="Link to this definition"></a></dt>
406
454
  <dd><p>Returns a string which will define this group within GAP:</p>
407
455
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">M</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;b++LLR&#39;</span><span class="p">)</span>
408
456
  <span class="gp">&gt;&gt;&gt; </span><span class="n">G</span> <span class="o">=</span> <span class="n">M</span><span class="o">.</span><span class="n">fundamental_group</span><span class="p">()</span>
@@ -421,7 +469,7 @@ input word.</p>
421
469
 
422
470
  <dl class="py method">
423
471
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.generators">
424
- <span class="sig-name descname"><span class="pre">generators</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.generators" title="Permalink to this definition"></a></dt>
472
+ <span class="sig-name descname"><span class="pre">generators</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.generators" title="Link to this definition"></a></dt>
425
473
  <dd><p>Return the letters representing the generators in the presentation.</p>
426
474
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">M</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;9_42&#39;</span><span class="p">)</span>
427
475
  <span class="gp">&gt;&gt;&gt; </span><span class="n">G</span> <span class="o">=</span> <span class="n">M</span><span class="o">.</span><span class="n">fundamental_group</span><span class="p">()</span> <span class="c1">#Presentation simplified by default</span>
@@ -464,7 +512,7 @@ and simplified presentations above correspond:</p>
464
512
 
465
513
  <dl class="py method">
466
514
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.generators_in_originals">
467
- <span class="sig-name descname"><span class="pre">generators_in_originals</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">verbose_form</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">raw_form</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">as_int_list</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.generators_in_originals" title="Permalink to this definition"></a></dt>
515
+ <span class="sig-name descname"><span class="pre">generators_in_originals</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">verbose_form</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">raw_form</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">as_int_list</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.generators_in_originals" title="Link to this definition"></a></dt>
468
516
  <dd><p>Return the current generators in terms of the original
469
517
  geometric generators. Note that by default fundamental_group()
470
518
  returns a simplified presentation of the group.</p>
@@ -482,9 +530,29 @@ function in fundamental_group.pyx for details.</p>
482
530
  </div>
483
531
  </dd></dl>
484
532
 
533
+ <dl class="py method">
534
+ <dt class="sig sig-object py" id="snappy.HolonomyGroup.get_custom_name">
535
+ <span class="sig-name descname"><span class="pre">get_custom_name</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.get_custom_name" title="Link to this definition"></a></dt>
536
+ <dd><p>File: sage/structure/sage_object.pyx (starting at line 150)</p>
537
+ <p>Return the custom name of this object, or <code class="docutils literal notranslate"><span class="pre">None</span></code> if it is not
538
+ renamed.</p>
539
+ <p>EXAMPLES:</p>
540
+ <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">sage</span><span class="p">:</span> <span class="n">P</span><span class="o">.&lt;</span><span class="n">x</span><span class="o">&gt;</span> <span class="o">=</span> <span class="n">QQ</span><span class="p">[]</span>
541
+ <span class="n">sage</span><span class="p">:</span> <span class="n">P</span><span class="o">.</span><span class="n">get_custom_name</span><span class="p">()</span> <span class="ow">is</span> <span class="kc">None</span>
542
+ <span class="kc">True</span>
543
+ <span class="n">sage</span><span class="p">:</span> <span class="n">P</span><span class="o">.</span><span class="n">rename</span><span class="p">(</span><span class="s1">&#39;A polynomial ring&#39;</span><span class="p">)</span>
544
+ <span class="n">sage</span><span class="p">:</span> <span class="n">P</span><span class="o">.</span><span class="n">get_custom_name</span><span class="p">()</span>
545
+ <span class="s1">&#39;A polynomial ring&#39;</span>
546
+ <span class="n">sage</span><span class="p">:</span> <span class="n">P</span><span class="o">.</span><span class="n">reset_name</span><span class="p">()</span>
547
+ <span class="n">sage</span><span class="p">:</span> <span class="n">P</span><span class="o">.</span><span class="n">get_custom_name</span><span class="p">()</span> <span class="ow">is</span> <span class="kc">None</span>
548
+ <span class="kc">True</span>
549
+ </pre></div>
550
+ </div>
551
+ </dd></dl>
552
+
485
553
  <dl class="py method">
486
554
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.longitude">
487
- <span class="sig-name descname"><span class="pre">longitude</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">int</span> <span class="pre">which_cusp=0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">as_int_list=False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.longitude" title="Permalink to this definition"></a></dt>
555
+ <span class="sig-name descname"><span class="pre">longitude</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">as_int_list</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.longitude" title="Link to this definition"></a></dt>
488
556
  <dd><p>Returns a word representing a conjugate of the current
489
557
  longitude for the given cusp. Guaranteed to commute with the
490
558
  meridian for the same cusp. Note: for Klein bottle cusps,
@@ -500,13 +568,13 @@ the longitude must be defined carefully.</p>
500
568
 
501
569
  <dl class="py method">
502
570
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.magma_string">
503
- <span class="sig-name descname"><span class="pre">magma_string</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.magma_string" title="Permalink to this definition"></a></dt>
571
+ <span class="sig-name descname"><span class="pre">magma_string</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.magma_string" title="Link to this definition"></a></dt>
504
572
  <dd><p>Returns a string which will define this group within MAGMA.</p>
505
573
  </dd></dl>
506
574
 
507
575
  <dl class="py method">
508
576
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.meridian">
509
- <span class="sig-name descname"><span class="pre">meridian</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">int</span> <span class="pre">which_cusp=0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">as_int_list=False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.meridian" title="Permalink to this definition"></a></dt>
577
+ <span class="sig-name descname"><span class="pre">meridian</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">as_int_list</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.meridian" title="Link to this definition"></a></dt>
510
578
  <dd><p>Returns a word representing a conjugate of the current
511
579
  meridian for the given cusp. Guaranteed to commute with the
512
580
  longitude for the same cusp.</p>
@@ -521,25 +589,25 @@ longitude for the same cusp.</p>
521
589
 
522
590
  <dl class="py method">
523
591
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.num_generators">
524
- <span class="sig-name descname"><span class="pre">num_generators</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.num_generators" title="Permalink to this definition"></a></dt>
592
+ <span class="sig-name descname"><span class="pre">num_generators</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.num_generators" title="Link to this definition"></a></dt>
525
593
  <dd><p>Return the number of generators for the presentation.</p>
526
594
  </dd></dl>
527
595
 
528
596
  <dl class="py method">
529
597
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.num_original_generators">
530
- <span class="sig-name descname"><span class="pre">num_original_generators</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.num_original_generators" title="Permalink to this definition"></a></dt>
598
+ <span class="sig-name descname"><span class="pre">num_original_generators</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.num_original_generators" title="Link to this definition"></a></dt>
531
599
  <dd><p>Return the number of geometric generators (before simplification).</p>
532
600
  </dd></dl>
533
601
 
534
602
  <dl class="py method">
535
603
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.num_relators">
536
- <span class="sig-name descname"><span class="pre">num_relators</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.num_relators" title="Permalink to this definition"></a></dt>
604
+ <span class="sig-name descname"><span class="pre">num_relators</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.num_relators" title="Link to this definition"></a></dt>
537
605
  <dd><p>Return the number of generators for the presentation.</p>
538
606
  </dd></dl>
539
607
 
540
608
  <dl class="py method">
541
609
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.original_generators">
542
- <span class="sig-name descname"><span class="pre">original_generators</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">verbose_form</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">as_int_list</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.original_generators" title="Permalink to this definition"></a></dt>
610
+ <span class="sig-name descname"><span class="pre">original_generators</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">verbose_form</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">as_int_list</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.original_generators" title="Link to this definition"></a></dt>
543
611
  <dd><p>Return the original geometric generators (before
544
612
  simplification) in terms of the current generators.</p>
545
613
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">M</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;v0000&#39;</span><span class="p">)</span>
@@ -550,9 +618,24 @@ simplification) in terms of the current generators.</p>
550
618
  </div>
551
619
  </dd></dl>
552
620
 
621
+ <dl class="py method">
622
+ <dt class="sig sig-object py" id="snappy.HolonomyGroup.parent">
623
+ <span class="sig-name descname"><span class="pre">parent</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.parent" title="Link to this definition"></a></dt>
624
+ <dd><p>File: sage/structure/sage_object.pyx (starting at line 549)</p>
625
+ <p>Return the type of <code class="docutils literal notranslate"><span class="pre">self</span></code> to support the coercion framework.</p>
626
+ <p>EXAMPLES:</p>
627
+ <div class="highlight-default notranslate"><div class="highlight"><pre><span></span>sage: t = log(sqrt(2) - 1) + log(sqrt(2) + 1); t # needs sage.symbolic
628
+ log(sqrt(2) + 1) + log(sqrt(2) - 1)
629
+ sage: u = t.maxima_methods() # needs sage.symbolic
630
+ sage: u.parent() # needs sage.symbolic
631
+ &lt;class &#39;sage.symbolic.maxima_wrapper.MaximaWrapper&#39;&gt;
632
+ </pre></div>
633
+ </div>
634
+ </dd></dl>
635
+
553
636
  <dl class="py method">
554
637
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.peripheral_curves">
555
- <span class="sig-name descname"><span class="pre">peripheral_curves</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">as_int_list</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.peripheral_curves" title="Permalink to this definition"></a></dt>
638
+ <span class="sig-name descname"><span class="pre">peripheral_curves</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">as_int_list</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.peripheral_curves" title="Link to this definition"></a></dt>
556
639
  <dd><p>Returns a list of meridian-longitude pairs for all cusps.</p>
557
640
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">G</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;m125&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">fundamental_group</span><span class="p">()</span>
558
641
  <span class="gp">&gt;&gt;&gt; </span><span class="n">G</span><span class="o">.</span><span class="n">peripheral_curves</span><span class="p">()</span>
@@ -563,26 +646,116 @@ simplification) in terms of the current generators.</p>
563
646
 
564
647
  <dl class="py method">
565
648
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.relators">
566
- <span class="sig-name descname"><span class="pre">relators</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">verbose_form</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">as_int_list</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.relators" title="Permalink to this definition"></a></dt>
649
+ <span class="sig-name descname"><span class="pre">relators</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">verbose_form</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">as_int_list</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.relators" title="Link to this definition"></a></dt>
567
650
  <dd><p>Return a list of words representing the relators in the presentation.</p>
568
651
  <p>If the optional argument verbose_form is True, then the
569
652
  relator is returned in the form “a*b*a^-1*b^-1” instead of “abAB”.</p>
570
653
  </dd></dl>
571
654
 
655
+ <dl class="py method">
656
+ <dt class="sig sig-object py" id="snappy.HolonomyGroup.rename">
657
+ <span class="sig-name descname"><span class="pre">rename</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">x</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.rename" title="Link to this definition"></a></dt>
658
+ <dd><p>File: sage/structure/sage_object.pyx (starting at line 68)</p>
659
+ <p>Change <code class="docutils literal notranslate"><span class="pre">self</span></code> so it prints as x, where x is a string.</p>
660
+ <p>If x is <code class="docutils literal notranslate"><span class="pre">None</span></code>, the existing custom name is removed.</p>
661
+ <div class="admonition note">
662
+ <p class="admonition-title">Note</p>
663
+ <p>This is <em>only</em> supported for Python classes that derive
664
+ from SageObject.</p>
665
+ </div>
666
+ <p>EXAMPLES:</p>
667
+ <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">sage</span><span class="p">:</span> <span class="n">x</span> <span class="o">=</span> <span class="n">PolynomialRing</span><span class="p">(</span><span class="n">QQ</span><span class="p">,</span> <span class="s1">&#39;x&#39;</span><span class="p">,</span> <span class="n">sparse</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span><span class="o">.</span><span class="n">gen</span><span class="p">()</span>
668
+ <span class="n">sage</span><span class="p">:</span> <span class="n">g</span> <span class="o">=</span> <span class="n">x</span><span class="o">^</span><span class="mi">3</span> <span class="o">+</span> <span class="n">x</span> <span class="o">-</span> <span class="mi">5</span>
669
+ <span class="n">sage</span><span class="p">:</span> <span class="n">g</span>
670
+ <span class="n">x</span><span class="o">^</span><span class="mi">3</span> <span class="o">+</span> <span class="n">x</span> <span class="o">-</span> <span class="mi">5</span>
671
+ <span class="n">sage</span><span class="p">:</span> <span class="n">g</span><span class="o">.</span><span class="n">rename</span><span class="p">(</span><span class="s1">&#39;a polynomial&#39;</span><span class="p">)</span>
672
+ <span class="n">sage</span><span class="p">:</span> <span class="n">g</span>
673
+ <span class="n">a</span> <span class="n">polynomial</span>
674
+ <span class="n">sage</span><span class="p">:</span> <span class="n">g</span> <span class="o">+</span> <span class="n">x</span>
675
+ <span class="n">x</span><span class="o">^</span><span class="mi">3</span> <span class="o">+</span> <span class="mi">2</span><span class="o">*</span><span class="n">x</span> <span class="o">-</span> <span class="mi">5</span>
676
+ <span class="n">sage</span><span class="p">:</span> <span class="n">h</span> <span class="o">=</span> <span class="n">g</span><span class="o">^</span><span class="mi">100</span>
677
+ <span class="n">sage</span><span class="p">:</span> <span class="nb">str</span><span class="p">(</span><span class="n">h</span><span class="p">)[:</span><span class="mi">20</span><span class="p">]</span>
678
+ <span class="s1">&#39;x^300 + 100*x^298 - &#39;</span>
679
+ <span class="n">sage</span><span class="p">:</span> <span class="n">h</span><span class="o">.</span><span class="n">rename</span><span class="p">(</span><span class="s1">&#39;x^300 + ...&#39;</span><span class="p">)</span>
680
+ <span class="n">sage</span><span class="p">:</span> <span class="n">h</span>
681
+ <span class="n">x</span><span class="o">^</span><span class="mi">300</span> <span class="o">+</span> <span class="o">...</span>
682
+ <span class="n">sage</span><span class="p">:</span> <span class="n">g</span><span class="o">.</span><span class="n">rename</span><span class="p">(</span><span class="kc">None</span><span class="p">)</span>
683
+ <span class="n">sage</span><span class="p">:</span> <span class="n">g</span>
684
+ <span class="n">x</span><span class="o">^</span><span class="mi">3</span> <span class="o">+</span> <span class="n">x</span> <span class="o">-</span> <span class="mi">5</span>
685
+ </pre></div>
686
+ </div>
687
+ <p>Real numbers are not Python classes, so rename is not supported:</p>
688
+ <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">sage</span><span class="p">:</span> <span class="n">a</span> <span class="o">=</span> <span class="mf">3.14</span>
689
+ <span class="n">sage</span><span class="p">:</span> <span class="nb">type</span><span class="p">(</span><span class="n">a</span><span class="p">)</span> <span class="c1"># needs sage.rings.real_mpfr</span>
690
+ <span class="o">&lt;...</span> <span class="s1">&#39;sage.rings.real_mpfr.RealLiteral&#39;</span><span class="o">&gt;</span>
691
+ <span class="n">sage</span><span class="p">:</span> <span class="n">a</span><span class="o">.</span><span class="n">rename</span><span class="p">(</span><span class="s1">&#39;pi&#39;</span><span class="p">)</span> <span class="c1"># needs sage.rings.real_mpfr</span>
692
+ <span class="n">Traceback</span> <span class="p">(</span><span class="n">most</span> <span class="n">recent</span> <span class="n">call</span> <span class="n">last</span><span class="p">):</span>
693
+ <span class="o">...</span>
694
+ <span class="ne">NotImplementedError</span><span class="p">:</span> <span class="nb">object</span> <span class="n">does</span> <span class="ow">not</span> <span class="n">support</span> <span class="n">renaming</span><span class="p">:</span> <span class="mf">3.14000000000000</span>
695
+ </pre></div>
696
+ </div>
697
+ <div class="admonition note">
698
+ <p class="admonition-title">Note</p>
699
+ <p>The reason C-extension types are not supported by default
700
+ is if they were then every single one would have to carry
701
+ around an extra attribute, which would be slower and waste
702
+ a lot of memory.</p>
703
+ <p>To support them for a specific class, add a
704
+ <code class="docutils literal notranslate"><span class="pre">cdef</span> <span class="pre">public</span> <span class="pre">_SageObject__custom_name</span></code> attribute.</p>
705
+ </div>
706
+ </dd></dl>
707
+
708
+ <dl class="py method">
709
+ <dt class="sig sig-object py" id="snappy.HolonomyGroup.reset_name">
710
+ <span class="sig-name descname"><span class="pre">reset_name</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.reset_name" title="Link to this definition"></a></dt>
711
+ <dd><p>File: sage/structure/sage_object.pyx (starting at line 131)</p>
712
+ <p>Remove the custom name of an object.</p>
713
+ <p>EXAMPLES:</p>
714
+ <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">sage</span><span class="p">:</span> <span class="n">P</span><span class="o">.&lt;</span><span class="n">x</span><span class="o">&gt;</span> <span class="o">=</span> <span class="n">QQ</span><span class="p">[]</span>
715
+ <span class="n">sage</span><span class="p">:</span> <span class="n">P</span>
716
+ <span class="n">Univariate</span> <span class="n">Polynomial</span> <span class="n">Ring</span> <span class="ow">in</span> <span class="n">x</span> <span class="n">over</span> <span class="n">Rational</span> <span class="n">Field</span>
717
+ <span class="n">sage</span><span class="p">:</span> <span class="n">P</span><span class="o">.</span><span class="n">rename</span><span class="p">(</span><span class="s1">&#39;A polynomial ring&#39;</span><span class="p">)</span>
718
+ <span class="n">sage</span><span class="p">:</span> <span class="n">P</span>
719
+ <span class="n">A</span> <span class="n">polynomial</span> <span class="n">ring</span>
720
+ <span class="n">sage</span><span class="p">:</span> <span class="n">P</span><span class="o">.</span><span class="n">reset_name</span><span class="p">()</span>
721
+ <span class="n">sage</span><span class="p">:</span> <span class="n">P</span>
722
+ <span class="n">Univariate</span> <span class="n">Polynomial</span> <span class="n">Ring</span> <span class="ow">in</span> <span class="n">x</span> <span class="n">over</span> <span class="n">Rational</span> <span class="n">Field</span>
723
+ </pre></div>
724
+ </div>
725
+ </dd></dl>
726
+
572
727
  <dl class="py method">
573
728
  <dt class="sig sig-object py" id="snappy.HolonomyGroup.sage">
574
- <span class="sig-name descname"><span class="pre">sage</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.sage" title="Permalink to this definition"></a></dt>
729
+ <span class="sig-name descname"><span class="pre">sage</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.sage" title="Link to this definition"></a></dt>
575
730
  <dd><p>Returns the corresponding Sage FinitelyPresentedGroup</p>
576
731
  </dd></dl>
577
732
 
733
+ <dl class="py method">
734
+ <dt class="sig sig-object py" id="snappy.HolonomyGroup.save">
735
+ <span class="sig-name descname"><span class="pre">save</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">compress</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.HolonomyGroup.save" title="Link to this definition"></a></dt>
736
+ <dd><p>File: sage/structure/sage_object.pyx (starting at line 446)</p>
737
+ <p>Save <code class="docutils literal notranslate"><span class="pre">self</span></code> to the given filename.</p>
738
+ <p>EXAMPLES:</p>
739
+ <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">sage</span><span class="p">:</span> <span class="c1"># needs sage.symbolic</span>
740
+ <span class="n">sage</span><span class="p">:</span> <span class="n">x</span> <span class="o">=</span> <span class="n">SR</span><span class="o">.</span><span class="n">var</span><span class="p">(</span><span class="s2">&quot;x&quot;</span><span class="p">)</span>
741
+ <span class="n">sage</span><span class="p">:</span> <span class="n">f</span> <span class="o">=</span> <span class="n">x</span><span class="o">^</span><span class="mi">3</span> <span class="o">+</span> <span class="mi">5</span>
742
+ <span class="n">sage</span><span class="p">:</span> <span class="kn">from</span> <span class="nn">tempfile</span> <span class="kn">import</span> <span class="n">NamedTemporaryFile</span>
743
+ <span class="n">sage</span><span class="p">:</span> <span class="k">with</span> <span class="n">NamedTemporaryFile</span><span class="p">(</span><span class="n">suffix</span><span class="o">=</span><span class="s1">&#39;.sobj&#39;</span><span class="p">)</span> <span class="k">as</span> <span class="n">t</span><span class="p">:</span>
744
+ <span class="o">....</span><span class="p">:</span> <span class="n">f</span><span class="o">.</span><span class="n">save</span><span class="p">(</span><span class="n">t</span><span class="o">.</span><span class="n">name</span><span class="p">)</span>
745
+ <span class="o">....</span><span class="p">:</span> <span class="n">load</span><span class="p">(</span><span class="n">t</span><span class="o">.</span><span class="n">name</span><span class="p">)</span>
746
+ <span class="n">x</span><span class="o">^</span><span class="mi">3</span> <span class="o">+</span> <span class="mi">5</span>
747
+ </pre></div>
748
+ </div>
749
+ </dd></dl>
750
+
578
751
  </dd></dl>
579
752
 
580
753
  </section>
581
754
  <section id="symmetrygroup">
582
- <h2>SymmetryGroup<a class="headerlink" href="#symmetrygroup" title="Permalink to this heading"></a></h2>
755
+ <h2>SymmetryGroup<a class="headerlink" href="#symmetrygroup" title="Link to this heading"></a></h2>
583
756
  <dl class="py class">
584
757
  <dt class="sig sig-object py" id="snappy.SymmetryGroup">
585
- <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">snappy.</span></span><span class="sig-name descname"><span class="pre">SymmetryGroup</span></span><a class="headerlink" href="#snappy.SymmetryGroup" title="Permalink to this definition"></a></dt>
758
+ <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">snappy.</span></span><span class="sig-name descname"><span class="pre">SymmetryGroup</span></span><a class="headerlink" href="#snappy.SymmetryGroup" title="Link to this definition"></a></dt>
586
759
  <dd><p>A SymmetryGroup is a group of self-isometries of hyperbolic
587
760
  3-manifold. Instantiate as follows:</p>
588
761
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">M</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;m004&#39;</span><span class="p">)</span>
@@ -592,7 +765,7 @@ relator is returned in the form “a*b*a^-1*b^-1” instead of “abAB”.</p>
592
765
  </div>
593
766
  <dl class="py method">
594
767
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.abelian_description">
595
- <span class="sig-name descname"><span class="pre">abelian_description</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.abelian_description" title="Permalink to this definition"></a></dt>
768
+ <span class="sig-name descname"><span class="pre">abelian_description</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.abelian_description" title="Link to this definition"></a></dt>
596
769
  <dd><p>If the symmetry group is abelian, return it as an AbelianGroup</p>
597
770
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">S</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;v3379&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">symmetry_group</span><span class="p">()</span>
598
771
  <span class="gp">&gt;&gt;&gt; </span><span class="n">S</span><span class="o">.</span><span class="n">abelian_description</span><span class="p">()</span>
@@ -603,7 +776,7 @@ relator is returned in the form “a*b*a^-1*b^-1” instead of “abAB”.</p>
603
776
 
604
777
  <dl class="py method">
605
778
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.abelianization">
606
- <span class="sig-name descname"><span class="pre">abelianization</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.abelianization" title="Permalink to this definition"></a></dt>
779
+ <span class="sig-name descname"><span class="pre">abelianization</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.abelianization" title="Link to this definition"></a></dt>
607
780
  <dd><p>Return the abelianization of the symmetry group</p>
608
781
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">S</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;m004&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">symmetry_group</span><span class="p">()</span>
609
782
  <span class="gp">&gt;&gt;&gt; </span><span class="n">S</span><span class="o">.</span><span class="n">abelianization</span><span class="p">()</span>
@@ -614,7 +787,7 @@ relator is returned in the form “a*b*a^-1*b^-1” instead of “abAB”.</p>
614
787
 
615
788
  <dl class="py method">
616
789
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.center">
617
- <span class="sig-name descname"><span class="pre">center</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.center" title="Permalink to this definition"></a></dt>
790
+ <span class="sig-name descname"><span class="pre">center</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.center" title="Link to this definition"></a></dt>
618
791
  <dd><p>Return the center of the symmetry group</p>
619
792
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">S</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;m004&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">symmetry_group</span><span class="p">()</span>
620
793
  <span class="gp">&gt;&gt;&gt; </span><span class="n">S</span><span class="o">.</span><span class="n">center</span><span class="p">()</span>
@@ -625,7 +798,7 @@ relator is returned in the form “a*b*a^-1*b^-1” instead of “abAB”.</p>
625
798
 
626
799
  <dl class="py method">
627
800
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.commutator_subgroup">
628
- <span class="sig-name descname"><span class="pre">commutator_subgroup</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.commutator_subgroup" title="Permalink to this definition"></a></dt>
801
+ <span class="sig-name descname"><span class="pre">commutator_subgroup</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.commutator_subgroup" title="Link to this definition"></a></dt>
629
802
  <dd><p>Return the commutator subgroup of the SymmetryGroup</p>
630
803
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">S</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;m004&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">symmetry_group</span><span class="p">()</span>
631
804
  <span class="gp">&gt;&gt;&gt; </span><span class="n">S</span>
@@ -638,7 +811,7 @@ relator is returned in the form “a*b*a^-1*b^-1” instead of “abAB”.</p>
638
811
 
639
812
  <dl class="py method">
640
813
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.direct_product_description">
641
- <span class="sig-name descname"><span class="pre">direct_product_description</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.direct_product_description" title="Permalink to this definition"></a></dt>
814
+ <span class="sig-name descname"><span class="pre">direct_product_description</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.direct_product_description" title="Link to this definition"></a></dt>
642
815
  <dd><p>If the SymmetryGroup is a nontrivial direct product with at
643
816
  least one nonabelian factor, return a pair of SymmetryGroups
644
817
  consisting of the (two) factors.</p>
@@ -651,13 +824,13 @@ consisting of the (two) factors.</p>
651
824
 
652
825
  <dl class="py method">
653
826
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.is_S5">
654
- <span class="sig-name descname"><span class="pre">is_S5</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_S5" title="Permalink to this definition"></a></dt>
827
+ <span class="sig-name descname"><span class="pre">is_S5</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_S5" title="Link to this definition"></a></dt>
655
828
  <dd><p>Returns whether the group is the symmetric group on five things.</p>
656
829
  </dd></dl>
657
830
 
658
831
  <dl class="py method">
659
832
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.is_abelian">
660
- <span class="sig-name descname"><span class="pre">is_abelian</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_abelian" title="Permalink to this definition"></a></dt>
833
+ <span class="sig-name descname"><span class="pre">is_abelian</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_abelian" title="Link to this definition"></a></dt>
661
834
  <dd><p>Return whether the symmetry group is abelian.</p>
662
835
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">S</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;m004&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">symmetry_group</span><span class="p">()</span>
663
836
  <span class="gp">&gt;&gt;&gt; </span><span class="n">S</span><span class="o">.</span><span class="n">is_abelian</span><span class="p">()</span>
@@ -668,7 +841,7 @@ consisting of the (two) factors.</p>
668
841
 
669
842
  <dl class="py method">
670
843
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.is_amphicheiral">
671
- <span class="sig-name descname"><span class="pre">is_amphicheiral</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_amphicheiral" title="Permalink to this definition"></a></dt>
844
+ <span class="sig-name descname"><span class="pre">is_amphicheiral</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_amphicheiral" title="Link to this definition"></a></dt>
672
845
  <dd><p>Return whether the manifold has an orientation reversing symmetry.</p>
673
846
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">S</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;m004&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">symmetry_group</span><span class="p">()</span>
674
847
  <span class="gp">&gt;&gt;&gt; </span><span class="n">S</span><span class="o">.</span><span class="n">is_amphicheiral</span><span class="p">()</span>
@@ -679,7 +852,7 @@ consisting of the (two) factors.</p>
679
852
 
680
853
  <dl class="py method">
681
854
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.is_dihedral">
682
- <span class="sig-name descname"><span class="pre">is_dihedral</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_dihedral" title="Permalink to this definition"></a></dt>
855
+ <span class="sig-name descname"><span class="pre">is_dihedral</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_dihedral" title="Link to this definition"></a></dt>
683
856
  <dd><p>Return whether the symmetry group is dihedral.</p>
684
857
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">S</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;m004&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">symmetry_group</span><span class="p">()</span>
685
858
  <span class="gp">&gt;&gt;&gt; </span><span class="n">S</span><span class="o">.</span><span class="n">is_dihedral</span><span class="p">()</span>
@@ -690,7 +863,7 @@ consisting of the (two) factors.</p>
690
863
 
691
864
  <dl class="py method">
692
865
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.is_direct_product">
693
- <span class="sig-name descname"><span class="pre">is_direct_product</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_direct_product" title="Permalink to this definition"></a></dt>
866
+ <span class="sig-name descname"><span class="pre">is_direct_product</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_direct_product" title="Link to this definition"></a></dt>
694
867
  <dd><p>Return whether the SymmetryGroup is a nontrivial direct
695
868
  product with at least one nonabelian factor.</p>
696
869
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">S</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;s960&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">symmetry_group</span><span class="p">()</span>
@@ -704,7 +877,7 @@ product with at least one nonabelian factor.</p>
704
877
 
705
878
  <dl class="py method">
706
879
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.is_full_group">
707
- <span class="sig-name descname"><span class="pre">is_full_group</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_full_group" title="Permalink to this definition"></a></dt>
880
+ <span class="sig-name descname"><span class="pre">is_full_group</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_full_group" title="Link to this definition"></a></dt>
708
881
  <dd><p>Return whether the full symmetry group has been found.</p>
709
882
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">S</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;m004&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">symmetry_group</span><span class="p">()</span>
710
883
  <span class="gp">&gt;&gt;&gt; </span><span class="n">S</span><span class="o">.</span><span class="n">is_full_group</span><span class="p">()</span>
@@ -715,7 +888,7 @@ product with at least one nonabelian factor.</p>
715
888
 
716
889
  <dl class="py method">
717
890
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.is_invertible_knot">
718
- <span class="sig-name descname"><span class="pre">is_invertible_knot</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_invertible_knot" title="Permalink to this definition"></a></dt>
891
+ <span class="sig-name descname"><span class="pre">is_invertible_knot</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_invertible_knot" title="Link to this definition"></a></dt>
719
892
  <dd><p>Return whether a one-cusped has a symmetry that acts on the
720
893
  cusp via the matrix -I.</p>
721
894
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">S</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;m015&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">symmetry_group</span><span class="p">()</span>
@@ -727,14 +900,14 @@ cusp via the matrix -I.</p>
727
900
 
728
901
  <dl class="py method">
729
902
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.is_polyhedral">
730
- <span class="sig-name descname"><span class="pre">is_polyhedral</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_polyhedral" title="Permalink to this definition"></a></dt>
903
+ <span class="sig-name descname"><span class="pre">is_polyhedral</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.is_polyhedral" title="Link to this definition"></a></dt>
731
904
  <dd><p>Returns whether the symmetry group is a (possibly binary)
732
905
  polyhedral group.</p>
733
906
  </dd></dl>
734
907
 
735
908
  <dl class="py method">
736
909
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.isometries">
737
- <span class="sig-name descname"><span class="pre">isometries</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.isometries" title="Permalink to this definition"></a></dt>
910
+ <span class="sig-name descname"><span class="pre">isometries</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.isometries" title="Link to this definition"></a></dt>
738
911
  <dd><p>Return a detailed list of all the isometries in the symmetry group.</p>
739
912
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">S</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;s959&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">symmetry_group</span><span class="p">()</span>
740
913
  <span class="gp">&gt;&gt;&gt; </span><span class="n">isoms</span> <span class="o">=</span> <span class="n">S</span><span class="o">.</span><span class="n">isometries</span><span class="p">()</span>
@@ -749,7 +922,7 @@ polyhedral group.</p>
749
922
 
750
923
  <dl class="py method">
751
924
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.multiply_elements">
752
- <span class="sig-name descname"><span class="pre">multiply_elements</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">i</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">j</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.multiply_elements" title="Permalink to this definition"></a></dt>
925
+ <span class="sig-name descname"><span class="pre">multiply_elements</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">i</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">j</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.multiply_elements" title="Link to this definition"></a></dt>
753
926
  <dd><p>Returns the product of group elements i and j. The convention
754
927
  is that products of symmetries read right to left. That is,
755
928
  the composition (symmetry[i] o symmetry[j]) acts by first
@@ -763,7 +936,7 @@ doing symmetry[j], then symmetry[i].</p>
763
936
 
764
937
  <dl class="py method">
765
938
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.order">
766
- <span class="sig-name descname"><span class="pre">order</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.order" title="Permalink to this definition"></a></dt>
939
+ <span class="sig-name descname"><span class="pre">order</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.order" title="Link to this definition"></a></dt>
767
940
  <dd><p>Return the order of the symmetry group</p>
768
941
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">S</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;s000&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">symmetry_group</span><span class="p">()</span>
769
942
  <span class="gp">&gt;&gt;&gt; </span><span class="n">S</span><span class="o">.</span><span class="n">order</span><span class="p">()</span>
@@ -774,7 +947,7 @@ doing symmetry[j], then symmetry[i].</p>
774
947
 
775
948
  <dl class="py method">
776
949
  <dt class="sig sig-object py" id="snappy.SymmetryGroup.polyhedral_description">
777
- <span class="sig-name descname"><span class="pre">polyhedral_description</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.polyhedral_description" title="Permalink to this definition"></a></dt>
950
+ <span class="sig-name descname"><span class="pre">polyhedral_description</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.SymmetryGroup.polyhedral_description" title="Link to this definition"></a></dt>
778
951
  <dd><p>If the symmetry group is a (possibly binary)
779
952
  polyhedral group, return a description of it.</p>
780
953
  </dd></dl>
@@ -783,15 +956,16 @@ polyhedral group, return a description of it.</p>
783
956
 
784
957
  </section>
785
958
  <section id="dirichletdomain">
786
- <h2>DirichletDomain<a class="headerlink" href="#dirichletdomain" title="Permalink to this heading"></a></h2>
959
+ <h2>DirichletDomain<a class="headerlink" href="#dirichletdomain" title="Link to this heading"></a></h2>
787
960
  <dl class="py class">
788
961
  <dt class="sig sig-object py" id="snappy.DirichletDomain">
789
- <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">snappy.</span></span><span class="sig-name descname"><span class="pre">DirichletDomain</span></span><a class="headerlink" href="#snappy.DirichletDomain" title="Permalink to this definition"></a></dt>
962
+ <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">snappy.</span></span><span class="sig-name descname"><span class="pre">DirichletDomain</span></span><a class="headerlink" href="#snappy.DirichletDomain" title="Link to this definition"></a></dt>
790
963
  <dd><p>A DirichletDomain object represents a Dirichlet Domain of
791
964
  a hyperbolic manifold, typically centered at a point which
792
965
  is a local maximum of injectivity radius. It will have ideal
793
966
  vertices if the manifold is not closed.</p>
794
- <p>Instantiate as M.dirichlet_domain() where M is a Manifold to
967
+ <p>Instantiate as M.dirichlet_domain()
968
+ where M is a Manifold to
795
969
  obtain a Dirichlet Domain centered at a point which maximizes
796
970
  injectivity radius.</p>
797
971
  <p>Other options can be provided to customize the computation, with
@@ -803,9 +977,9 @@ the default values shown here</p>
803
977
  </div>
804
978
  <p>You can also create a Dirichlet Domain from a file listing matrix
805
979
  generators for the group, in SnapPea’s “% Generator” format, via</p>
806
- <blockquote>
807
- <div><p>D = DirichletDomain(generator_file=’test.gens’)</p>
808
- </div></blockquote>
980
+ <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">D</span> <span class="o">=</span> <span class="n">DirichletDomain</span><span class="p">(</span><span class="n">generator_file</span><span class="o">=</span><span class="s1">&#39;test.gens&#39;</span><span class="p">)</span>
981
+ </pre></div>
982
+ </div>
809
983
  <p>Or from matrices:</p>
810
984
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">G</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;m004&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">fundamental_group</span><span class="p">(</span><span class="kc">False</span><span class="p">)</span>
811
985
  <span class="gp">&gt;&gt;&gt; </span><span class="n">matrices</span> <span class="o">=</span> <span class="p">[</span> <span class="n">G</span><span class="o">.</span><span class="n">O31</span><span class="p">(</span><span class="s1">&#39;a&#39;</span><span class="p">),</span> <span class="n">G</span><span class="o">.</span><span class="n">O31</span><span class="p">(</span><span class="s1">&#39;b&#39;</span><span class="p">),</span> <span class="n">G</span><span class="o">.</span><span class="n">O31</span><span class="p">(</span><span class="s1">&#39;c&#39;</span><span class="p">)</span> <span class="p">]</span> <span class="c1"># Note: some of the matrices contain (near) 0 entries and thus this tests that Object2Real converts small numbers fromatted by pari as &quot;1.0 E-10&quot; (note the pace before &quot;E&quot;) correctly when not in SageMath.</span>
@@ -816,10 +990,10 @@ generators for the group, in SnapPea’s “% Generator” format, via</p>
816
990
  </div>
817
991
  <p>The group elements for the face-pairings of the Dirichlet domain
818
992
  can be given as words in the original generators by setting
819
- include_words = True.</p>
993
+ <code class="docutils literal notranslate"><span class="pre">include_words</span> <span class="pre">=</span> <span class="pre">True</span></code>.</p>
820
994
  <dl class="py method">
821
995
  <dt class="sig sig-object py" id="snappy.DirichletDomain.edge_list">
822
- <span class="sig-name descname"><span class="pre">edge_list</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.edge_list" title="Permalink to this definition"></a></dt>
996
+ <span class="sig-name descname"><span class="pre">edge_list</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.edge_list" title="Link to this definition"></a></dt>
823
997
  <dd><p>Return a list of edges, each represented as a dictionar with keys
824
998
  ‘tail_vertex_index’, ‘tip_vertex_index’, ‘edge_class’.</p>
825
999
  <p>The index (into vertex_data_list()) to the two vertices at the
@@ -830,7 +1004,7 @@ belongs to is stored in ‘edge_class’.</p>
830
1004
 
831
1005
  <dl class="py method">
832
1006
  <dt class="sig sig-object py" id="snappy.DirichletDomain.export_stl">
833
- <span class="sig-name descname"><span class="pre">export_stl</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">model</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'klein'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cutout</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">num_subdivisions</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">3</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">shrink_factor</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.9</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cutoff_radius</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.9</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.export_stl" title="Permalink to this definition"></a></dt>
1007
+ <span class="sig-name descname"><span class="pre">export_stl</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">model</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'klein'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cutout</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">num_subdivisions</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">3</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">shrink_factor</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.9</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cutoff_radius</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.9</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">callback</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.export_stl" title="Link to this definition"></a></dt>
834
1008
  <dd><p>Export the Dirichlet domain as an stl file suitable for 3d printing.</p>
835
1009
  <p>Arguments can be given to modify the model produced:</p>
836
1010
  <ul class="simple">
@@ -855,7 +1029,7 @@ every so often if it is not None.</p>
855
1029
 
856
1030
  <dl class="py method">
857
1031
  <dt class="sig sig-object py" id="snappy.DirichletDomain.face_list">
858
- <span class="sig-name descname"><span class="pre">face_list</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.face_list" title="Permalink to this definition"></a></dt>
1032
+ <span class="sig-name descname"><span class="pre">face_list</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.face_list" title="Link to this definition"></a></dt>
859
1033
  <dd><p>Return a list of faces, each represented as a dictionary with
860
1034
  keys ‘vertices’, ‘distance’, ‘closest’, ‘hue’, ‘vertex_indices’,
861
1035
  ‘edge_indices’, ‘vertex_image_indices’, ‘edge_image_indices’,
@@ -882,13 +1056,13 @@ the respective position.</p>
882
1056
 
883
1057
  <dl class="py method">
884
1058
  <dt class="sig sig-object py" id="snappy.DirichletDomain.in_radius">
885
- <span class="sig-name descname"><span class="pre">in_radius</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.in_radius" title="Permalink to this definition"></a></dt>
1059
+ <span class="sig-name descname"><span class="pre">in_radius</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.in_radius" title="Link to this definition"></a></dt>
886
1060
  <dd><p>Return the radius of the largest inscribed sphere.</p>
887
1061
  </dd></dl>
888
1062
 
889
1063
  <dl class="py method">
890
1064
  <dt class="sig sig-object py" id="snappy.DirichletDomain.length_spectrum_dicts">
891
- <span class="sig-name descname"><span class="pre">length_spectrum_dicts</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">cutoff_length</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">full_rigor</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">multiplicities</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">user_radius</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">grouped</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.length_spectrum_dicts" title="Permalink to this definition"></a></dt>
1065
+ <span class="sig-name descname"><span class="pre">length_spectrum_dicts</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">cutoff_length</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">1.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">full_rigor</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">multiplicities</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">user_radius</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">grouped</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.length_spectrum_dicts" title="Link to this definition"></a></dt>
892
1066
  <dd><p>Return a list of info objects describing the short
893
1067
  geodesics up to the specified cutoff length. The keys are
894
1068
  ‘length’, ‘parity’, ‘topology’, and ‘multiplicity’. The
@@ -921,7 +1095,7 @@ collated but the multiplicity of each item is set to 0.</p>
921
1095
 
922
1096
  <dl class="py method">
923
1097
  <dt class="sig sig-object py" id="snappy.DirichletDomain.manifold">
924
- <span class="sig-name descname"><span class="pre">manifold</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.manifold" title="Permalink to this definition"></a></dt>
1098
+ <span class="sig-name descname"><span class="pre">manifold</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.manifold" title="Link to this definition"></a></dt>
925
1099
  <dd><p>Returns a Manifold computed directly from the Dirichlet
926
1100
  domain, regarded as polyhedron with faces identified in pairs.
927
1101
  Only works if this gives a manifold not an orbifold.</p>
@@ -936,43 +1110,43 @@ Only works if this gives a manifold not an orbifold.</p>
936
1110
 
937
1111
  <dl class="py method">
938
1112
  <dt class="sig sig-object py" id="snappy.DirichletDomain.num_edges">
939
- <span class="sig-name descname"><span class="pre">num_edges</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.num_edges" title="Permalink to this definition"></a></dt>
1113
+ <span class="sig-name descname"><span class="pre">num_edges</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.num_edges" title="Link to this definition"></a></dt>
940
1114
  <dd><p>Return the number of edges.</p>
941
1115
  </dd></dl>
942
1116
 
943
1117
  <dl class="py method">
944
1118
  <dt class="sig sig-object py" id="snappy.DirichletDomain.num_faces">
945
- <span class="sig-name descname"><span class="pre">num_faces</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.num_faces" title="Permalink to this definition"></a></dt>
1119
+ <span class="sig-name descname"><span class="pre">num_faces</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.num_faces" title="Link to this definition"></a></dt>
946
1120
  <dd><p>Return the number of faces.</p>
947
1121
  </dd></dl>
948
1122
 
949
1123
  <dl class="py method">
950
1124
  <dt class="sig sig-object py" id="snappy.DirichletDomain.num_finite_vertices">
951
- <span class="sig-name descname"><span class="pre">num_finite_vertices</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.num_finite_vertices" title="Permalink to this definition"></a></dt>
1125
+ <span class="sig-name descname"><span class="pre">num_finite_vertices</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.num_finite_vertices" title="Link to this definition"></a></dt>
952
1126
  <dd><p>Return the number of finite (non-ideal) vertices.</p>
953
1127
  </dd></dl>
954
1128
 
955
1129
  <dl class="py method">
956
1130
  <dt class="sig sig-object py" id="snappy.DirichletDomain.num_ideal_vertices">
957
- <span class="sig-name descname"><span class="pre">num_ideal_vertices</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.num_ideal_vertices" title="Permalink to this definition"></a></dt>
1131
+ <span class="sig-name descname"><span class="pre">num_ideal_vertices</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.num_ideal_vertices" title="Link to this definition"></a></dt>
958
1132
  <dd><p>Return the number of ideal vertices.</p>
959
1133
  </dd></dl>
960
1134
 
961
1135
  <dl class="py method">
962
1136
  <dt class="sig sig-object py" id="snappy.DirichletDomain.num_vertices">
963
- <span class="sig-name descname"><span class="pre">num_vertices</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.num_vertices" title="Permalink to this definition"></a></dt>
1137
+ <span class="sig-name descname"><span class="pre">num_vertices</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.num_vertices" title="Link to this definition"></a></dt>
964
1138
  <dd><p>Return the number of vertices.</p>
965
1139
  </dd></dl>
966
1140
 
967
1141
  <dl class="py method">
968
1142
  <dt class="sig sig-object py" id="snappy.DirichletDomain.out_radius">
969
- <span class="sig-name descname"><span class="pre">out_radius</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.out_radius" title="Permalink to this definition"></a></dt>
1143
+ <span class="sig-name descname"><span class="pre">out_radius</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.out_radius" title="Link to this definition"></a></dt>
970
1144
  <dd><p>Return the radius of the smallest circubscribed sphere.</p>
971
1145
  </dd></dl>
972
1146
 
973
1147
  <dl class="py method">
974
1148
  <dt class="sig sig-object py" id="snappy.DirichletDomain.pairing_matrices">
975
- <span class="sig-name descname"><span class="pre">pairing_matrices</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.pairing_matrices" title="Permalink to this definition"></a></dt>
1149
+ <span class="sig-name descname"><span class="pre">pairing_matrices</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.pairing_matrices" title="Link to this definition"></a></dt>
976
1150
  <dd><p>Returns a list of the O31Matrices which pair the faces of
977
1151
  this DirichletDomain.</p>
978
1152
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">M</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;s345&#39;</span><span class="p">)</span>
@@ -988,7 +1162,7 @@ this DirichletDomain.</p>
988
1162
 
989
1163
  <dl class="py method">
990
1164
  <dt class="sig sig-object py" id="snappy.DirichletDomain.pairing_words">
991
- <span class="sig-name descname"><span class="pre">pairing_words</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.pairing_words" title="Permalink to this definition"></a></dt>
1165
+ <span class="sig-name descname"><span class="pre">pairing_words</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.pairing_words" title="Link to this definition"></a></dt>
992
1166
  <dd><p>Group elements which pair the faces of this DirichletDomain
993
1167
  as words in the original generators:</p>
994
1168
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="n">M</span> <span class="o">=</span> <span class="n">Manifold</span><span class="p">(</span><span class="s1">&#39;m004&#39;</span><span class="p">)</span>
@@ -1003,7 +1177,7 @@ include_words = True.</p>
1003
1177
 
1004
1178
  <dl class="py method">
1005
1179
  <dt class="sig sig-object py" id="snappy.DirichletDomain.save">
1006
- <span class="sig-name descname"><span class="pre">save</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.save" title="Permalink to this definition"></a></dt>
1180
+ <span class="sig-name descname"><span class="pre">save</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">filename</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.save" title="Link to this definition"></a></dt>
1007
1181
  <dd><p>Save the Dirichlet domain as a text file in “% Generators” format.</p>
1008
1182
  <div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">&gt;&gt;&gt; </span><span class="kn">from</span> <span class="nn">snappy.number</span> <span class="kn">import</span> <span class="n">Number</span>
1009
1183
  <span class="gp">&gt;&gt;&gt; </span><span class="n">acc</span><span class="p">,</span> <span class="n">Number</span><span class="o">.</span><span class="n">_accuracy_for_testing</span> <span class="o">=</span> <span class="n">Number</span><span class="o">.</span><span class="n">_accuracy_for_testing</span><span class="p">,</span> <span class="kc">None</span>
@@ -1026,14 +1200,14 @@ include_words = True.</p>
1026
1200
 
1027
1201
  <dl class="py method">
1028
1202
  <dt class="sig sig-object py" id="snappy.DirichletDomain.spine_radius">
1029
- <span class="sig-name descname"><span class="pre">spine_radius</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.spine_radius" title="Permalink to this definition"></a></dt>
1203
+ <span class="sig-name descname"><span class="pre">spine_radius</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.spine_radius" title="Link to this definition"></a></dt>
1030
1204
  <dd><p>Return the infimum of the radii (measured from the origin) of all
1031
1205
  spines dual to the Dirichlet domain.</p>
1032
1206
  </dd></dl>
1033
1207
 
1034
1208
  <dl class="py method">
1035
1209
  <dt class="sig sig-object py" id="snappy.DirichletDomain.triangulation">
1036
- <span class="sig-name descname"><span class="pre">triangulation</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.triangulation" title="Permalink to this definition"></a></dt>
1210
+ <span class="sig-name descname"><span class="pre">triangulation</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.triangulation" title="Link to this definition"></a></dt>
1037
1211
  <dd><p>Returns a Triangulation computed directly from the Dirichlet
1038
1212
  domain, regarded as polyhedron with faces identified in pairs.
1039
1213
  Only works if this gives a manifold not an orbifold.</p>
@@ -1048,7 +1222,7 @@ Only works if this gives a manifold not an orbifold.</p>
1048
1222
 
1049
1223
  <dl class="py method">
1050
1224
  <dt class="sig sig-object py" id="snappy.DirichletDomain.vertex_list">
1051
- <span class="sig-name descname"><span class="pre">vertex_list</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">details</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.vertex_list" title="Permalink to this definition"></a></dt>
1225
+ <span class="sig-name descname"><span class="pre">vertex_list</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">details</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.vertex_list" title="Link to this definition"></a></dt>
1052
1226
  <dd><p>Return a list of the coordinates of the vertices. These are
1053
1227
  the three space coordinates of a point in the time=1 slice of
1054
1228
  Minkowski space. That is to say, these are the coordinates of
@@ -1061,14 +1235,9 @@ to is the value for ‘vertex_class’. The value for ‘ideal’
1061
1235
  is True if the vertex is an ideal point.</p>
1062
1236
  </dd></dl>
1063
1237
 
1064
- <dl class="py method">
1065
- <dt class="sig sig-object py" id="snappy.DirichletDomain.view">
1066
- <span class="sig-name descname"><span class="pre">view</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.view" title="Permalink to this definition"></a></dt>
1067
- <dd></dd></dl>
1068
-
1069
1238
  <dl class="py method">
1070
1239
  <dt class="sig sig-object py" id="snappy.DirichletDomain.volume">
1071
- <span class="sig-name descname"><span class="pre">volume</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.volume" title="Permalink to this definition"></a></dt>
1240
+ <span class="sig-name descname"><span class="pre">volume</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.DirichletDomain.volume" title="Link to this definition"></a></dt>
1072
1241
  <dd><p>Returns the approximate volume of the DirichletDomain.
1073
1242
  Because matrices in O(3,1) tend to accumulate roundoff error,
1074
1243
  it’s hard to get a good bound on the accuracy of the computed
@@ -1081,16 +1250,16 @@ manifolds defined by a set of generators.</p>
1081
1250
 
1082
1251
  </section>
1083
1252
  <section id="cuspneighborhood">
1084
- <h2>CuspNeighborhood<a class="headerlink" href="#cuspneighborhood" title="Permalink to this heading"></a></h2>
1253
+ <h2>CuspNeighborhood<a class="headerlink" href="#cuspneighborhood" title="Link to this heading"></a></h2>
1085
1254
  <dl class="py class">
1086
1255
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood">
1087
- <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">snappy.</span></span><span class="sig-name descname"><span class="pre">CuspNeighborhood</span></span><a class="headerlink" href="#snappy.CuspNeighborhood" title="Permalink to this definition"></a></dt>
1256
+ <em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">snappy.</span></span><span class="sig-name descname"><span class="pre">CuspNeighborhood</span></span><a class="headerlink" href="#snappy.CuspNeighborhood" title="Link to this definition"></a></dt>
1088
1257
  <dd><p>A CuspNeighborhood object represents an equivariant collection of
1089
1258
  disjoint horoballs that project to cusp neighborhoods.</p>
1090
1259
  <p>Instantiate as M.cusp_neighborhood()</p>
1091
1260
  <dl class="py method">
1092
1261
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.Ford_domain">
1093
- <span class="sig-name descname"><span class="pre">Ford_domain</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">high_precision</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.Ford_domain" title="Permalink to this definition"></a></dt>
1262
+ <span class="sig-name descname"><span class="pre">Ford_domain</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">high_precision</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.Ford_domain" title="Link to this definition"></a></dt>
1094
1263
  <dd><p>Return a list of pairs of complex numbers describing the
1095
1264
  endpoints of the segments obtained by projecting the edges of
1096
1265
  the Ford domain to the xy-plane in the upper half space model.</p>
@@ -1101,7 +1270,7 @@ SnapPy Numbers.</p>
1101
1270
 
1102
1271
  <dl class="py method">
1103
1272
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.all_translations">
1104
- <span class="sig-name descname"><span class="pre">all_translations</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">verified</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bits_prec</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.all_translations" title="Permalink to this definition"></a></dt>
1273
+ <span class="sig-name descname"><span class="pre">all_translations</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">verified</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">bits_prec</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.all_translations" title="Link to this definition"></a></dt>
1105
1274
  <dd><p>Returns the (complex) Euclidean translations of the meridian
1106
1275
  and longitude for each cusp measured with respect to the cusp neighborhood.</p>
1107
1276
  <p>The result is a list of pairs, the second entry corresponding to a
@@ -1156,13 +1325,13 @@ that they are disjoint.</p>
1156
1325
 
1157
1326
  <dl class="py method">
1158
1327
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.check_index">
1159
- <span class="sig-name descname"><span class="pre">check_index</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.check_index" title="Permalink to this definition"></a></dt>
1328
+ <span class="sig-name descname"><span class="pre">check_index</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.check_index" title="Link to this definition"></a></dt>
1160
1329
  <dd><p>Raises an IndexError if the cusp index is invalid.</p>
1161
1330
  </dd></dl>
1162
1331
 
1163
1332
  <dl class="py method">
1164
1333
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.get_displacement">
1165
- <span class="sig-name descname"><span class="pre">get_displacement</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.get_displacement" title="Permalink to this definition"></a></dt>
1334
+ <span class="sig-name descname"><span class="pre">get_displacement</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.get_displacement" title="Link to this definition"></a></dt>
1166
1335
  <dd><p>Return the displacement of the horospherical boundary of the
1167
1336
  specified cusp. The displacement is the hyperbolic distance
1168
1337
  that the horospherical boundary has been displaced from its
@@ -1174,14 +1343,14 @@ displacement 0.)</p>
1174
1343
 
1175
1344
  <dl class="py method">
1176
1345
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.get_tie">
1177
- <span class="sig-name descname"><span class="pre">get_tie</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.get_tie" title="Permalink to this definition"></a></dt>
1346
+ <span class="sig-name descname"><span class="pre">get_tie</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.get_tie" title="Link to this definition"></a></dt>
1178
1347
  <dd><p>Return True if the specified cusp is a member of the tied group.
1179
1348
  The displacements of the tied cusps are all the same.</p>
1180
1349
  </dd></dl>
1181
1350
 
1182
1351
  <dl class="py method">
1183
1352
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.horoballs">
1184
- <span class="sig-name descname"><span class="pre">horoballs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">cutoff</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">full_list</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">high_precision</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.horoballs" title="Permalink to this definition"></a></dt>
1353
+ <span class="sig-name descname"><span class="pre">horoballs</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">cutoff</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.1</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">full_list</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">high_precision</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.horoballs" title="Link to this definition"></a></dt>
1185
1354
  <dd><p>Return a list of dictionaries describing the horoballs with
1186
1355
  height at least cutoff. The keys are ‘center’, ‘radius’, ‘index’.</p>
1187
1356
  <p>If the high_precision flag is set to the default value False, these
@@ -1190,31 +1359,31 @@ are Python complexes and floats. Otherwise they are SnapPy Numbers.</p>
1190
1359
 
1191
1360
  <dl class="py method">
1192
1361
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.manifold">
1193
- <span class="sig-name descname"><span class="pre">manifold</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.manifold" title="Permalink to this definition"></a></dt>
1362
+ <span class="sig-name descname"><span class="pre">manifold</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.manifold" title="Link to this definition"></a></dt>
1194
1363
  <dd><p>Return a Manifold built from the current canonical triangulation.</p>
1195
1364
  </dd></dl>
1196
1365
 
1197
1366
  <dl class="py method">
1198
1367
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.max_reach">
1199
- <span class="sig-name descname"><span class="pre">max_reach</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.max_reach" title="Permalink to this definition"></a></dt>
1368
+ <span class="sig-name descname"><span class="pre">max_reach</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.max_reach" title="Link to this definition"></a></dt>
1200
1369
  <dd><p>Return the maximum reach over all cusps.</p>
1201
1370
  </dd></dl>
1202
1371
 
1203
1372
  <dl class="py method">
1204
1373
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.num_cusps">
1205
- <span class="sig-name descname"><span class="pre">num_cusps</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.num_cusps" title="Permalink to this definition"></a></dt>
1374
+ <span class="sig-name descname"><span class="pre">num_cusps</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.num_cusps" title="Link to this definition"></a></dt>
1206
1375
  <dd><p>Return the number of cusps.</p>
1207
1376
  </dd></dl>
1208
1377
 
1209
1378
  <dl class="py method">
1210
1379
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.original_index">
1211
- <span class="sig-name descname"><span class="pre">original_index</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.original_index" title="Permalink to this definition"></a></dt>
1380
+ <span class="sig-name descname"><span class="pre">original_index</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.original_index" title="Link to this definition"></a></dt>
1212
1381
  <dd><p>Returns the index by which the Manifold identifies this cusp.</p>
1213
1382
  </dd></dl>
1214
1383
 
1215
1384
  <dl class="py method">
1216
1385
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.reach">
1217
- <span class="sig-name descname"><span class="pre">reach</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.reach" title="Permalink to this definition"></a></dt>
1386
+ <span class="sig-name descname"><span class="pre">reach</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.reach" title="Link to this definition"></a></dt>
1218
1387
  <dd><p>Return the displacement at which the specified cusp
1219
1388
  neighborhood bumps into itself. (This is twice the
1220
1389
  distance between nearest horoball lifts.)</p>
@@ -1222,19 +1391,19 @@ distance between nearest horoball lifts.)</p>
1222
1391
 
1223
1392
  <dl class="py method">
1224
1393
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.set_displacement">
1225
- <span class="sig-name descname"><span class="pre">set_displacement</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">new_displacement</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.set_displacement" title="Permalink to this definition"></a></dt>
1394
+ <span class="sig-name descname"><span class="pre">set_displacement</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">new_displacement</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.set_displacement" title="Link to this definition"></a></dt>
1226
1395
  <dd><p>Set the displacement of the specified cusp.</p>
1227
1396
  </dd></dl>
1228
1397
 
1229
1398
  <dl class="py method">
1230
1399
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.set_tie">
1231
- <span class="sig-name descname"><span class="pre">set_tie</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">new_tie</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.set_tie" title="Permalink to this definition"></a></dt>
1400
+ <span class="sig-name descname"><span class="pre">set_tie</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">new_tie</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.set_tie" title="Link to this definition"></a></dt>
1232
1401
  <dd><p>Mark the specified cusp as a member of the tied group.</p>
1233
1402
  </dd></dl>
1234
1403
 
1235
1404
  <dl class="py method">
1236
1405
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.stopper">
1237
- <span class="sig-name descname"><span class="pre">stopper</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.stopper" title="Permalink to this definition"></a></dt>
1406
+ <span class="sig-name descname"><span class="pre">stopper</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.stopper" title="Link to this definition"></a></dt>
1238
1407
  <dd><p>Return the index of the cusp which will be the first one that
1239
1408
  the specified cusp neighborhood bumps into.
1240
1409
  (Assumes the other displacements are fixed.)</p>
@@ -1242,7 +1411,7 @@ the specified cusp neighborhood bumps into.
1242
1411
 
1243
1412
  <dl class="py method">
1244
1413
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.stopping_displacement">
1245
- <span class="sig-name descname"><span class="pre">stopping_displacement</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.stopping_displacement" title="Permalink to this definition"></a></dt>
1414
+ <span class="sig-name descname"><span class="pre">stopping_displacement</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.stopping_displacement" title="Link to this definition"></a></dt>
1246
1415
  <dd><p>Return the displacement at which the specified cusp
1247
1416
  neighborhood bumps into itself or another cusp neighborhood.
1248
1417
  (Assumes the other displacements are fixed.)</p>
@@ -1250,13 +1419,13 @@ neighborhood bumps into itself or another cusp neighborhood.
1250
1419
 
1251
1420
  <dl class="py method">
1252
1421
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.topology">
1253
- <span class="sig-name descname"><span class="pre">topology</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.topology" title="Permalink to this definition"></a></dt>
1422
+ <span class="sig-name descname"><span class="pre">topology</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.topology" title="Link to this definition"></a></dt>
1254
1423
  <dd><p>Return the topological type of the specified cusp.</p>
1255
1424
  </dd></dl>
1256
1425
 
1257
1426
  <dl class="py method">
1258
1427
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.translations">
1259
- <span class="sig-name descname"><span class="pre">translations</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.translations" title="Permalink to this definition"></a></dt>
1428
+ <span class="sig-name descname"><span class="pre">translations</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.translations" title="Link to this definition"></a></dt>
1260
1429
  <dd><p>Return the (complex) Euclidean translations of the meridian
1261
1430
  and longitude of the specified cusp.</p>
1262
1431
  <p>Also see <a class="reference internal" href="#snappy.CuspNeighborhood.all_translations" title="snappy.CuspNeighborhood.all_translations"><code class="xref py py-meth docutils literal notranslate"><span class="pre">CuspNeighborhood.all_translations()</span></code></a> which supports
@@ -1265,7 +1434,7 @@ arbitrary precision and verified results.</p>
1265
1434
 
1266
1435
  <dl class="py method">
1267
1436
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.triangulation">
1268
- <span class="sig-name descname"><span class="pre">triangulation</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">high_precision</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.triangulation" title="Permalink to this definition"></a></dt>
1437
+ <span class="sig-name descname"><span class="pre">triangulation</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">high_precision</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.triangulation" title="Link to this definition"></a></dt>
1269
1438
  <dd><p>Return a list of dictionaries describing the endpoints of the
1270
1439
  segments obtained by projecting the edges of the triangulation
1271
1440
  dual to the Ford domain into the xy-plane in the upper half
@@ -1274,7 +1443,7 @@ space model. The keys are ‘endpoints’ and ‘indices’.</p>
1274
1443
 
1275
1444
  <dl class="py method">
1276
1445
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.view">
1277
- <span class="sig-name descname"><span class="pre">view</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cutoff</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.view" title="Permalink to this definition"></a></dt>
1446
+ <span class="sig-name descname"><span class="pre">view</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">cutoff</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.view" title="Link to this definition"></a></dt>
1278
1447
  <dd><p>Create a 3D picture of the horoball packing. One can specify
1279
1448
  which cusp to put at infinity and how large of horoballs to
1280
1449
  look at, e.g.</p>
@@ -1287,7 +1456,7 @@ look at, e.g.</p>
1287
1456
 
1288
1457
  <dl class="py method">
1289
1458
  <dt class="sig sig-object py" id="snappy.CuspNeighborhood.volume">
1290
- <span class="sig-name descname"><span class="pre">volume</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.volume" title="Permalink to this definition"></a></dt>
1459
+ <span class="sig-name descname"><span class="pre">volume</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">which_cusp</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#snappy.CuspNeighborhood.volume" title="Link to this definition"></a></dt>
1291
1460
  <dd><p>Return the volume of the horoball neighborhood of the specified
1292
1461
  cusp.</p>
1293
1462
  </dd></dl>
@@ -1308,7 +1477,7 @@ cusp.</p>
1308
1477
  <hr/>
1309
1478
 
1310
1479
  <div role="contentinfo">
1311
- <p>&#169; Copyright 2009-2023, by Marc Culler, Nathan Dunfield, Matthias Goerner, Jeffrey Weeks and others.</p>
1480
+ <p>&#169; Copyright 2009-2025, by Marc Culler, Nathan Dunfield, Matthias Goerner, Jeffrey Weeks and others.</p>
1312
1481
  </div>
1313
1482
 
1314
1483
  Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a