|
ThePEG
1.8.0
|
contains the LorentzVector class. More...
#include "LorentzVector.fh"#include "ThePEG/Utilities/Direction.h"#include "ThePEG/Utilities/UnitIO.h"#include "LorentzRotation.h"#include "ThreeVector.h"#include "Transverse.h"Go to the source code of this file.
Classes | |
| class | ThePEG::LorentzVector< Value > |
| A 4-component Lorentz vector. More... | |
| class | ThePEG::LorentzVector< Value > |
| A 4-component Lorentz vector. More... | |
| struct | ThePEG::BinaryOpTraits< T, U > |
| BinaryOpTraits should be specialized with typdefs called MulT and DivT which gives the type resulting when multiplying and dividing the template argument types respectively. More... | |
| struct | ThePEG::BinaryOpTraits< LorentzVector< T >, U > |
| Template for multiplication by scalar. More... | |
| struct | ThePEG::BinaryOpTraits< T, LorentzVector< U > > |
| Template for multiplication by scalar. More... | |
Namespaces | |
| ThePEG | |
| This is the main namespace within which all identifiers in ThePEG are declared. | |
Macros | |
| #define | ERROR_IF(condition, message) if ( (condition) ) throw ThePEG::Exception( (message) , ThePEG::Exception::eventerror) |
| Debug helper function. | |
Functions | |
| template<typename Value > | |
| bool | ThePEG::operator== (const LorentzVector< Value > &a, const LorentzVector< Value > &b) |
| Equality. | |
| ostream & | ThePEG::operator<< (ostream &os, const LorentzVector< double > &v) |
Stream output. Format . | |
| template<typename Value > | |
| Value | ThePEG::dirPlus (const LorentzVector< Value > &p) |
| Return the positive light-cone component. More... | |
| template<typename Value > | |
| Value | ThePEG::dirMinus (const LorentzVector< Value > &p) |
| Return the negative light-cone component. More... | |
| template<typename Value > | |
| Value | ThePEG::dirZ (const LorentzVector< Value > &p) |
| Return the component along the positive z-axis. More... | |
| template<typename Value > | |
| double | ThePEG::dirTheta (const LorentzVector< Value > &p) |
| Return the polar angle wrt. More... | |
| template<typename Value > | |
| double | ThePEG::dirCosTheta (const LorentzVector< Value > &p) |
| Return the cosine of the polar angle wrt. More... | |
| template<typename Value > | |
| ThreeVector< Value > | ThePEG::dirBoostVector (const LorentzVector< Value > &p) |
| Get the boost vector for the LorentzVector. More... | |
| template<typename Value > | |
| LorentzVector< Value > | ThePEG::lightCone (Value plus, Value minus, Value x, Value y) |
| Create a LorentzVector giving its light-cone and transverse components. More... | |
| template<typename Value > | |
| LorentzVector< Value > | ThePEG::lightCone (Value plus, Value minus) |
| Create a LorentzVector giving its light-cone components. More... | |
| template<typename Value > | |
| LorentzVector< Value > | ThePEG::lightCone (Value plus, Value minus, Transverse< Value > pt) |
| Create a LorentzVector giving its light-cone and transverse components. More... | |
| template<typename Value > | |
| LorentzVector< Value > | ThePEG::lightConeDir (Value plus, Value minus, Value x=Value(), Value y=Value()) |
| Create a LorentzVector giving its light-cone and transverse components. More... | |
| template<typename Value > | |
| LorentzVector< Value > | ThePEG::lightConeDir (Value plus, Value minus, Transverse< Value > pt) |
| Create a LorentzVector giving its light-cone and transverse components. More... | |
| template<typename OStream , typename UnitT , typename Value > | |
| void | ThePEG::ounitstream (OStream &os, const LorentzVector< Value > &p, UnitT &u) |
| Output a LorentzVector with units to a stream. More... | |
| template<typename IStream , typename UnitT , typename Value > | |
| void | ThePEG::iunitstream (IStream &is, LorentzVector< Value > &p, UnitT &u) |
| Input a LorentzVector with units from a stream. More... | |
Basic mathematical operations | |
| template<typename Value > | |
| LorentzVector< double > | ThePEG::operator/ (const LorentzVector< Value > &v, Value a) |
| LorentzVector< Complex > | ThePEG::operator/ (const LorentzVector< Complex > &v, Complex a) |
| template<typename Value > | |
| LorentzVector< Value > | ThePEG::operator- (const LorentzVector< Value > &v) |
| template<typename ValueA , typename ValueB > | |
| LorentzVector< ValueA > | ThePEG::operator+ (LorentzVector< ValueA > a, const LorentzVector< ValueB > &b) |
| template<typename ValueA , typename ValueB > | |
| LorentzVector< ValueA > | ThePEG::operator- (LorentzVector< ValueA > a, const LorentzVector< ValueB > &b) |
| template<typename Value > | |
| LorentzVector< Value > | ThePEG::operator* (const LorentzVector< Value > &a, double b) |
| template<typename Value > | |
| LorentzVector< Value > | ThePEG::operator* (double b, LorentzVector< Value > a) |
| template<typename ValueA , typename ValueB > | |
| LorentzVector< typename BinaryOpTraits< ValueA, ValueB >::MulT > | ThePEG::operator* (ValueB a, const LorentzVector< ValueA > &v) |
| template<typename ValueA , typename ValueB > | |
| LorentzVector< typename BinaryOpTraits< ValueA, ValueB >::MulT > | ThePEG::operator* (const LorentzVector< ValueA > &v, ValueB b) |
| template<typename ValueA , typename ValueB > | |
| LorentzVector< typename BinaryOpTraits< ValueA, ValueB >::DivT > | ThePEG::operator/ (const LorentzVector< ValueA > &v, ValueB b) |
Scalar product with metric \f$(+,-,-,-)\f$ | |
| template<typename ValueA , typename ValueB > | |
| BinaryOpTraits< ValueA, ValueB >::MulT | ThePEG::operator* (const LorentzVector< ValueA > &a, const LorentzVector< ValueB > &b) |
| template<typename Value > | |
| BinaryOpTraits< Value, Value >::MulT | ThePEG::operator* (const LorentzVector< Value > &a, const LorentzVector< Value > &b) |
contains the LorentzVector class.
Lorentz vectors can be created with any unit type as template parameter. All basic mathematical operations are supported, as well as a subset of the CLHEP LorentzVector functionality.
Definition in file LorentzVector.h.
1.8.9.1