Function as.4vel()
takes a three-velocity and returns a
four-velocity.
Given a four-vector \(V\), function inner4()
returns the
Lorentz invariant \(V^iV_i=\eta_{ij}V^iV^j\). This
quantity is unchanged under Lorentz transforms. Note that function
inner()
works for any four-vector, not just four-velocities.
It will work for (eg) a four-displacement, a four-momentum vector or a
four-frequency. In electromagnetism, we could have a four-current or
a four-potential. If \(U\) is a four-velocity, then
\(U^iU_i=-1\); if \(U\) is a 4-displacement, then \(U^iU_i\) is
the squared interval. If \(P\) is the four-momentum of a photon
then \(P^iP_i=0\).
Function to3()
is a low-level helper function used when
as.3vel()
is given a four-velocity.
Function is.consistent.4vel()
checks for four-velocities being
consistent in the sense that \(U^iU_i=-1\). Giving this
function a vector as in is.consistent.4vel(1:5)
will return an
error.
There is a class “4vel
”; but the emphasis is on
three-velocities. Compare the functions documented here with
boost()
, which returns a \(4\times 4\) transformation
matrix (which also includes rotation information).