// Klein Bottle // Parametisation of the immersion of the bottle in 3D u = linspace(0,%pi,40); // t in Derive v = linspace(0,2*%pi,40); // s in Derive [u,v] = meshgrid(u,v); // Standard parametric equations for immersion in R3 x = (- 2/15)*cos(u)*(3*cos(v) - 30*sin(u) + 90*cos(u)^4*sin(u) - 60*cos(u) .^6*sin(u) + 5*cos(u)*cos(v)*sin(u)); y = (- 1/15)*sin(u)*(3*cos(v) - 3*cos(u)^2*cos(v) - 48*cos(u)^4*cos(v) + 48*cos(u)^6*cos(v) - 60*sin(u) + 5*cos(u)*cos(v)*sin(u) - 5*cos(u)^3*cos(v)*sin(u) - 80*cos(u)^5*cos(v)*sin(u) + 80*cos(u)^7*cos(v)*sin(u)); z = 2/15*(3 + 5*cos(u)*sin(u))*sin(v); surf(x,y,z) f = gcf(); f.figure_size=[1024,800]; f.figure_name = "Klein Bottle"; f.color_map = jetcolormap(64);