Poinsot's Spirals

Author

Eric W. Weisstein
June 6, 2014

This notebook downloaded from http://mathworld.wolfram.com/notebooks/PlaneCurves/PoinsotsSpirals.nb.

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

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

Plots (Csch and Sech)

<<Utilities`Typesetting`

Show[GraphicsArray[{
Show[PolarPlot[Evaluate[Table[Csch[n θ],{n,.5,5,.5}],{θ,0,10#}],
PlotRange->{{-.6,.6},{-.25,.7}},
PlotStyle->Hue/@Range[0,1,.1],
Ticks->None,
DisplayFunction->Identity,
PlotLabel->TraditionalForm[r ==a Csch[n θ]],
AspectRatio->Automatic]&/@{-1,1}],
PolarPlot[Evaluate[Table[Sech[n θ],{n,.5,5,.5}]],{θ,-10,10},
PlotStyle->Hue/@Range[0,1,.1],
Ticks->None,
DisplayFunction->Identity,
PlotRange->All,
PlotLabel->TraditionalForm[r== Sech[n θ]],
AspectRatio->Automatic]
}],GraphicsSpacing->-.1]

V6

GraphicsGrid[{PolarPlot[#1Csch[#2 θ],{θ,-10,10},PlotRange->{{-1,1},{-.25,2}}]&@@@{{1,.5},{1,1},{1,2}}}]

GraphicsGrid[{PolarPlot[#1Sech[#2 θ],{θ,-10,10},PlotRange->{{-.5,1.05},{-.9,.9}}]&@@@{{1,.5},{1,1},{1,2}}}]

Properties (Csch)

curve=a Csch[n t] {Cos[t],Sin[t]};

Arc Length Function

v4.2.1

ArcLength[Csch[n θ],θ]

v5

ArcLength[Csch[n θ],θ]

v6

ArcLength[Csch[n t],t,Assumptions->n>0&&t>0]//Timing

ArcLength[Csch[n t],t]

Curvature

Parametric

FullSimplify[Curvature[a Csch[n t],t],n>0&&t∈Reals&&a>0]

Polar

FullSimplify[Curvature[a Csch[n q],q],a>0&&n>0]

Slope

Slope[a Csch[n t] {Cos[t],Sin[t]},t]//FullSimplify

Slope[a Csch[n q],q]//FullSimplify

SpecialAffineCurvature

FullSimplify[SpecialAffineCurvature[curve,t],a>0&&n>0&&t∈Reals]

Tangential Angle

FullSimplify[TangentialAngle[a Csch[n t],t]]

Properties (Sech)

curve=Sech[n t] {Cos[t],Sin[t]};

Arc Length Function

v4.2.1

FullSimplify[ArcLength[Sech[n θ],θ],(n|θ)∈Reals]//Timing

...ran overnight with no results...

v5

FullSimplify[ArcLength[Sech[n θ],θ],(n|θ)∈Reals]//Timing

v6

(Sqrt[Sech[n t]^2+D[Sech[n t],t]^2])

ArcLength[Sech[n t],t]//Timing

ArcLength[Sech[n t],t,Assumptions->n>0&&t>0]//Timing

FullSimplify[EllipticE[1+(1/(n^2))]+((EllipticK[1+(1/(n^2))])/(n^2))+(((Sech[n t])^2) (4 ((Cosh[n t])^2) (I (Sqrt[2]) n (n (Sqrt[-1+(1/(n^2))+(1+(1/(n^2))) Cosh[2 n t]])-(n^3) (Sqrt[-1+(1/(n^2))+(1+(1/(n^2))) Cosh[2 n t]])+n (1+(n^2)) Cosh[2 n t] (Sqrt[-1+(1/(n^2))+(1+(1/(n^2))) Cosh[2 n t]])-2 (Sqrt[1-(n^2)+(1+(n^2)) Cosh[2 n t]]))-(n^2) (1-(n^2)+(1+(n^2)) Cosh[2 n t]) EllipticE[ArcSin[Cosh[n t]],1+(1/(n^2))]-(1-(n^2)+(1+(n^2)) Cosh[2 n t]) EllipticF[ArcSin[Cosh[n t]],1+(1/(n^2))])+2 (Sqrt[2]) n Abs[Cosh[n t]] (((1-(n^2)+(1+(n^2)) Cosh[2 n t]))^(3/2)) Sinh[n t]))/(4 (n^2) (1-(n^2)+(1+(n^2)) Cosh[2 n t])),t∈Reals&&n>0]

Curvature

Parametric

FullSimplify[Curvature[a Sech[n t],t],n>0&&t∈Reals&&a>0]

Polar

FullSimplify[Curvature[a Sech[n q],q],a>0&&n>0]

Slope

Slope[a Sech[n t] {Cos[t],Sin[t]},t]//FullSimplify

Slope[a Sech[n q],q]//FullSimplify

SpecialAffineCurvature

FullSimplify[SpecialAffineCurvature[curve,t],a>0&&n>0&&t∈Reals]

Tangential Angle

FullSimplify[TangentialAngle[a Sech[n t],t]]

Vector Properties (Csch)

parm=a Csch[n t] {Cos[t],Sin[t]};
assum=a>0&&n>0&&t∈Reals;
xform={Abs[x_]^(n_/;Mod[n,2]==0):>x^n,Sqrt[x_^(n_/;Mod[n,2]==0)]:>Abs[x]^(n/2)};

VectorLength

Assuming[assum,FullSimplify[Norm[parm]/.xform]]/.xform

NormalVector

Assuming[assum,FullSimplify[NormalVector[parm,t]/.xform]]/.xform

{((Sign[t](-Cos[t]+n Coth[n t] Sin[t]))/(Sqrt[1+(n^2) ((Coth[n t])^2)])),-((Sign[t] (n Cos[t] Coth[n t]+Sin[t]))/(Sqrt[1+(n^2) ((Coth[n t])^2)]))}

TangentVector

Assuming[assum,FullSimplify[TangentVector[parm,t]/.xform]]/.xform

{-((Sign[t] (n Cos[t] Coth[n t]+Sin[t]))/(Sqrt[1+(n^2) ((Coth[n t])^2)])),((Sign[t](Cos[t]-n Coth[n t] Sin[t]))/(Sqrt[1+(n^2) ((Coth[n t])^2)]))}

Vector Properties (Sech)

parm=a Sech[n t] {Cos[t],Sin[t]};
assum=a>0&&n>0&&t∈Reals;
xform={Abs[x_]^(n_/;Mod[n,2]==0):>x^n,Sqrt[x_^(n_/;Mod[n,2]==0)]:>Abs[x]^(n/2)};

VectorLength

Assuming[assum,FullSimplify[Norm[parm]/.xform]]/.xform

NormalVector

Assuming[assum,FullSimplify[NormalVector[parm,t]/.xform]]/.xform

TangentVector

Assuming[assum,FullSimplify[TangentVector[parm,t]/.xform]]/.xform