From time to time, people ask me about visualizing knots in Maple. There's no formal "Knot Theory" package in Maple per se, but it is certainly possible to generate many different knots using a couple of simple commands. The following shows various examples of knots visualized using the plots:-tubeplot and algcurves:-plot_knot commands.

The unknot can be defined by the following parametric equations:

*x=sin(t)*

*y=cos(t)*

*z=0*

plots:-tubeplot([cos(t),sin(t),0,t=0..2*Pi],

radius=0.2, axes=none, color="Blue", orientation=[60,60], scaling=constrained, style=surfacecontour);

The trefoil knot can be defined by the following parametric equations:

*x = sin(t) + 2*sin(2*t)*

*y = cos(t) + 2*sin(2*t)*

*z = sin(3*t)*

plots:-tubeplot([sin(t)+2*sin(2*t),cos(t)-2*cos(2*t),-sin(3*t), t= 0..2*Pi],

radius=0.2, axes=none, color="Green", orientation=[90,0], style=surface);

The figure-eight can be defined by the following parametric equations:

*x = (2 + cos(2*t)) * cos(3*t)*

*y = (2 + cos(2*t)) * sin(3*t)*

*z = sin(4*t)*

plots:-tubeplot([(2+cos(2*t))*cos(3*t),(2+cos(2*t))*sin(3*t),sin(4*t),t=0..2*Pi],

numpoints=100, radius=0.1, axes=none, color="Red", orientation=[75,30,0], style=surface);

The Lissajous knot can be defined by the following parametric equations:

Where n[x], n[y], and n[z] are integers and the phase shifts phi[x], phi[y], and phi[z] are any real numbers.

The 8 21 knot ( n[x] = 3, n[y] = 4, and n[z] = 7) appears as follows:

plots:-tubeplot([cos(3*t+Pi/2),cos(4*t+Pi/2),cos(7*t),t=0..2*Pi],

radius=0.05, axes=none, color="Brown", orientation=[90,0,0], style=surface);

A star knot can be defined by using the following polynomial:

f := -x^5+y^2

algcurves:-plot_knot(f,x,y,epsilon=0.7,

radius=0.25, tubepoints=10, axes=none, color="Orange", orientation=[60,0], style=surfacecontour);

By switching x and y, different visualizations can be generated:

g:=(y^3-x^7)*(y^2-x^5)+y^3;

plots:-display(<

algcurves:-plot_knot(g,y,x, epsilon=0.8, radius=0.1, axes=none, color="CornflowerBlue", orientation=[75,30,0])|

algcurves:-plot_knot(g,x,y, epsilon=0.8, radius=0.1, axes=none, color="OrangeRed", orientation=[75,0,0])>);

f:=(y^3-x^7)*(y^2-x^5);

algcurves:-plot_knot(f,x,y,

epsilon=0.8, radius=0.1, axes=none, orientation=[35,0,0]);

h:=(y^3-x^7)*(y^3-x^7+100*x^13)*(y^3-x^7-100*x^13);

algcurves:-plot_knot(h,x,y,

epsilon=0.8, numpoints=400, radius=0.03, axes=none, color=["Blue","Red","Green"], orientation=[60,0,0]);

Please feel free to add more of your favourite knot visualizations in the comments below!

You can interact with the examples or download a copy of these examples from the MapleCloud here: https://maple.cloud/app/5654426890010624/Examples+of+Knots