DarbouxVector::usage="The Darboux vector of a space curve with unit speed is the angular velocity vector of the Frenet-Serret frame. And it is calculated like this: D = τ T + κ B. Where τ is the torsion and κ the curvature. Reference: Based on the example of DarbouxVector, FunctionRepository; Personal. ";
In[]:=
Manipulateζ[t_]:={Cos[t],2Sin[t],3t};​​T[t_]:=-
Sin[t]
9+4
2
Cos[t]
+
2
Sin[t]
,
2Cos[t]
9+4
2
Cos[t]
+
2
Sin[t]
,
3
9+4
2
Cos[t]
+
2
Sin[t]
;​​​​N1[t_]:=-
26Cos[t]
53-27Cos[2t]
23+3Cos[2t]
,-
40Sin[t]
53-27Cos[2t]
23+3Cos[2t]
,
9Sin[2t]
53-27Cos[2t]
23+3Cos[2t]
;​​B[t_]:=
6
2
Sin[t]
53-27Cos[2t]
,-
3
2
Cos[t]
53-27Cos[2t]
,
2
2
53-27Cos[2t]
;​​​​Dar[t_]:=-
720
3
Sin[t]
(23+3Cos[2t])(-53+27Cos[2t])
,-
468
3
Cos[t]
(23+3Cos[2t])(-53+27Cos[2t])
,-
2080
-2357+924Cos[2t]+81Cos[4t]
;​​​​Show[{​​ParametricPlot3D[ζ[t],{t,0,t1},PlotStyle->{Black,Thick}],Graphics3D[​​{Black,Ball[ζ[t1],0.2],Point[ζ[t1]],​​​​Blue,Arrow[Tube[{ζ[t1],ζ[t1]+8N[T[t1]]}]],​​Text[Style["T",14,Blue,Bold],ζ[t1]+8N[T[t1]],{0,-1.5}],​​​​Red,Arrow[Tube[{ζ[t1],ζ[t1]+8N[N1[t1]]}]],​​Text[Style["N",14,Red,Bold],ζ[t1]+8N[N1[t1]],{0,-1.5}],​​​​Green,Arrow[Tube[{ζ[t1],ζ[t1]+8N[B[t1]]}]],​​Text[Style["B",14,Green,Bold],ζ[t1]+8N[B[t1]],{0,-1.5}],​​​​Brown,Arrow[Tube[{ζ[t1],ζ[t1]+8N[Dar[t1]]}]],​​Text[Style["D",14,Brown,Bold],ζ[t1]+8N[Dar[t1]],{0,-1.5}]}]},​​AxesLabel->(Style[#,15,Blue]&/@{"X","Y","Z"}),AxesOrigin{0,0,0},AxesTrue,BoxedFalse,BoxRatiosAutomatic,PlotRange{{-12,12},{-12,12},{-0.1,40}},ViewPoint{1.3,-2.4,2.},ImageSize700],Style["Darboux vector and Frenet-Serret frame:",Bold,Large],{{t1,0.00002,"Value (t1)"},0.00001,3π,0.00001},ControlPlacementTop
Out[]=
​
Darboux vector and Frenet-Serret frame:
Value (t1)
In[]:=
ManipulateDar[t_]:=-
720
3
Sin[t]
(23+3Cos[2t])(-53+27Cos[2t])
,-
468
3
Cos[t]
(23+3Cos[2t])(-53+27Cos[2t])
,-
2080
-2357+924Cos[2t]+81Cos[4t]
;​​​​p=Grid[{{DarbouxVector},{Dar[t1]}},FrameAll,ItemSize->15,ItemStyle->15];​​Show[{​​ParametricPlot3D[Dar[t],{t,0,t1},PlotStyle->{Brown,Thick}],Graphics3D[​​{Brown,Ball[Dar[t1],0.01]}]},​​AxesLabel->(Style[#,15,Blue]&/@{"X","Y","Z"}),AxesOrigin{0,0,0},AxesTrue,BoxedFalse,BoxRatiosAutomatic,PlotRange{{-0.6,0.6},{-0.6,0.6},{-0.1,1.6}},ViewPoint{1.3,-2.4,2.},ImageSize700],Style["Darboux vector:",Bold,Large],{{t1,0.00002,"Value (t1)"},0.00001,2π,0.00001},Delimiter,{{p,2,"Darboux vector coordinates"}},ControlPlacementTop
Out[]=
​
Darboux vector:
Value (t1)
Darboux vector coordinates
DarbouxVector
-1.56498×
-47
10
,0.692308,1.53846
Darboux components graph