Low Dimensional Topology

March 2, 2014

SnapPy 2.1: Now with extra precision!

Filed under: 3-manifolds,Computation and experiment,Hyperbolic geometry,Knot theory — Nathan Dunfield @ 11:39 pm

Marc Culler and I released SnapPy 2.1 today. The main new feature is the ManifoldHP variant of Manifold which does all floating-point calculations in quad-double precision, which has four times as many significant digits as the ordinary double precision numbers used by Manifold. More precisely, numbers used in ManifoldHP have 212 bits for the mantissa/significand (roughly 63 decimal digits) versus 53 bits with Manifold.

To the user, the only difference between Manifold and ManifoldHP is the extra precision, see here for details.


  1. Q: How does this differ from the program Snap or the corresponding features of SnapPy?

    A: Snap computes hyperbolic structures to whatever precision you specify, not just 212 bits. However, only some aspects of that structure can be accessed at the higher precision. In contrast, with ManifoldHP every part of the SnapPea kernel uses the high-precision structure. Eventually, we hope to add a ManifoldAP which allows for arbitrary precision throughout the kernel.

  2. Q: Are there any negatives to using ManifoldHP over Manifold?

    A: Yes, ManifoldHP is generally slower by a factor of 10 to 100. Multiplying two quad-double numbers requires at least 10 ordinary double multiplications, so some of this is inevitable.

  3. Q: What is one place where the extra precision really helps?

    A: Computing Dirichlet domains and subsidiary things like the length spectrum. A ManifoldHP can find the Dirichlet domain of a typically 15 crossing knot exterior but Manifold can’t.

Leave a Comment »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Blog at WordPress.com.

%d bloggers like this: