How you can contribute

From Knot Atlas
Jump to navigationJump to search

There are many possible ways you might want to contribute to the Knot Atlas. This page will tell you where to start!

Fixing mistakes

Editing the manual

See How to Edit this Manual... and math mode.

Improving the formatting or layout of knot pages

This is highly needed and should be a pretty straightforward, once you know where to go. (If you already have some experience with mediawiki markup from Wikipedia, this should be very easy.)

To modify the layout of a section (note -- your changes will affect all knots that display this section), simply click the 'edit' link on the right side of the page level with the section heading. This will actually edit the template generating this section.

To modify the layout of the entire page (for example, to change the order of the sections), you need to edit the main template. There'll be a link at the bottom of the knot page for this. (See Category:Primary Knot Page Template for all the knot page templates.) Click on this link, and then select edit once you've reached that page. (The template itself will display as a big mess -- hopefully the wiki source will be easier to understand.)

For more details, see Modifying Knot Pages.

Adding comments or references for the data

Adding more data for an existing invariant

See ManagingKnotData.m (File:ManagingKnotData.m).

Adding a new invariant

By hand

Using WikiSplice`

By uploading data

See ManagingKnotData.m (File:ManagingKnotData.m).

Adding a new knot table

Wow! You'll need a bit of everything above, and a little patience. Here are the major steps.

Prepare and upload images

(Optional!) The images will look best if they are all of a uniform size (that is, don't crop the knot images down to a minimal rectangle bounding the knot), and have a transparent background. There's no problem uploading images at a higher resolution than you'll need on either the knot table page, or the individual knot pages, because the Mediawiki software can automatically resize images on demand. You'll then need to name the images. A good way of doing this is to give each image the same name as its knot; for example the image for the torus knot T(5,3) is called T(5,3).jpg. Once the images are prepared and named, you can upload them to the wiki. There is a simple Mathematica notebook UploadingImages.nb (in the KnotAtlas SVN repository) which automates all of these tasks.

Create the knot table

Have a look at the source of The Rolfsen Knot Table, or anything in Category:Knot Table for an idea of how to do this. It'd be nice if you added a link to [[Category:Knot Table]] somewhere. There's a short mathematica notebook, GeneratingKnotTables.nb (in the KnotAtlas SVN repository), for generating the table entries.

Upload data


Create a splice template for the knot pages

Typically, the knot pages for each knot in a certain table are generated by a mathematica notebook called KnotPageSpliceRobot.nb, from a 'splice template'. Thus, for example, the pages 5_1 and 10_68 were created programmatically from Rolfsen Splice Template, while L6a1 and L10n25 were created from Link Splice Template. The splicing robot reads in the splice template, and replaces sections of Mathematica code with appropriate output, iterating over all values of a variable K appropriate to the knot table.

See Category:Splice Template for sample splice templates. The splice template page should not contain any formatting instructions, simply a call to a 'Knot Page Template' (see Category:Knot Page Template), with output from Mathematica passed as parameters. The knot page template then contains all the formatting instructions, using these parameters as appropriate.

The splice template contains sections delimited by <* *>. There are read by Mathematica and interpreted. The output then passes through the function ToString[#, WikiForm]&, and replaces the <* *> section in the final knot page.

Todo: Describe what is defined (e.g. ThisKnot) during the splice call.

You might start with Sandbox Knot Splice Template and Template:Sandbox Knot Page, and go from there.

Run the splicer to create the knot pages