Third solution
A slightly simpler and more geometric approach leads to a third form for the solution (including Artes' and my second) -- don't you just love trigonometric functions!
By symmetry, two points starting from a vertex of the hypocycloid (star) and going in opposite directions at the same speed will meet at one of the desired crossings.
If the points start at {4, 0}
, then at time t
the parameters will be t
, 4 Pi - t
.
The crossing times of the points can be found by setting the parametrizations equal to each other and solving.
center = {(12 Cos[t])/5, (12 Sin[t])/5};
radius = {8/5 Cos[(3 t)/2], -(8/5) Sin[(3 t)/2]};
param = center + radius;
sol0 = {t, 4 Pi - t} /.
First@Solve[param == (param /. t -> 4 Pi - t) && 0 < t < 2 Pi, t]
(* {2 ArcCos[-(1/4)], 4 Pi - 2 ArcCos[-(1/4)]} *)
To get the others, add multiples of 1/5
of the period 4 Pi
:
Table[Mod[Join[#, N@#] &@ (sol0 + 4 Pi/5 i), 4 Pi], {i, 0, 4}] // Grid
$$
\begin{array}{cc|cc}
t_1 & t_2 & N[t_1] & N[t_2]\strut \\
\hline
2 \cos ^{-1}\left(-{1}/{4}\right) & 4 \pi -2
\cos ^{-1}\left(-{1}/{4}\right) & 3.64695 &
8.91942 \\
\textstyle \frac{4 \pi }{5}+2 \cos
^{-1}\left(-{1}/{4}\right) & \textstyle \frac{24 \pi
}{5}-2 \cos ^{-1}\left(-{1}/{4}\right) &
6.16023 & 11.4327 \\
\textstyle \frac{8 \pi }{5}+2 \cos
^{-1}\left(-{1}/{4}\right) & \textstyle \frac{8 \pi
}{5}-2 \cos ^{-1}\left(-{1}/{4}\right) &
8.6735 & 1.3796 \\
\textstyle \frac{12 \pi }{5}+2 \cos
^{-1}\left(-{1}/{4}\right) & \textstyle \frac{12 \pi
}{5}-2 \cos ^{-1}\left(-{1}/{4}\right) &
11.1868 & 3.89287 \\
\textstyle-\frac{4 \pi
}{5} + 2 \cos ^{-1}\left(-{1}/{4}\right) & \textstyle \frac{16 \pi }{5}-2 \cos
^{-1}\left(-{1}/{4}\right) & 1.13368 & 6.40614
\\
\end{array}
$$
The equations are not hard to solve by hand either. Setting $t = 2\theta$, the condition $y = 0$ reduces to $2 \sin 3\theta = 3 \sin 2\theta$. Applying multiple-angle identities, one discovers the factor $1 + 4 \cos\theta$, from which the solution follows.
Here a movie illustrating the method:
hypoc = ParametricPlot[param, {t, 0, 4 Pi}, PlotRange -> 4.05];
wheel = {Circle[center, 8/5], PointSize[Large], Point[param],
Line[{{center, param}, {{0, 0}, center}}], Opacity[0.5],
Line@Table[center + # & /@ ({radius, 0.9 radius} /. t -> t - 2 dt/3),
{dt, Pi/8, 2 Pi - Pi/8, Pi/8}]};
Manipulate[
Show[hypoc,
Graphics@Dynamic[{
Circle[{0, 0}, 4],
Red, wheel /. t -> t + offset,
Darker@Green, wheel /. t -> 4 Pi - t + offset
} /. t -> t0]
],
{{t0, First@sol0}, 0, 4 Pi, First@sol0/100},
{offset, 4 Pi/5 Range[0, 4]}
]
Second solution
Knowing it's class work made me think along simpler lines than at the beginning.
param = {12/5 Cos[t] + 8/5 Cos[(3 t)/2], 12/5 Sin[t] - 8/5 Sin[(3 t)/2]};
sol = Solve[param[[2]] == 0, {t}]
(* {{t -> ConditionalExpression[4 \[Pi] C[1],
C[1] \[Element] Integers]},
{t -> ConditionalExpression[2 (\[Pi] + 2 \[Pi] C[1]),
C[1] \[Element] Integers]},
{t -> ConditionalExpression[2 (\[Pi] - ArcTan[Sqrt[15]] + 2 \[Pi] C[1]),
C[1] \[Element] Integers]},
{t -> ConditionalExpression[2 (-\[Pi] + ArcTan[Sqrt[15]] + 2 \[Pi] C[1]),
C[1] \[Element] Integers]}} *)
The third solution is one of the crossings:
param /. sol /. {C[1] -> 0} // N
{{4., 0.}, {0.8, 0.}, {-1., 1.33227*10^-15}, {-1., -1.33227*10^-15}}
The next crossing will be 3 * 4 Pi / 5
further along.
{t, t + 3 * 4 Pi/5} /. sol[[3]] /. {C[1] -> 0}
(* {2 (Pi - ArcTan[Sqrt[15]]), (12 Pi)/5 + 2 (Pi - ArcTan[Sqrt[15]])} *)
% // N
(* {3.64695, 11.1868} *)
The points are passed through again, by symmetry, at these values of t
:
{4 Pi, 4 Pi + 4 Pi/5} - %
(* {8.91942, 3.89287} *)
All intersections:
t1 = t + Range[0, 4 Pi - 1, 4 Pi/5] /. sol[[3]] /. {C[1] -> 0};
t2 = {4 Pi, 4 Pi, 0, 0, 0} + Range[0, 2 4 Pi - 1, 2 4 Pi/5] - t1;
Transpose[{t1, t2}] // Expand // Grid
$
\begin{array}{cc}
2 \pi -2 \tan ^{-1}\left(\sqrt{15}\right) & 2 \pi +2
\tan ^{-1}\left(\sqrt{15}\right) \\
\frac{14 \pi }{5}-2 \tan ^{-1}\left(\sqrt{15}\right)
& \frac{14 \pi }{5}+2 \tan
^{-1}\left(\sqrt{15}\right) \\
\frac{18 \pi }{5}-2 \tan ^{-1}\left(\sqrt{15}\right)
& \frac{18 \pi }{5}+2 \tan
^{-1}\left(\sqrt{15}\right) \\
\frac{22 \pi }{5}-2 \tan ^{-1}\left(\sqrt{15}\right)
& \frac{22 \pi }{5}+2 \tan
^{-1}\left(\sqrt{15}\right) \\
\frac{26 \pi }{5}-2 \tan ^{-1}\left(\sqrt{15}\right)
& \frac{26 \pi }{5}+2 \tan
^{-1}\left(\sqrt{15}\right) \\
\end{array}
$
Original solution
[This method is a good way to find roots when the equations cannot be solve explicitly, or Solve
/Reduce
take a very long time.]
You can record the t
values of the plot with EvaluationMonitor
, Reap
, and Sow
.
{plot, {pts}} =
Reap @ ParametricPlot[{2.4*Cos[t] + 1.6*Cos[3 t/2], 2.4*Sin[t] - 1.6 Sin[3 t/2]},
{t, 0, 4*Pi},
EvaluationMonitor :>
Sow[{t, 2.4*Cos[t] + 1.6*Cos[3 t/2], 2.4*Sin[t] - 1.6 Sin[3 t/2]}]];
Then we can construct a NearestFunction
to find the values of t
that produce points closest to the approximate crossing.
nf = Nearest[pts[[All, 2 ;; 3]] -> pts[[All, 1]]]
(* NearestFunction[{526, 2}, <>] *)
crossings = {{-0.3054, -0.9543}, {-1.007, -0.005534}};
(* {{11.1513, 3.8396}, {8.96306, 3.57175}} *)
Each approximate crossing produces two distinct values for t
nf[#, 2] & /@ crossings
(* {{11.1513, 3.8396}, {8.96306, 3.57175}} *)
We can set up starting points for FindRoot
like this:
Transpose@{{t, s}, nf[crossings[[1]], 2]}
(* {{t, 11.1513}, {s, 3.8396}} *)
Then FindRoot
will refine the estimates:
param = {2.4*Cos[t] + 1.6*Cos[3 t/2], 2.4*Sin[t] - 1.6 Sin[3 t/2]};
sol1 = FindRoot[param - (param /. t -> s),
Transpose@{{t, s}, nf[crossings[[1]], 2]}]
(* {t -> 11.1868, s -> 3.89287} *)
sol2 = FindRoot[param - (param /. t -> s),
Transpose@{{t, s}, nf[crossings[[2]], 2]}]
(* {t -> 8.91942, s -> 3.64695} *)
Show[plot,
Graphics[{PointSize[Large], Red, Point[param /. {sol1, sol2}]}]]