Bullet Nose Curve

Author

Eric W. Weisstein
February 2, 2018

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

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

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

Degree

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

Expand[eqn]

Numerator[#]==Denominator[#]&@Together[a^2/x^2-b^2/y^2]

AlgebraicDegree[-(b^2) (x^2)+(a^2) (y^2)==(x^2) (y^2),{x,y}]

Plot

V5

<<Graphics`ImplicitPlot`

ImplicitPlot[-(b^2) (x^2)+(a^2) (y^2)==(x^2) (y^2)/.{a->1,b->1},{x,-.9,.9},Ticks->None,PlotStyle->Red]

Simplify[a^2/(a Cos[t])^2-b^2/(b Cot[t])^2]

ParametricPlot[Evaluate[{{a Cos[t],b Cot[t]},{-a Cos[t],b Cot[t]}}/.{a->1,b->1}],{t,.4,Pi-.4},Ticks->None,PlotStyle->Red]

ImplicitPlot[a^2/x^2-b^2/y^2==1/.{a->1,b->1},{x,-.9,.9},Ticks->None,PlotStyle->Red]

V6

ContourPlot[#1^2/x^2-#2^2/y^2==1,{x,-.9,.9},{y,-1.5,1.5},ContourStyle->Red,AspectRatio->Automatic]&@@@{{1,1}}

ContourPlot[-((#2)^2) (x^2)+((#1)^2) (y^2)==(x^2) (y^2),{x,-.9,.9},{y,-1.5,1.5},ContourStyle->Red,AspectRatio->Automatic]&@@@{{1,1}}

Properties

bulletnose={a Cos[t],b Cot[t]};

ParametricPlot[{Cos[t],Cot[t]},{t,-π,0,π},PlotStyle->Red]

Arc Length

ArcLength[bulletnose,{t,Pi/2,t}]

ArcLength[bulletnose/.{a->1,b->1},{t,Pi/2,t}]//Timing

NIntegrate[Csc[t]^4+Sin[t]^2,{t,Pi/2,3}]

Curvature

Curvature[bulletnose,t]

SortBy[FullSimplify[Curvature[eqn,{x,y}],a>0&&(x|y)∈Reals],ByteCount]

ByteCount/@%

Factor[%%]

Inflection Points

{x,y}/.Solve[eqn==3 (a^2) (b^4) (x^2)-3 (a^4) (b^2) (y^2)==0,{x,y}]//Union

InflectionPoints[eqn,{x,y}]

Singular Points

SingularPoints[eqn,{x,y}]

Slope

Slope[-b^2 x^2+a^2 y^2==x^2 y^2,{x,y}]//FullSimplify

Slope[-b^2 x^2+a^2 y^2==x^2 y^2,{x,y}]//FullSimplify

Tangential Angle

TangentialAngle[bulletnose,t]