Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Vector addition of velocities

  1. Nov 15, 2008 #1


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    I've been trying to derive the velocity addition rule for vectors. For the moment I'm just considering 2 spatial dimensions. The results I'm getting look rather nasty. For example, I got

    [tex]w_x=\frac{u_x+v_x+\frac{u_y}{u^2}(u_xv_y-u_yv_x)(1-\frac 1 \gamma)}{1+u_xv_x+u_yv_y}[/tex]

    Does anyone have the correct answer? My result has the correct behavior in the limit [itex]c\rightarrow\infty[/itex], but I still think it looks weird.

    (The gamma is the one corresponding to u, not v, and when I write "u" without an index, that's the magnitude of the vector).
  2. jcsd
  3. Nov 15, 2008 #2
  4. Nov 15, 2008 #3

    George Jones

    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    I haven't checked your 2-dimensional formula.

    There is no avoiding a bit of an algebraic mess, but, when I get the time, I'll type in a somewhat slick derivation for the 3-dimensional case.
  5. Nov 15, 2008 #4


    Staff: Mentor

    Hi Fredrik,

    Yes, they do get pretty nasty. Even on the http://math.ucr.edu/home/baez/physics/Relativity/SR/velocity.html" [Broken] they avoid the most general expression.

    Here is what I got for the most general case of u in v's rest frame where u and v are given in some third frame. I'm sure it can be written prettier and there is a better than even chance I got something wrong. Conceptually it is easy to derive, just messy. It is just the Lorentz transform of u from the original reference frame to v's rest frame.

    [tex]\left\{\frac{c^2 \left(v_x \left(u_y v_y+u_z v_z+\gamma
    \left(v_x^2+v_y^2-u_y v_y+v_z \left(v_z-u_z\right)\right)\right)-u_x
    \left(\gamma v_x^2+v_y^2+v_z^2\right)\right)}{v^2 \gamma
    \left(u.v-c^2\right)},-\frac{c^2 \left(\left(u_y-\gamma v_y\right)
    v_x^2+(\gamma -1) u_x v_y v_x+u_y \left(\gamma
    v_y^2+v_z^2\right)-v_y \left(u_z v_z+\gamma \left(v_y^2+v_z
    \left(v_z-u_z\right)\right)\right)\right)}{v^2 \gamma
    \left(u.v-c^2\right)},-\frac{c^2 \left(\left(u_z-\gamma v_z\right)
    v_x^2+(\gamma -1) u_x v_z v_x+\gamma \left(u_z-v_z\right)
    v_z^2+(\gamma -1) u_y v_y v_z+v_y^2 \left(u_z-\gamma
    v_z\right)\right)}{v^2 \gamma \left(u.v-c^2\right)}\right\}[/tex]
    Last edited by a moderator: May 3, 2017
  6. Nov 15, 2008 #5


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    I'll explain my method just in case someone is interested, and because I often find mistakes when I try to explain things. :smile:

    First the 1+1-dimensional case. F and F' are two inertial frames with the same origin. Let the line


    be the world line of a mass M in the coordinates of F'. The idea is to pick any point (t' x')T on that world line and do a Lorentz transformation to F. The velocity we seek is x/t.

    [tex]\begin{pmatrix}t\\x\end{pmatrix}=\Lambda_{FF'}\begin{pmatrix}1\\v\end{pmatrix} = \gamma(u)\begin{pmatrix}1 & u\\ u & 1\end{pmatrix}\begin{pmatrix}1\\v\end{pmatrix} =\gamma(u)\begin{pmatrix}1+uv\\ u+v\end{pmatrix} \implies w=\frac{u+v}{1+uv}[/tex]

    Now the 2+1-dimensional case. We use the same basic assumptions, and the same idea. (I just have to add that F and F' are also rotated the same way, now that there are two spatial dimensions). We're going to find our "w" by using an appropriate Lorentz transformation [itex]\Lambda_{FF'}[/itex] to transform the vector (1 vx vx)T from F' to F.

    The "trick" I'm using is to do this Lorentz transformation in three steps. I'm introducing two new frames, G and G'. G' has the same velocity as F', but is rotated so that its x axis is parallel with u. G is rotated the same way as G', but has the same velocity as F.


    So instead of applying the complicated Lorentz transformation, I'm doing a rotation by an angle [itex]\theta=\arctan (u_y/u_x)[/itex], then a boost in the x direction, and finally the inverse of the original rotation. I'll save myself some typing by writing the above equation as

    [tex]\Lambda_{FF'}=R^T\Lambda R[/tex]

    We have

    [tex]R=\begin{pmatrix}1 & 0 & 0\\ 0 & \cos\theta & \sin\theta\\ 0 & -\sin\theta & \cos\theta \end{pmatrix} =\begin{pmatrix}1 & 0 & 0\\ 0 & \frac{u_x}{u} & \frac{u_y}{u}\\ 0 & -\frac{u_y}{u} & \frac{u_x}{u} \end{pmatrix}[/tex]


    [tex]\Lambda=\gamma(u)\begin{pmatrix}1 & u & 0\\ u & 1 & 0\\ 0 & 0 & 1/\gamma(u) \end{pmatrix}[/tex]

    All we have to do is calculate

    [tex]\begin{pmatrix}t \\ x \\ y\end{pmatrix}=R^T\Lambda R\begin{pmatrix}1 \\ v_x \\ v_y\end{pmatrix}[/tex]

    and then we get our "w" the same way as before: wx=x/t, wy=y/t. I might post some intermediate results later, but right now I have to go out and get some food.

    Is there something wrong with the [itex]\LaTeX[/itex]? It's a bit hard to read. Is the text smaller than before or something?

    DaleSpam, do you think you could break your long equation into two lines, so that it doesn't make every line of text longer than the browser window?
    Last edited: Nov 15, 2008
  7. Nov 15, 2008 #6


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    Maybe the R is wrong? The angle is defined using coordinates in F, but we're rotating a vector in F', so maybe I need to replace R (but not RT?) with something more complicated.

    Edit 1: Yes, that's definitely the case. The last equation should be

    [tex]\begin{pmatrix}t \\ x \\ y\end{pmatrix}=R^T\Lambda \bar R\begin{pmatrix}1 \\ v_x \\ v_y\end{pmatrix}[/tex]

    where [itex]\bar R[/itex] is some other rotation. It was correct to use a rotation in the x'y'-plane, but the angle is wrong because the x'y'-plane is tilted relative to the xy-plane.

    Edit 2: I tried to calculate the angle I should be using in [itex]\bar R[/itex] and I got another ugly result:



    This was supposed to be an easy and elegant method, but multiplying these matrices together looks quite horrible, and I'm not even sure I'm right about that angle.
    Last edited: Nov 15, 2008
  8. Nov 15, 2008 #7
    I strongly recommend "Beyond the Einstein Addition Law and its Gyroscopic Thomas Precession - The Theory of Gyrogroups and Gyrovector Spaces" by Abraham A. Ungar

    This book gives a beautiful hyperbolic geometrical perspective on the mathematics of spacetimes in terms of gyrogroups and gyrovectors. The book explains things like commutativity, associativity, triangle inequality and angle cosines between rays in 3 dimensions. Not just a math book but almost art IMHO.

    See formula (1.46) in the book for the general velocity addition and the workout.
    Last edited: Nov 15, 2008
  9. Nov 15, 2008 #8


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    Thank you. I was able to use the "look inside this book" feature at amazon.com to find 1.46. When I have removed the annoying factors of c, it looks like this:

    [tex]\frac{1}{1+\vec u\cdot\vec v} \Bigg(\vec u+\frac{1}{\gamma_{\vec u}} \vec v + \frac{\gamma_{\vec u}}{1+\gamma_{\vec u}}(\vec u\cdot\vec v)\vec u\Bigg)[/tex]
  10. Nov 17, 2008 #9


    User Avatar
    Staff Emeritus
    Science Advisor
    Gold Member

    I clicked around in that book some more, and I found that the addition law can also be expressed as

    [tex]\vec u\oplus\vec v=\frac{1}{1+\vec u\cdot\vec v}\Bigg(\vec u+\vec v+\frac{\gamma_{\vec u}}{1+\gamma_{\vec u}}\vec u\times(\vec u\times\vec v)\Bigg)[/tex]

    I didn't see anything that suggests that the book actually derives this rule. It seems that it just uses it as an example of what they want to define as a "gyrogroup".
  11. Nov 17, 2008 #10
    That is correct.

    Also the addition of non parallel velocity vectors in flat spacetime causes Thomas precession which is defined in the book as a Thomas gyration.

    Also it is interesting to note that the addition of non parallel velocity vectors in flat spacetime is a nonassociative operation. So u + v is not equal to v + u.

    Again, a beautiful book!
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook