The problem lies in the location of t and T as variables .
To see this, note that we have two parametric curves:
f1[t_] := {2 t + 1, 2 - t^2};
f2[t_] := {t^3, t^2 - 4};
We know the intersections must occur for some values t and T such that f1[t]==f2[T]
.
NSolve[f1[t] == f2[T], {t, T}]
or more explicitly (note the different positioning of t and T)
NSolve[{2 t + 1, 2 - t^2} == {T^3, T^2 - 4}, {t, T}]
This gives six solutions (Mathematica output omitted). To get the two real solutions seen in the parametric plot, use the additional argument Reals
.
intersect=NSolve[{2 t + 1, 2 - t^2} == {T^3, T^2 - 4}, {t, T},Reals]
(* {{t -> -1.98369, T -> -1.437}, {t -> 1.79866, T -> 1.66278}} *)
These two solutions correspond to the points
f1[t]/.intersect[[1]]
f2[T]/.intersect[[1]]
(* {-2.96738, -1.93502} *)
(* {-2.96738, -1.93502} *)
and
f1[t]/.intersect[[2]]
f2[T]/.intersect[[2]]
(* {4.59731,-1.23516} *)
(* {4.59731,-1.23516} *)
which indeed appear to be the intersections in the parametric plot.
Alternate method using FindInstance
It is also possible to solve this problem using
intersect2 = FindInstance[2 t + 1 == T^3 && 2 - t^2 == T^2 - 4, {t, T}, Reals, 2] // N
(* {{t -> -1.98369, T -> -1.437}, {t -> 1.79866, T -> 1.66278}} *)
This gives the same solution as above, although the NSolve method appears to be slightly faster.
AbsoluteTiming[intersect = NSolve[{2 t + 1, 2 - t^2} == {T^3, T^2 - 4}, {t,T}, Reals]]
AbsoluteTiming[intersect2 = FindInstance[2 t + 1 == T^3 && 2 - t^2 == T^2 - 4, {t, T}, Reals, 2] // N]
(* 0.005154, ... *)
(* 0.016175, ... *)