Function Repository Resource:

InfiniteCatacausticCurve

Source Notebook

Compute the catacaustic of a curve at infinity

Contributed by: Jan Mangaldan

ResourceFunction["InfiniteCatacausticCurve"][c,θ,t]

gives an equation for the catacaustic at infinity of a curve c specified parametrically with respect to a direction angle θ in terms of the variable t.

Details and Options

A catacaustic at infinity is a curve that is the envelope of rays emanating from a point at infinite distance producing parallel rays for a given mirror shape.

Examples

Basic Examples (2) 

The catacaustic at infinity for a parabola, with rays perpendicular to the parabola's axis:

In[1]:=
ResourceFunction["InfiniteCatacausticCurve"][{t^2, 2 t}, \[Pi]/2, t]
Out[1]=

Plot the parabola and the catacaustic (Tschirnhausen cubic) together:

In[2]:=
ParametricPlot[{{t^2, 2 t}, ResourceFunction["InfiniteCatacausticCurve"][{t^2, 2 t}, \[Pi]/2, t]} // Evaluate, {t, -5/2, 5/2}]
Out[2]=

The catacaustic at infinity for a circle:

In[3]:=
ResourceFunction["InfiniteCatacausticCurve"][{Cos[t], Sin[t]}, 0, t] // Simplify
Out[3]=

Plot the circle and the catacaustic (nephroid) together:

In[4]:=
ParametricPlot[{{Cos[t], Sin[t]}, ResourceFunction["InfiniteCatacausticCurve"][{Cos[t], Sin[t]}, 0, t]} // Evaluate, {t, 0, 2 \[Pi]}]
Out[4]=

Neat Examples (2) 

Parametric equations for a deltoid:

In[5]:=
del[t_] = Entity["PlaneCurve", "Deltoid"]["ParametricEquations"][1][t]
Out[5]=

Demonstrate the effect of changing θ in InfiniteCatacausticCurve:

In[6]:=
Manipulate[
 ParametricPlot[
  Evaluate[{del[t], ResourceFunction["InfiniteCatacausticCurve"][del[t], \[Theta], t]}], {t, 0, 2 \[Pi]}, PlotRange -> 2], {\[Theta], 0, \[Pi]}, SaveDefinitions -> True]
Out[6]=

Version History

  • 1.0.0 – 15 February 2021

Source Metadata

Related Resources

License Information