|
CORSIKA8
0.0.0
The framework to simulate particle cascades for astroparticle physics
|
This utility class handles Lorentz boost between different referenence frames, using FourVector. More...
#include <COMBoost.hpp>
Public Member Functions | |
| COMBoost (FourVector< HEPEnergyType, MomentumVector > const &Pprojectile, HEPEnergyType const massTarget) | |
| construct a COMBoost given four-vector of projectile and mass of target (target at rest) | |
| COMBoost (MomentumVector const &momentum, HEPEnergyType mass) | |
| construct a COMBoost to boost into the rest frame given a 3-momentum and mass | |
| template<typename FourVector > | |
| FourVector | toCoM (FourVector const &p) const |
| transforms a 4-momentum from lab frame to the center-of-mass frame | |
| template<typename FourVector > | |
| FourVector | fromCoM (FourVector const &p) const |
| transforms a 4-momentum from the center-of-mass frame back to lab frame | |
| CoordinateSystemPtr | getRotatedCS () const |
| returns the rotated coordinate system | |
Protected Member Functions | |
| void | setBoost (double coshEta, double sinhEta) |
| internal method | |
This utility class handles Lorentz boost between different referenence frames, using FourVector.
The class is initialized with projectile and optionally target energy/momentum data. During initialization, a rotation matrix is calculated to represent the projectile movement (and thus the boost) along the z-axis. Also the inverse of this rotation is calculated. The Lorentz boost matrix and its inverse are determined as 2x2 matrices considering the energy and pz-momentum.
Different constructors are offered with different specialization for the cases of collisions (projectile-target) or just decays (projectile only).
Definition at line 47 of file COMBoost.hpp.