with(plots):with(LinearAlgebra): EFG:=proc(X) > local Xu,Xv,E,F,G; > Xu:=; > Xv:=; > E:=DotProduct(Xu,Xu,conjugate=false); > F:=DotProduct(Xu,Xv,conjugate=false); > G:=DotProduct(Xv,Xv,conjugate=false); > simplify([E,F,G]); > end: UN:=proc(X) > local Xu,Xv,Z,s; > Xu:=; > Xv:=; > Z:=CrossProduct(Xu,Xv); > s:=VectorNorm(Z,Euclidean,conjugate=false); > simplify(,sqrt,trig,symbolic); > end: lmn:=proc(X) > local Xu,Xv,Xuu,Xuv,Xvv,U,l,m,n; > Xu:=; > Xv:=; > Xuu:=; > Xuv:=; > Xvv:=; > U:=UN(X); > l:=DotProduct(U,Xuu,conjugate=false); > m:=DotProduct(U,Xuv,conjugate=false); > n:=DotProduct(U,Xvv,conjugate=false); > simplify([l,m,n],sqrt,trig,symbolic); > end: GK:=proc(X) > local E,F,G,l,m,n,S,T; > S:=EFG(X);T:=lmn(X); > E:=S[1];F:=S[2];G:=S[3]; > l:=T[1];m:=T[2];n:=T[3]; > simplify((l*n-m^2)/(E*G-F^2),sqrt,trig,symbolic); > end: MK:=proc(X) > local E,F,G,l,m,n,S,T; > S:=EFG(X);T:=lmn(X); > E:=S[1];F:=S[2];G:=S[3]; > l:=T[1];m:=T[2];n:=T[3]; > simplify((G*l+E*n-2*F*m)/(2*E*G-2*F^2),sqrt,trig,symbolic); > end: helcat:= |u*cos(t)+v*sin(t)>; MK(helcat); GK(helcat); henneberg:=<2*sinh(u)*cos(v)-2/3*sinh(3*u)*cos(3*v)|2*sinh(u)*sin(v)+2/3*sinh(3*u)*sin(3*v)|2*cosh(2*u)*cos(2*v)>; MK(henneberg); GK(henneberg); catalan:=; MK(catalan); GK(catalan); Ennep:=; MK(Ennep); GK(Ennep); sherk5:=; MK(sherk5); GK(sherk5); plane:=<(c*u+sin(u)*cosh(v))/sqrt(1-c^2)|(v+c*cos(u)*sinh(v))/sqrt(1-c^2)|cos(u)*cosh(v)>; MK(plane); GK(plane);