LoxodromeCone::usage="It is considered the cone of revolution + = . Build a parameterization of a curve (loxodrome) located in the cone, which forms a constant angle α with the generatrix and passes through the point {a, 0, 1}, a > 0. References: www2.caminos.upm.es; Personal.";
2
x
2
y
2
a
2
z
Development:
Parametric equations of cone:
σ[t_,v_]:={avCos[t],avSin[t],v};
Parametric equations of generatrix ℒ :
vCos[t],Sin[t],;
1
a
Parametric equations of loxodrome (logarithmic spiral):
In[]:=
ξ[t_]:=aCos[t],aSin[t],;
bt
bt
bt
Calculation of the α angle between the director vector of the generatrix line and the tangent vector of the logarithmic spiral:
In[]:=
d[t_]:=Cos[t],Sin[t],;ξ[t_]:=aCos[t],aSin[t],;
1
a
bt
bt
bt
In[]:=
d[t].ξ'[t]//FullSimplify
(1+)b
2
a
bt
a
In[]:=
Norm[d[t]]Norm[ξ'[t]]//FullSimplify
1
Abs[a]
Re[bt]
2
Abs[aCos[t]]
2
Abs[aSin[t]]
2
Abs[b]
2
Abs[a(bCos[t]-Sin[t])]
2
Abs[a(Cos[t]+bSin[t])]
bt
a
(1+)(+(-2bSin[t]Cos[t]+)+(+2bSin[t]Cos[t]+))
;2
a
2
b
2
a
2
b
2
Cos[t]
2
Sin[t]
2
a
2
Cos[t]
2
b
2
Sin[t]
bt
a
(1+)(++)
;2
a
2
b
2
a
2
b
2
a
1+b
2
a
bt
a
bt
a
(1+)(++)
2
a
2
b
2
a
2
b
2
a
1+
2
a
2
b
2
a
2
b
2
a
Cos[α]=b++;
1+
2
a
2
b
2
a
2
b
2
a
The angle α between the director vector of the generatrix line and the tangent vector of the logarithmic spiral is always constant.
Let a = 2 and b = 0.1, the exact angle is:
In[]:=
a=2;b=0.1;α=ArcCosb++
180
π
1+
2
a
2
b
2
a
2
b
2
a
Out[]=
83.6206
Animation (a = 2, b = 0.1):
In[]:=
Manipulatea=2;b=0.1;ξ[t_]:=aCos[t],aSin[t],;ShowRevolutionPlot3Dv,0,,{v,-5,5},{θ,0,θ1},RevolutionAxis{0,0,1},PlotStyle->Opacity[0.6],BoundaryStyleDirective[Black,Thick],PerformanceGoal"Quality",ColorFunction"BlueGreenYellow",ParametricPlot3D[t{0,0,1},{t,-3,3},ColorFunction->"BlueGreenYellow"],ParametricPlot3D[ξ[t],{t,0,θ1},PlotStyle->Black]/.Line[pts_,rest___]:>Tube[pts,0.025,rest],AxesLabel->(Style[#,15,Blue]&/@{"X","Y","Z"}),AxesOrigin{0,0,0},AxesTrue,BoxedFalse,BoxRatiosAutomatic,PlotRange{{-5,5},{-5,5},{-3,3}},ViewPoint{1.3,-2.4,2.},ImageSize900,Style["Loxodrome:",Bold,Large],{{θ1,0.00002,"Value (θ)"},0.00001,2π,0.00001},ControlPlacementTop
bt
bt
bt
v
a
Out[]=

