C Prior: Downloadable code

Note: all code posted here is free to distribute.

A tool box for evaluating the topology of ribbons.
The following routines are used for calculating the net winding of two curves bound between planes
as well as the polar writhing of a single curve. This can be used to calculate the open equivalent of the
Calugareanu-White-Fuller decomposition of the ribbon detailed in this paper.  I extended this framework in joint work
with Sebastien Neukirch in which we allowed for ribbons which looped over their ends (this motion is the so-called dirac belt trick)
(the paper can be found here). The code has recently been modified in order to deal with less than differentiable curves following private conversations with Zachary Sierzega

The first set of routines calculate various forms of the writhe. First for closed curves

Closed writhe
Here the polar and standard writhe definitions give the same value. However, with the polar writhe calculation there
is further information in the decomposition into local and non local contributions.

On Linux The routine is compiled under g++ by running

sh makeFileGenClosed.sh

then running

./polarWritheClosed <file>

<file> is assumed to be in the same folder as the command polarWritheClosed

Open polar writhe
This quantity calculates the angles the end points of the curve make with the curve itself. This is the standard definition
here for details).

On Linux The routine is compiled under g++ by running

sh makeFileGenStandard.sh

then running

./polarWritheGen <file>

Following conversations with Zacahary Sierzega