Skip to content

The Analemma

Binder

In The Shadow Length, the vector connecting the base of the gnomon with the tip of the shadow was determined in closed form in terms of the sundial location, orientation and geometry, and in terms of the planet's orbit and rotation. We can now express the functional form of the analemma itself.

from analemma.algebra import render, result

The analemma's Cartesian coordinates on the face of the sundial are given by:

x, y = result.shadow_coords_xy()

render.expressions(("x", "y"), (x, y))
\[\displaystyle \begin{equation} x = \frac{\left(- \sin{\left (d \right )} \sin{\left (\mu \right )} \cos{\left (\iota \right )} + \cos{\left (d \right )} \cos{\left (\mu \right )}\right) \sin{\left (\Xi \right )}}{D} \nonumber \end{equation} \\ \begin{equation} y = - \frac{\left(\left(\sin{\left (i \right )} \sin{\left (\iota \right )} + \cos{\left (d \right )} \cos{\left (i \right )} \cos{\left (\iota \right )}\right) \sin{\left (\mu \right )} + \sin{\left (d \right )} \cos{\left (i \right )} \cos{\left (\mu \right )}\right) \sin{\left (\Xi \right )}}{D} \nonumber \end{equation} \]

We have explicit forms for \(\sin(\Xi)\sin(\mu)\), \(\sin(\Xi)\cos(\mu)\) and \(D\), allowing the shadow coordinates to be expressed in terms of the Earth's orientation parameters \(\alpha\), \(\sigma\), and \(\psi\), together with the sundial parameters \(\theta\), \(i\), \(d\) and \(\iota\):

xe, ye = result.shadow_coords_xy_explicit()
render.expressions(("x", "y"), (xe, ye))
\[\displaystyle \begin{equation} x = \frac{- \left(\sin{\left (\psi \right )} \cos{\left (\alpha \right )} - \cos{\left (\psi \right )} \tan{\left (\sigma \right )}\right) \sin{\left (d \right )} \cos{\left (\iota \right )} + \left(- \sin{\left (\alpha \right )} \sin{\left (\iota - \theta \right )} + \sin{\left (\psi \right )} \cos{\left (\iota - \theta \right )} \tan{\left (\sigma \right )} + \cos{\left (\alpha \right )} \cos{\left (\psi \right )} \cos{\left (\iota - \theta \right )}\right) \cos{\left (d \right )}}{- \left(\sin{\left (\psi \right )} \cos{\left (\alpha \right )} - \cos{\left (\psi \right )} \tan{\left (\sigma \right )}\right) \sin{\left (d \right )} \sin{\left (i \right )} + \left(\sin{\left (\psi \right )} \tan{\left (\sigma \right )} + \cos{\left (\alpha \right )} \cos{\left (\psi \right )}\right) \left(\sin{\left (i \right )} \cos{\left (d \right )} \cos{\left (\theta \right )} - \sin{\left (\theta \right )} \cos{\left (i \right )}\right) + \left(\sin{\left (i \right )} \sin{\left (\theta \right )} \cos{\left (d \right )} + \cos{\left (i \right )} \cos{\left (\theta \right )}\right) \sin{\left (\alpha \right )}} \nonumber \end{equation} \\ \begin{equation} y = \frac{- \left(\sin{\left (i \right )} \sin{\left (\iota \right )} + \cos{\left (d \right )} \cos{\left (i \right )} \cos{\left (\iota \right )}\right) \left(\sin{\left (\psi \right )} \cos{\left (\alpha \right )} - \cos{\left (\psi \right )} \tan{\left (\sigma \right )}\right) - \left(- \sin{\left (\alpha \right )} \sin{\left (\iota - \theta \right )} + \sin{\left (\psi \right )} \cos{\left (\iota - \theta \right )} \tan{\left (\sigma \right )} + \cos{\left (\alpha \right )} \cos{\left (\psi \right )} \cos{\left (\iota - \theta \right )}\right) \sin{\left (d \right )} \cos{\left (i \right )}}{- \left(\sin{\left (\psi \right )} \cos{\left (\alpha \right )} - \cos{\left (\psi \right )} \tan{\left (\sigma \right )}\right) \sin{\left (d \right )} \sin{\left (i \right )} + \left(\sin{\left (\psi \right )} \tan{\left (\sigma \right )} + \cos{\left (\alpha \right )} \cos{\left (\psi \right )}\right) \left(\sin{\left (i \right )} \cos{\left (d \right )} \cos{\left (\theta \right )} - \sin{\left (\theta \right )} \cos{\left (i \right )}\right) + \left(\sin{\left (i \right )} \sin{\left (\theta \right )} \cos{\left (d \right )} + \cos{\left (i \right )} \cos{\left (\theta \right )}\right) \sin{\left (\alpha \right )}} \nonumber \end{equation} \]

Next, we evaluate these formula in various special cases to match standards reuslts in Comparison with Rohr's Book.