The Little Grasshopper

Exploring Special Relativity

This post explores special relativity with a series of interactive vignettes. However I am not a physicist and this page glosses over a lot of details. I created this just for fun.


Minkowski diagrams

The third of the Annus Mirabilis papers that Einstein published in 1905 introduced the theory of special relativity. It was clearly written and concise, although he didn't call it "special relativity" at the time, and there were no diagrams.

One of Einstein's old professors later came up with a geometric interpretation. In a Minkowski diagram, time is on the vertical axis and a spatial dimension is on the horizontal axis. Units are chosen such that one horizontal tick corresponds to the distance a light beam would traverse in one vertical tick (e.g. x is in light years, t is in years).

Because of the units, the world line of a photon in a Minkowski diagram is always drawn at a 45° angle. To get a feel for this, try playing with different light directions and emitter positions in the following vignette. The emitter shoots out a light beam directed along the x axis.

In his paper, Einstein makes very few assumptions about the nature of time, but he does say:

...we establish by definition that the time required by light to travel from A to B equals the time it requires to travel from B to A. (original German)

Let's visualize this with a carefully placed mirror. If our light emission event occurs at (0, -a) and we wish to receive the reflection at (0, +a), then the reflection event must occur at (+a, 0).

The following vignette shows this in action. The mirror (depicted by a dashed line) is automatically repositioned to satisfy the constraint that the reflection occurs at t=0.

Crucially, the time coordinate of the reflection event must be exactly halfway between the emitting time and the receiving time. The blue span in the vignette has the same length as the green span.

I know this is obvious but bear with me, because things are about to get crazy.

World lines

The previous vignette depicted two world lines (paths through space-time). The world line of the photon is obvious, but the world line of the stationary observer is in there too; it's the time axis itself!

To make things more interesting, let's try drawing the world line of a spaceship that's moving in the +x direction. Let's also pretend the spaceship has headlights and there's a mirror held some distance in front of the ship using a giant selfie stick, such that its headlights are reflected back.

The world line of the ship is shown in red in the following vignette. This is similar to the previous vignette in that our condition is that we send light at (0, -a) and receive its reflection at (0, +a). The only difference is that these coordinates are now expressed in the coordinate frame of a moving entity.

The position of the reflection event in the above vignette might seem a little odd, but we must place it in that spot, due to the two constraints that we previously illustrated. Namely:

If the captain of the ship sketched a Minkowski diagram from her perspective, it would look exactly like the earlier vignette, which was much easier to understand. This suggests the possibility that time is not absolute, such that t only refers to a stationary observer's time, while the ship has some other time, which we can call t'. The reflection event occurs at t'=0 but not at t=0. The two coordinate systems overlap at (0,0).

Okay, so the world line of a non-accelerating entity is a depiction of its t'=0 axis. What about its x'=0 axis? The above vignette lets you visualize it by scrubbing the emission time and looking at the series of reflection events.

At this point, we can see that the transformation from the stationary observer's coordinate system to the ship's coordinate system is not a simple rotation or even a shear transform, it's something entirely different.

Time dilation

To learn more about the coordinate transformations in a Minkowski diagram, we need to understand not just how the axis lines change their orientation, but how the units change. Let's think about the time axis first.

Every clock has the concept of a tick. Some examples of ticks: the swing of a pendulum, the output of a quartz resonator, or the pulse from a 555 integrated circuit. The following vignette depicts two "light clocks", whereby the tick is achieved by bouncing a photon back and forth.

If you increase the ship's velocity, you can see that the ticks seem to slow down on the ship's clock, because the light pulse has a longer distance to travel. However, from the captain's perspective, the ticks seem to be bouncing at a constant rate.

If we think about the path of the photon in the ship, we can draw a triangle and use the Pythagorean theorem to compute how much time appears to contract from the stationary observer's perspective. This is depicted in the following vignette. If you remember that distance = speed * time, then the length of the triangle sides will make sense.

