EnvelopeNormalPlanes::usage="Find the envelope, the characteristics, and the recoil edge of the family of normal planes to a given curve. References: Mishchenko, A.S., Solovyev, Yu.P., Fomenko, A.T.Problems in Differential Geometry and Topology. Mir Publishers Moscow: p.40, 1985; Personal.";
The curve ζ[t] = {5 t, , }. will be used.
2
t
3
t
Family of normal planes:
In[]:=
Q[t_]:={5t,,};x[t_]:=5t;y[t_]:=;z[t_]:=;(x-x[t])x'[t]+(y-y[t])y'[t]+(z-z[t])z'[t]==0
2
t
3
t
2
t
3
t
In[]:=
Expand[5(-5t+x)+2t(-+y)+3(-+z)0]
2
t
2
t
3
t
Out[]=
-25t-2-3+5x+2ty+3z0
3
t
5
t
2
t
Characteristics:
In[]:=
Solve[-25t-2-3+5x+2ty+3z0,(-25t-2-3+5x+2ty+3z)==0,{x,y}]
3
t
5
t
2
t
∂
t
3
t
5
t
2
t
Out[]=
x(-4-12+3z),y(25+6+15-6tz)
1
5
3
t
5
t
2
t
1
2
2
t
4
t
(-4-12+3z),(25+6+15-6tz),z;
1
5
3
t
5
t
2
t
1
2
2
t
4
t
Envelope :
In[]:=
Eliminatex==(-4-12+3z),y==(25+6+15-6tz),z==z,t
1
5
3
t
5
t
2
t
1
2
2
t
4
t
In[]:=
Simplify[-21904000000-549086400-52734375+8808960000y+88920000y-1417036800-3600000+113973248-4583424+73728+3312432000xz+25312500z-799954560xyz+64396800xz-1728000xz-121320000-116133750+29131200y+9112500y-2331648+62208+12740220x-1020600xy+4100625-656100y+26244-393660x0]
2
x
4
x
2
x
2
y
2
x
2
y
3
y
4
y
5
y
3
x
2
y
3
y
2
z
2
x
2
z
2
z
2
x
2
z
2
y
2
z
3
y
2
z
3
z
3
z
4
z
4
z
2
y
4
z
5
z
25312500z+(-35046400-685056+18432-194112+6561+64y(132608+243))45x(1171875+10x(1220192+8000+258075-50y(3952+405))+4z(-1842400-357760+9600-70779+2187+y(4444192+5670)));
3
x
2
(25-2y)
2
y
3
y
2
z
4
z
2
z
3
x
2
y
2
z
2
z
2
y
3
y
2
z
4
z
2
z
The cartesian equation is very complicated, we will use:
(-4-12+3z),(25+6+15-6tz),z;
1
5
3
t
5
t
2
t
1
2
2
t
4
t
Recoil edge:
In[]:=
Solve-25t-2-3+5x+2ty+3z0,(-25t-2-3+5x+2ty+3z)==0,(-25t-2-3+5x+2ty+3z)==0,{x,y,z}
3
t
5
t
2
t
∂
t
3
t
5
t
2
t
∂
t,t
3
t
5
t
2
t
Out[]=
x(+9),y(25-6-45),z2(t+5)
2
5
3
t
5
t
1
2
2
t
4
t
3
t
(+9),(25-6-45),2(t+5);
2
5
3
t
5
t
1
2
2
t
4
t
3
t
Animator:
In[]:=
SwatchLegend[{Yellow,Blue,Green,Red},{"Envelope of the normal planes","Characteristics","Recoil edge","Normal planes"}]ManipulateClearAll;ShowContourPlot3D[-25t1-2-3+5x+2t1y+3z0,{x,-10,10},{y,-20,20},{z,-10,10},ContourStyleDirective[Red,Opacity[0.7],Specularity[White,30]],MeshFalse,BoundaryStyleDirective[Black,Thick],PerformanceGoal"Quality"],ParametricPlot3D(-4-12+3z),(25+6+15-6t1z),z,{z,-5,5},PlotStyle{Blue,Thick},ParametricPlot3D(-4-12+3z),(25+6+15-6tz),z,{t,-1,1},{z,-5,10},BoundaryStyleDirective[Black,Thick],PlotStyleDirective[Yellow,Opacity[0.6],Specularity[White,30]],MeshFalse,PerformanceGoal"Quality",ParametricPlot3D(+9),(25-6-45),2(t+5),{t,-0.7,0.7t1},PlotStyle->{Green,Thickness[0.005]},AxesLabel->(Style[#,15,Blue]&/@{"X","Y","Z"}),AxesOrigin{0,0,0},AxesTrue,BoxedFalse,BoxRatiosAutomatic,PlotRangeAll,ViewPoint{-3,7,-2.},ImageSize900,Style["Envelope of normal planes:",Bold,Large],{{t1,-0.9,"Value (t1)"},-1+0.00001,1,0.00001},ControlPlacementTop
3
t1
5
t1
2
t1
1
5
3
t1
5
t1
2
t1
1
2
2
t1
4
t1
1
5
3
t
5
t
2
t
1
2
2
t
4
t
2
5
3
t
5
t
1
2
2
t
4
t
3
t
Out[]=
Out[]=

