[Physics FAQ] - [Copyright]

Updated by Terence Tao 22-February-1997
Original by Philip Gibbs 6-October-1996

How Do You Add Velocities in Special Relativity?

Suppose an object A is moving with a velocity v relative to an object B and B is moving with a velocity u (in the same direction) relative to an object C. What is the velocity of A relative to C?

                   u      -------> A
                -------> B
               C        w

In non-relativistic mechanics the velocities are simply added and the answer is that A is moving with a velocity w = u+v relative to C. But in special relativity the velocities must be combined using the formula

         w = (u + v)/(1 + uv/c2)

If u and v are both small compared to the speed of light c, then the answer is approximately the same as the non-relativistic theory. In the limit where u is equal to c (because C is a massless particle moving to the left at the speed of light), the sum gives c. This confirms that anything going at the speed of light does so in all reference frames.

This change in the velocity addition formula is not due to making measurements without taking into account time it takes light to travel or the Doppler effect. It is what is observed after such effects have been accounted for and is an effect of special relativity which cannot be accounted for with Newtonian mechanics.

The formula can also be applied to velocities in opposite directions by simply changing signs of velocity values or by rearranging the formula and solving for v. In other words, If B is moving with velocity u relative to C and A is moving with velocity w relative to C then the velocity of A relative to B is given by,

         v = (w - u)/(1 - wu/c2)

Notice that the only case with velocities less than or equal to c which is singular is w = u = c which gives the indeterminate zero divided by zero. In other words it is meaningless to ask the relative velocity of two photons going in the same direction.

How can that be right?

Naively the relativistic formula for adding velocities does not seem to make sense. This is due to a misunderstanding of the question which can easily be confused with the following one: Suppose the object B above is an experimenter who has set up a reference frame consisting of a marked ruler with clocks positioned at measured intervals along it. He has synchronised the clocks carefully by sending light signals along the line taking into account the time taken for the signals to travel the measured distances. He now observes the objects A and C which he sees coming towards him from opposite directions. By watching the times they pass the clocks at measured distances he can calculate the speeds they are moving towards him. Sure enough he finds that A is moving at a speed v and C is moving at speed u. What will B observe as the speed at which the two objects are coming together? It is not difficult to see that the answer must be u+v whether or not the problem is treated relativistically. In this sense velocities add according to ordinary vector addition.

But that was a different question from the one asked before. Originally we wanted to know the speed of C as measured relative to A not the speed at which B observes them moving together. This is different because the rulers and clocks set up by B do not measure distances and times correctly in the reference from of A where the clocks do not even show the same time. To go from the reference frame of A to the reference frame of B you need to apply a Lorentz transformation on co-ordinates as follows (taking the x-axis parallel to the direction of travel).

   xB = gamma(v)( xA - v tA )
   tB = gamma(v)( tA - v/c2 xA )

   gamma(v) = 1/sqrt(1-v2/c2)

To go from the frame of B to the frame of C you must apply a similar transformation

   xC = gamma(u)( xB - u tB )
   tC = gamma(u)( tB - u/c2 xB )

These two transformations can be combined to give a transformation which simplifies to

   xC = gamma(w)( xA - w tA )
   tC = gamma(w)( tA - w/c2 xA)

   w = (u + v)/(1 + uv/c2)

This gives the correct formula for combining parallel velocities in special relativity. A feature of the formula is that if you combine two velocities less than the speed of light you always get a result which is still less than the speed of light. Therefore no amount of combining velocities can take you beyond light speed. Sometimes physicists find it more convenient to talk about the rapidity r which is defined by the relation,

      v = c tanh(r/c)

The hyperbolic tangent function tanh maps the real line from minus infinity to plus infinity onto the interval -1 to +1. So while velocity v can only vary between -c and c, the rapidity r varies over all real values. At small speeds rapidity and velocity are approximately equal. If s is also the rapidity corresponding to velocity u then the combined rapidity t is given by simple addition.

      t = r+s

This follows from the identity of hyperbolic tangents

      tanh(x+y) = ( tanh(x) + tanh(y) )/( 1 + tanh(x)tanh(y) ) 

Rapidity is therefore useful when dealing with combined velocities in the same direction and also for problems of linear acceleration

For example, if we combine the speed v n times, the result is,

      w  = c tanh( n tanh-1(v/c) ) 