It's now obvious that \((vt')^2+(ct)^2=(ct')^2\). We wish to find a scaling factor, which we'll call \(\gamma\), such that \( t' = \gamma t \). If you do some algebra, you'll come up with: \[\gamma =\frac{1}{\sqrt{1-\frac{v^{2}}{c^{2}}}}\]

Great, we know now how time units change from one coordinate system to another! But what about space?

Length contraction

Let's use the light clock again, but turn it on its side so that the photon path is aligned with the ship's travel path.

Next we'll do some math, but first let's describe all the variables involved.

Without relativistic effects, the time for a light beam to traverse the light clock and return is: \[t = 2\frac{L}{c}\] From the stationary observer's perspective however, the light on the ship takes more time when it travels in the same direction, and less time when it returns: \[t' = \frac{L'}{c-v} + \frac{L'}{c+v} \] And, we already know how to compute t'. \[t' = \gamma t \] Again, we can simply apply bunch of high school algebra and end up with: \[L' = \frac{L}{\gamma} \]

Lorentz transform

Now that we have the equations for time dilation and length contraction, we can draw tick marks on our space-time diagrams. Try playing with velocity in the following vignette to see how the tick marks change. The vignette draws trails behind the tick marks, which reveal some hyperbolas. Interesting!

We'll come back to those hyperbolas later, but for now let's use everything we've learned so far to derive the generalized transformation equations.

Before Einstein the transformation to get from one coordinate frame to another was quite simple. Here's how Newton would've transformed one coordinate frame to another:

\(x' = x - vt\) \(x = x' + vt\)

Hopefully the above statements make sense. The equation on the right is basically the reverse transformation, which simply changes the sign on the velocity. Now, due to Einstein and everything we've learned so far, we know this is wrong, and it's wrong in two ways:

So, after Einstein, we accept that time can be "primed", and that a fudge factor is included, which we'll call \(f(v)\). We can now write:

\(x' = f(v) (x - vt)\) \(x = f(v) (x' + vt')\)

From our earlier experiments we can now deduce that \(f(v)=\gamma\). Another way of writing this is:

\(x' = \frac{ x - vt }{ \sqrt{1-\frac{v^{2}}{c^{2}}} }\) \(t' = \frac{ t - vx }{ \sqrt{1-\frac{v^{2}}{c^{2}}} }\)

These equations convey the Lorentz transformation in its entirety, but let's look for a more geometric interpretation.

Hyperbolic rotation

Remember those hyperbola trails that we saw when transforming the tick marks in an earlier vignette? The Lorentz transformation basically slides a point along a hyperbola, similar to how a Euclidean rotation slides a point along a circle. The following vignette compares Euclidean rotation with hyperbolic rotation.

In the above vignette, the waveforms of sin and cos are recognizable in the left pane; the corollary waveforms of sinh and cosh are shown in the right pane.

Euclidean rotation of a 2D point can conveyed with a 2x2 matrix: \[ \begin{bmatrix} cos(\theta) & -sin(\theta )\\ sin(\theta) & cos(\theta) \end{bmatrix} \] Similarly, hyperbolic rotation of a 2D point can also be conveyed with a 2x2 matrix: \[ \begin{bmatrix} cosh(\phi) & -sinh(\phi)\\ -sinh(\phi) & cosh(\phi) \end{bmatrix} \] The Lorentz transformation can be expressed as a hyperbolic rotation by setting the hyperbolic angle as follows, assuming units are chosen such that c=1. \[ \phi = artanh(v) = \frac{1}{2} ln( \frac{1+v}{1-v} ) \] \[ \begin{bmatrix} x' \\ t' \end{bmatrix} = \begin{bmatrix} cosh(\phi) & -sinh(\phi )\\ -sinh(\phi) & cosh(\phi) \end{bmatrix} \begin{bmatrix} x \\ t \end{bmatrix} \]

NOTE: Sometimes this is written without minus signs in front of the sinh elements. This is just an expression of the inverse. To understand why, first add a minus sign in front of all the \(\phi\) angles, then apply the following identities: \(sinh(-x)=-sinh(x)\) and \(cosh(-x)=cosh(x)\).

I verified by hand that this expands to the classic form of the Lorentz transformation: \[ t' = \gamma (t-vx) \] \[ x' = \gamma (x-vt) \] \[\gamma =\frac{1}{\sqrt{1-v^{2}}}\] Note that these equations are somewhat simplified, since they omit the c term and only deal with a single spatial dimension.

But, hopefully you get the general idea. Er, the special idea! Maybe I'll write a post on general relativity in the future, after learning a bit more math.

Philip Rideout
September 2021

I created these vignettes using the the 2D canvas API, the estrella build tool for TypeScript, and TweakPane for the sliders.