Flipper is a program for computing the action of mapping classes on laminations on punctured surfaces using ideal triangulation coordinates. It can decide the Nielsen--Thurston type of a given mapping class and, for pseudo-Anosov mapping classes, construct a layered, veering triangulation of their mapping torus, as described by Agol.
Flipper officially supports Python 2.7 and 3.6 -- 3.8. It also runs on PyPy and Sage. To get the best performance, ensure that cypari or cypari2 is installed or run from it within Sage.
Flipper is available on PyPI, so it can be installed via:
$ pip install flipper --user --upgrade
Once installed, try it inside of Python:
>>> import flipper >>> S = flipper.load('S_1_2') >>> h = S('a.b.C') >>> h.is_pseudo_anosov() True >>> print(h.dilatation()) 2.296630262