I came up with the following question while playing around with Geogebra, and rather than do it myself I figured I'd offer it here.

For a given ellipse, the director circle is defined to be the set of all points where two perpendicular tangents to the ellipse cross each other. Suppose we instead consider the locus of points where two perpendicular normals to the ellipse cross. Using Geogebra, I can use it to trace the curve out: enter image description here It looks like a four-leaf clover that is symmetric about the ellipse's axes. But what curve is this?

Note: To construct this in Geogebra, I first constructed the director circle as the circumcircle of the minimum bounding box of the ellipse. I then picked a point on the circle, used this to find two points of tangency, and found the intersection of the corresponding normals at these points. The curve could then be traced out by varying the choice of point on the director circle.

  • $\begingroup$ You could take a quadrifolium mathworld.wolfram.com/Quadrifolium.html and rotate it by 45 degrees and change the scale on one of the axes. This might be a close fit. $\endgroup$ – David Quinn Sep 7 '16 at 19:31
  • $\begingroup$ @DavidQuinn That's a reasonable thought. The quadrifolium's Cartesian equation is also broadly consistent with what I'd expect from an algebraic solution (i.e. constructing the normals, requiring that they be perpendicular, and finding their intersection), at least once I rotate by 45 degrees. $\endgroup$ – Semiclassical Sep 7 '16 at 20:45
  • $\begingroup$ Therefore something of a form like $$(2x^2+y^2)^3=\frac 14(2x^2-y^2)^2$$, with a bit of tweaking. Although deriving the Cartesian equation is not entirely straightforward... $\endgroup$ – David Quinn Sep 7 '16 at 21:27
  • $\begingroup$ I added an "answer" describing the exact formula and how to derive it in Cartesian coordinates. Rotating a quadrifolium by 45 degrees, then scaling $y$ axis by $r_x/r_y$, definitely yields a similar figure with similar properties, but I'm too lazy to check how close they are, though. $\endgroup$ – Nominal Animal Sep 7 '16 at 21:50
  • $\begingroup$ By the way, rotating the quadrifolium by 45 degrees ($x' = (x-y)/\sqrt{2}$, $y'=(x+y)/\sqrt{2}$) yields $$2 (3 x^2 - 2 x y + 3 y^2)^3 = (x^2 - 6 x y + y^2)^2$$ $\endgroup$ – Nominal Animal Sep 7 '16 at 22:12

I do not have even a sniff of a clue as to the stated question (the name of the curve), but I did find the formula for it.

Starting with an ellipse at origin, with axis-aligned semi-major axes $r_x$ and $r_y$, $$\begin{align} x_E(\varphi) &= r_x \cos \varphi \\ y_E(\varphi) &= r_y \sin \varphi \end{align}$$ the normal (defined as tangent rotated 90° counterclockwise in a right-handed coordinate system) is $$\begin{align} x_N(\varphi) = \frac{d y_E(\varphi)}{d \varphi} &= r_y \cos \varphi \\ y_N(\varphi) = - \frac{d x_E(\varphi)}{d \varphi} &= r_x \sin \varphi \end{align}$$ If the normals corresponding to $\varphi=\varphi_1$ and $\varphi=\varphi_2$ are perpendicular, then their dot product is zero, $$x_N(\varphi_1) x_N(\varphi_2) + y_N(\varphi_1) y_N(\varphi_2) = 0$$ i.e. $$r_y^2 \cos(\varphi_1) \cos(\varphi_2) + rx^2 \sin(\varphi_1) \sin(\varphi_2) = 0$$ Solving for $\varphi_2$ we get $$\varphi_2 = - \arctan\left(\frac{r_y^2 \cos\varphi_1}{r_x^2 \sin\varphi_1}\right)$$ I shall use that to define a function $$\theta(\varphi) = - \arctan\left(\frac{r_y^2 \cos\varphi_1}{r_x^2 \sin\varphi_1}\right)$$

