Celeritas  0.5.0-56+6b053cd
Classes | Functions
FourVector.hh File Reference
#include <cmath>
#include "corecel/cont/Array.hh"
#include "corecel/math/Algorithms.hh"
#include "corecel/math/ArrayOperators.hh"
#include "corecel/math/ArrayUtils.hh"
#include "geocel/Types.hh"
#include "celeritas/Quantities.hh"
#include "celeritas/Types.hh"
This graph shows which files directly or indirectly include this file:

Classes

struct  celeritas::FourVector
 The momentum-energy four-vector (Lorentz vector). More...
 

Functions

CELER_FUNCTION FourVector celeritas::operator+ (FourVector const &lhs, FourVector const &rhs)
 Add two four-vectors.
 
CELER_FUNCTION Real3 celeritas::boost_vector (FourVector const &p)
 Get the boost vector ( \( \frac{\vec{mom}}/{energy} \)) of a four-vector.
 
CELER_FUNCTION void celeritas::boost (Real3 const &v, FourVector *p)
 Perform the Lorentz transformation along a boost vector. More...
 
CELER_FUNCTION real_type celeritas::norm (FourVector const &a)
 Calculate the magnitude of a four vector.
 

Function Documentation

◆ boost()

CELER_FUNCTION void celeritas::boost ( Real3 const &  v,
FourVector p 
)
inline

Perform the Lorentz transformation along a boost vector.

The transformation ( \( \Lambda^{\alpha}_{\beta} \)) along the boost vector ( \( \vec{v} \)) for a four-vector \( p^{\beta} \) is:

\[ p^{\prime \beta} = \Lambda^{\alpha}_{\beta} (\vec{v}) p^{\beta} \]

.

Todo:
: define a boost function that takes a second FourVector for reduced register usage