Cross-Cap

Author

Eric W. Weisstein
June 20, 2013

This notebook downloaded from http://mathworld.wolfram.com/notebooks/Surfaces/Cross-Cap.nb.

For more information, see Eric's MathWorld entry http://mathworld.wolfram.com/Cross-Cap.html.

©2013 Wolfram Research, Inc. except for portions noted otherwise

Code

CrossCap::usage="CrossCap[f] gives a Graphics3D object of the crosscap squashed by a factor of f.";

CrossCap[f_:1]:=Module[{t,p},Graphics3D[ParametricPlot3D[crosscap[{t,p},f],{t,0,2Pi},{p,0,Pi/2},Boxed->False,DisplayFunction->Identity,Ticks->None][[1]]]]

x[t_,p_]:=Cos[t]Sin[p]
y[t_,p_]:=Sin[t]Sin[p]
z[t_,p_]:=Cos[p]

crosscap[{t_,p_},f_]:={f x[t,p]z[t,p],f y[t,p]z[t,p],(z[t,p]^2-x[t,p]^2)/2}

crosscap[{θ,ϕ},1]//FullSimplify

surf[a_][u_,v_]:=a{Sin[u]Sin[2v]/2,Sin[2u]Sin[v]^2,Cos[2u]Sin[v]^2}

Equation

eqns=Join[Thread[{x,y,z}==TrigExpand[surf[a][u,v]]],Cos[#]^2+Sin[#]^2==1&/@{u,v}]

{eqn}=Factor/@GroebnerBasis[eqns,{x,y,z},{Cos[u],Sin[u],Cos[v],Sin[v]},MonomialOrder->EliminationOrder]

FullSimplify[eqn]

eqn=4 (x^4)+(y^2) (-(a^2)+(y^2)+(z^2))+4 (x^2) ((y^2)+z (a+z));

Squashed

V5

Show[Graphics3D[CrossCap],Boxed->False]

V6

ParametricPlot3D[surf[1][u,v],{u,0,Pi},{v,-Pi/2,Pi/2}]

LiveGraphics3D

<<Utilities`LiveGraphics3D`

WriteLiveForm["crosssq.m",Graphics3D[CrossCap,Boxed->False]]

WriteLiveForm["crosssq.m",Show[CrossCap[.5],opts]]

Non-Squashed

Show[CrossCap[],Boxed->False,ViewPoint->{.2,-2,.7}]

Show[GraphicsArray[{cc,Show[cc,ViewPoint->{1,0,-2},DisplayFunction->Identity],Show[cc,ViewPoint->{.2,-2,.2},DisplayFunction->Identity]}],DisplayFunction->$DisplayFunction]

LiveGraphics3D

<<Utilities`LiveGraphics3D`

WriteLiveForm[cross.m,Show[CrossCap[]]]

Inversion

Inv[r_,x0_List,x_List]:=x0+r^2(x-x0)/(x-x0).(x-x0)
ParametricPlot3D[Evaluate[Inv[5,{0,0,4.5},CrossCap[t,p]]],{t,0,2Pi},{p,0,Pi/2},Boxed->False,Axes->False]

Properties

Curvatures[surf[a][u,v],{u,v},FullSimplify[#,a>0&&-Pi/2<v<Pi/2]&]

ByteCount/@(k=GaussianCurvature[eqn,{x,y,z}])

FullSimplify[k[[4]]]

Principal Curvatures

FullSimplify[PrincipalCurvatures[surf[a][u,v],{u,v}],a>0&&b>0]

Surface Area

(1/8) (a^2) NIntegrate[√(-4 (9+Cos[2 u]+(-7+Cos[2 u]) Cos[2 v]) (-3+Cos[2 u]+2 ((Cos[u])^2) Cos[4 v]) ((Sin[v])^2)-((Sin[2 u])^2) ((Sin[4 v])^2)),{u,0,Pi},{v,-Pi/2,Pi/2}]//Chop

FullSimplify[(-4 (9+Cos[2 u]+(-7+Cos[2 u]) Cos[2 v]) (-3+Cos[2 u]+2 ((Cos[u])^2) Cos[4 v]) ((Sin[v])^2)-((Sin[2 u])^2) ((Sin[4 v])^2)),0<u<Pi&&-Pi/2<v<Pi/2]

Volume

Integrate[Boole[4 (x^4)-(a^2) (y^2)+4 (x^2) (y^2)+(y^4)+4 a (x^2) z+4 (x^2) (z^2)+(y^2) (z^2)<0],{x,-∞,∞},{y,-∞,∞},{z,-∞,∞},Assumptions->a>0]//Timing

Inertia Tensor

(i=With[{ρ=(M/(((a^3) π)/2))},ρ Integrate[{{y^2+z^2,-x y,-x z},
{-x y,z^2+x^2,-y z},
{-x z,-y z,x^2+y^2}}Boole[4 (x^4)-(a^2) (y^2)+4 (x^2) (y^2)+(y^4)+4 a (x^2) z+4 (x^2) (z^2)+(y^2) (z^2)<0],
{x,-∞,∞},{y,-∞,∞},{z,-∞,∞},Assumptions->a>0]
]);//Timing

i

{{((7 (a^2) M)/16),0,0},{0,((59 (a^2) M)/240),0},{0,0,((11 (a^2) M)/40)}}/.M->1

i//TraditionalForm

Metric Properties

Metric Tensor

MetricTensor[surf[a][u,v],{u,v}]//FullSimplify

Christoffel Symbol of the Second Kind

FullSimplify[ChristoffelSymbols[surf[a][u,v],{u,v}],a>0]

Vector Properties

eqn=a{Sin[u]Sin[2v]/2,Sin[2u]Sin[v]^2,Cos[2u]Sin[v]^2};

Vector Length

FullSimplify[Norm[eqn]/.Abs[x_]^2:>x^2,(u|v)∈Reals&&a>0]

Normal Vector

FullSimplify[NormalVector[eqn,{u,v}]/.Abs[x_]^2:>x^2,(u|v)∈Reals&&a>0]