The equation for the perpendicular line at $\varphi$, with $t$ as the line parameter is $$\begin{cases} x_1(\varphi, t_1) = x_E(\varphi) + t_1 x_P(\varphi) \\ y_1(\varphi, t_1) = y_E(\varphi) + t_1 y_P(\varphi) \end{cases}$$ Using the function $\theta(\varphi)$ defined before, we know that the above is also perpendicular to $$\begin{cases} x_2(\varphi, t_2) = x_E(\theta(\varphi)) + t_2 x_P(\theta(\varphi)) \\ y_2(\varphi, t_2) = y_E(\theta(\varphi)) + t_2 y_P(\theta(\varphi)) \end{cases}$$ Their intersection occurs at $$\begin{cases} x_1(\varphi, t_1) = x_2(\varphi, t_2) \\ y_1(\varphi, t_1) = y_2(\varphi, t_2) \end{cases}$$ which we can solve for $t_1$ and $t_2$. I shall omit $t_2$ here for brevity. $t_1 = t(\varphi)$: $$t(\varphi) = r_x r_y \frac{ (r_x^2 - r_y^2) \cos(\varphi) - \sqrt{r_x^4 + \frac{r_y^4 \cos(\varphi)^2}{\sin(\varphi)^2}}}{(r_y^2 \cos(\varphi)^2 + r_x^2 \sin(\varphi)^2)\sqrt{r_x^4 + \frac{r_y^4 \cos(\varphi)^2}{\sin(\varphi)^2}}}$$ Note that $t(\varphi)$ is not defined at integer multiples of $\pi$ (including zero), but it approaches the value $$-rx/ry$$.

The curve is then $$\begin{cases} x'(\varphi) = x_E(\varphi) + t(\varphi) x_P(\varphi) \\ y'(\varphi) = y_E(\varphi) + t(\varphi) y_P(\varphi) \end{cases}$$ Because of how we defined the normal, the actual curve is composed of two parts, $$\begin{cases} x(\varphi) = x'(\varphi) \\ y(\varphi) = y'(\varphi) \end{cases}, \text{ and } \begin{cases} x(\varphi) = -x'(\varphi) \\ y(\varphi) = -y'(\varphi) \end{cases}, \; \; \varphi = (0, \pi)$$ In pseudocode (with ^ denoting exponentiation),

tmp1 = sqrt( rx^4 + ry^4 / sin(phi)^2 )
tmp2 = ( ( rx^2 - ry^2 ) * cos(phi) - tmp1 ) / ( tmp1 * ( rx^2 * sin(phi)^2 + ry^2 * cos(phi)^2 ) )
x = rx * ( 1 + tmp2 * ry^2 ) * cos(phi)
y = ry * ( 1 + tmp2 * rx^2 ) * sin(phi)

Each of the four lobes is $C^2$-continuous, as at $\varphi \to 0$ and $\varphi \to \pi$ the curve parts approach the origin at the same slopes.

  • $\begingroup$ For $ rx =ry, x=y=0..$ right? $\endgroup$ – Narasimham Sep 7 '16 at 21:48
  • $\begingroup$ @Narasimham: Yes. (Funnily enough, I checked my gnuplot plot first, and it drew a spike ball -- until I noticed the scale; it just drew some rounding errors for me.) $\endgroup$ – Nominal Animal Sep 7 '16 at 21:53
  • $\begingroup$ @Narasimham: Also, $\lim\limits_{\varphi\to\pi} x(\varphi) = 0$, $\lim\limits_{\varphi\to\pi} y(\varphi) = 0$, $\lim\limits_{\varphi\to 0} x(\varphi) = 0$, and $\lim\limits_{\varphi\to 0} y(\varphi) = 0$, regardless of $r_x$ and $r_y$. But, indeed, for all $r_x = r_y$, $x(\varphi) = y(\varphi) = 0$, as one would expect. $\endgroup$ – Nominal Animal Sep 8 '16 at 19:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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