1
$\begingroup$

A unit circle and tractrix (with differential equations respectively),

$$ \cos \phi =y;\, \sin \phi= y $$ and tangent slope $$\phi = \theta +\pi/2 $$

are plotted to verify orthogonality.

Due to inadequate precision there is neither orthogonality nor symmetry of points about $y$ axis.

Clear["`.*"];
pp = ParametricPlot[{{-Sin[t], -Cos[t]}, {Cos[t] + Log[Tan[t/2]], 
     Sin[t]}}, {t, -3, 3}, 
   PlotLabel -> " t are slopes & TRACTRIX/ CIRCLE INTRXNS", 
   PlotStyle -> {{Blue, Thick}, {Red, Thick}}, GridLines -> Automatic,
    PlotRange -> All, AspectRatio -> .145];
FindRoot[{-Sin[t1] == Cos[t2] + Log[Tan[t2/2]], -Cos[t1] == 
   Sin[t2]}, {{t1, 1}, {t2, 1}}]
th1 = 1.8633725347352827` - Pi/2; th2 = 0.29257620794038613` - Pi/2;
c1 = Graphics[Disk[{Cos[th1], Sin[th1]}, 0.07]]; c2 = 
 Graphics[Disk[{Cos[th2], Sin[th2]}, 0.07]]; Show[{pp, c1, c2}, 
 PlotRange -> All]

Tractrix & Circle

Only one point is captured. How to remedy the situation? Would much appreciate your scrutiny.

$\endgroup$
2
  • 1
    $\begingroup$ Isn't this what you actually want: FindRoot[{-Sin[t1] == Cos[t2] + Log[Tan[t2/2]], -Cos[t1] == Sin[t2]}, {{t1, 1}, {t2, 1}}]? The two parameterized curves don't need to intersect at the same t. $\endgroup$
    – march
    Commented Apr 24, 2019 at 22:06
  • $\begingroup$ Indeed, and thanks. I edited my question per your suggestion to consider each curve parameter separately...However we capture one point but not the other.. in spite of a consistent sign convention. $\endgroup$
    – Narasimham
    Commented Apr 25, 2019 at 9:03

2 Answers 2

1
$\begingroup$

Try

NSolve[{-Sin[t1] == Cos[t2] + Log[Tan[t2/2]], -Cos[t1] == Sin[t2], 
  0 <= t1 < 2 Pi, 0 <= t2 < 2 Pi}, {t1, t2}, Reals]
(*
  {{t1 -> 1.86337, t2 -> 0.292576},
   {t1 -> 3.14159, t2 -> 1.5708},
   {t1 -> 4.41981, t2 -> 2.84902},
   {t1 -> 3.14159, t2 -> 1.5708}}
*)

instead of

FindRoot[{-Sin[t1] == Cos[t2] + Log[Tan[t2/2]], -Cos[t1] == Sin[t2]},
  {{t1, 1}, {t2, 1}}]

The OP does not use the result of FindRoot in the code as such. Instead, the two numbers that constitute a single solution for {t1, t2} are hard-coded, with Pi/2 subtracted from each component:

th1 = 1.8633725347352827- Pi/2; th2 = 0.29257620794038613 - Pi/2;

Since only the first of them is the parameter for the circle, it's not surprising that the second, the parameter for the tractrix, when plugged into the circle, gives a point unrelated to the tractrix.

The four solutions from NSolve correspond to the three points of intersection, including a double point at the top.

int = NSolve[{-Sin[t1] == Cos[t2] + Log[Tan[t2/2]], -Cos[t1] == 
     Sin[t2], 0 <= t1 < 2 Pi, 0 <= t2 < 2 Pi}, {t1, t2}, Reals];
c1 = Graphics[Disk[{Cos[t1 - Pi/2], Sin[t1 - Pi/2]}, 0.1] /. int]; 
Show[{pp, c1}, PlotRange -> All]

enter image description here

$\endgroup$
1
$\begingroup$
Graphics`Mesh`MeshInit[]

intersections = Graphics`Mesh`FindIntersections[pp]

{{-0.95733,0.288799},{0.957388,0.288799}}

Show[pp, Epilog -> {Green, PointSize[Large], Point@intersections}]

enter image description here

If you change the domain to {t, -Pi, Pi} you get all 3 intersections:

pp2 = ParametricPlot[{{-Sin[t], -Cos[t]}, {Cos[t] + Log[Tan[t/2]], Sin[t]}}, 
   {t, -Pi, Pi}, 
   PlotLabel -> " t are slopes & TRACTRIX/ CIRCLE INTRXNS", 
   PlotStyle -> {{Blue, Thick}, {Red, Thick}}, GridLines -> Automatic,
   PlotRange -> {{-5, 4}, All}];

intersections2 = Graphics`Mesh`FindIntersections @ pp2

{{-0.957398, 0.288753}, {1.22465*10^-16, 1.}, {0.957379, 0.288575}}

Show[pp2, Epilog -> {Green, PointSize[Large], Point @ intersections2}]

enter image description here

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.