The velocity addition formula for non-parallel velocities

The previous discussion only concerned itself with the case when both velocities v and u were aligned along the x-axis; the y and z directions were ignored.

Let us now consider a more general case, where B is moving with velocity v = (vx,0,0) in A's reference frame, and C is moving with velocity u = (ux, uy, uz) in B's reference frame. The question is to find the velocity w = (wx, wy, wz) of C in A's reference frame. This is still not quite the most general situation, since we are assuming B to be moving in the direction of A's x-axis, but it is a decent compromise, since the most general formula is somewhat messy. In any event, one can always orient A's frame using Euclidean rotations so that B's direction of motion lies along the x-axis.

There is one additional assumption we will need to make before we can give the formula. Unlike the case of one spatial dimension, the relative orientations of B's frame of reference and A's frame of reference is now important. What B perceives as motion in the x-direction (or y-direction, or z-direction) may not agree with what A perceives as motion in the x-direction (etc.), if B is facing in a different direction from A.

We will thus make the simplifying assumption that B is oriented in the standard way with respect to A, which means that the spatial co-ordinates of their respective frames agree in all directions orthogonal to their relative motion. In other words, we are assuming that

  yB = yA
  zB = zA

In the technical jargon, we are requiring B's frame of reference to be obtained from A's frame by a standard Lorentz transformation (also known as a Lorentz boost).

In practice, this assumption is not a major obstacle, because if B is not initially oriented in the standard way with respect to A, it can be made to be so oriented by a purely spatial rotation of axes. However, it should be warned that if B is oriented in the standard way with respect to A, and C is oriented in the standard way with respect to B, then it is not necessarily true that C is oriented in the standard way with respect to A! This phenomenon is known as precession. It's roughly analogous to the three-dimensional fact that, if one rotates an object around one horizontal axis and then about a second horizontal axis, the net effect would be a rotation around an axis which is not purely horizontal, but which will contain some vertical components.

If B is oriented in the standard way with respect to A, the Lorentz transformations are given by

   xB = gamma(vx)( xA - vx tA )
   yB = yA
   zB = zA
   tB = gamma(vx)( tA - vx/c2 xA )

Since C is moving along the line

   { (xB,yB,zB,tB) = (ux t, uy t, uz t, t): t real },

we see, after some computation, that in A's frame of reference C is moving along the line

   { (xA,yA,zA,tA) = (wx s, wy s, wz s, s): s real },


wx = (ux + vx) / (1 + ux vx / c2)
wy = uy / [(1 + ux vx / c2) gamma(vx)]
wz = uz / [(1 + ux vx / c2) gamma(vx)].

gamma(vx) = 1/sqrt(1 - vx2 / c2).

Thus the velocity w = (wx, wy, wz) of C with respect to A is given by the above three formulae, assuming that B is oriented in the standard way with respect to A. Note that if uy=uz=0 then this reduces to the simpler velocity addition formula given before.

References: "Essential Relativity", W. Rindler, Second Edition. Springer-Verlag 1977.

Relative speeds

If an observer A measures two objects B and C to be travelling at velocities u = (ux, uy, uz) and v = (vx, vy, vz) respectively, one may ask the question of what the relative speed between B and C are, or in other words at what speed w B would measure C to be travelling at, or vice versa. In Gallilean relativity the relative speed would be given by

w2 = (u-v).(u-v) = (ux - vx)2 + (uy - vy)2 + (uz - vz)2.

However, in special relativity the relative speed is instead given by the formula

         (u-v).(u-v) - (uXv)2/c2
 w2 =    ----------------------
             (1 - (u.v)/c2)2

where u-v = (ux - vx, uy - vy, uz - vz) is the vector difference of u and v, u.v = ux vx + uy vy + uz vz is the inner product of u and v and uXv is the vector product for which (uXv)2 = (u.u)(v.v) - (u.v)2.

When uy = uz = vy = vz = 0 the formula reduces to the more familiar

w = |ux - vx| / (1 - ux vx/c2).

N. M. J. Woodhouse, "Special Relativity", Lecture Notes in Physics (m: 6), Springer Verlag, 1992.
J. D. Jackson, "Classical Electrodynamics", 2nd ed., 1975, ch 11.
P. Lounesto, "Clifford Algebras and Spinors", CUP, 1997