Skip to main content

A high-performance Python library for the generation and visualization of hyperbolic tilings

Project description

project icon

PyPI Discord Website

PyPI - Downloads DOI

hypertiling is a high-performance Python 3 library for the generation and visualization of hyperbolic lattices, embedded in the Poincare disk model. Using efficient algorithms and the CPU/SIMD optimization provided by numpy, hyperbolic tilings with millions of vertices can be created in a matter of minutes on a single workstation computer. Facilities including optimized search algorithms for adjacent vertices and powerful plotting and animation capabilities are provided to support scientific and other advanced uses of the graphs.

Installation

hypertiling is available in the PyPI package index and can be installed using

$ pip install hypertiling

The package can also be locally installed from our public git repository via

$ git clone https://git.physik.uni-wuerzburg.de/hypertiling/hypertiling
$ pip install .

Usage

In Python, import tiling object from the hypertiling library

from hypertiling import HyperbolicTiling

Set parameters, initialize and generate the tiling

p = 7
q = 3
nlayers = 5

T = HyperbolicTiling(p,q,nlayers) 

Further examples are available in our documentation and Jupyter demo notebooks.

Authors

This project is developed at:
Institute for Theoretical Physics and Astrophysics
University of Wuerzburg

Examples

Simulation of a Ising-like Boltzmann spin model on a hyperbolic (7,3) tiling at low temperature. One readily recognizes a number of magnetic domains of opposite spin orientation (red/blue areas). The domain walls are approximately given by arcs of Euclidean circles contained within the disk and orthogonal to its boundary. These arcs represent straight lines in the Poincare disk representation of the hyperbolic plane.

Further information and examples can be found in our Jupyter notebooks in /examples subfolder.

License

Every part of hypertiling is available under the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hypertiling-1.2.tar.gz (55.9 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page