1#ifndef RAD_TLorentzVectorC
2#define RAD_TLorentzVectorC
5#include "TLorentzVector.h"
13 std::complex<double>
y,
14 std::complex<double> z,
15 std::complex<double> e){
21 std::complex<double>
y,
22 std::complex<double> z,
23 std::complex<double> e){
27 inline std::complex<double>
Px()
const {
return fx;}
28 inline std::complex<double>
Py()
const {
return fy;}
29 inline std::complex<double>
Pz()
const {
return fz;}
30 inline std::complex<double>
E()
const {
return fe;}
31 inline std::complex<double>
X()
const {
return fx;}
32 inline std::complex<double>
Y()
const {
return fy;}
33 inline std::complex<double>
Z()
const {
return fz;}
34 inline std::complex<double>
T()
const {
return fe;}
98 return T()*std::conj(
q.T())
99 - (
Z()*std::conj(
q.Z()) +
Y()*std::conj(
q.Y()) +
X()*std::conj(
q.X()));
102 inline std::complex<double>
Dot(
const TLorentzVector &
q)
const {
103 return T()*
q.T() -
Z()*
q.Z() -
Y()*
q.Y() -
X()*
q.X();
110 inline std::complex<double>
operator * (
const TLorentzVector &
q)
const {
****INTEGER imax DOUBLE PRECISION m_pi *DOUBLE PRECISION m_amfin DOUBLE PRECISION m_Chfin DOUBLE PRECISION m_Xenph DOUBLE PRECISION m_sinw2 DOUBLE PRECISION m_GFermi DOUBLE PRECISION m_MfinMin DOUBLE PRECISION m_ta2 INTEGER m_out INTEGER m_KeyFSR INTEGER m_KeyQCD *COMMON c_Semalib $ !copy of input $ !CMS energy $ !beam mass $ !final mass $ !beam charge $ !final charge $ !smallest final mass $ !Z mass $ !Z width $ !EW mixing angle $ !Gmu Fermi $ alphaQED at q
TLorentzVectorC operator+(const TLorentzVectorC &q) const
TLorentzVectorC & operator+=(const TLorentzVectorC &q)
TLorentzVectorC operator*(double a) const
void SetPxPyPzE(std::complex< double > x, std::complex< double > y, std::complex< double > z, std::complex< double > e)
TLorentzVectorC(std::complex< double > x, std::complex< double > y, std::complex< double > z, std::complex< double > e)
std::complex< double > E() const
std::complex< double > fe
std::complex< double > Dot(const TLorentzVector &q) const
TLorentzVectorC & operator=(const TLorentzVectorC &q)
TLorentzVectorC & operator*=(double a)
TLorentzVectorC operator-() const
std::complex< double > T() const
std::complex< double > fx
std::complex< double > X() const
TLorentzVectorC & operator-=(const TLorentzVectorC &q)
std::complex< double > Z() const
std::complex< double > Pz() const
std::complex< double > Y() const
std::complex< double > Py() const
std::complex< double > fz
std::complex< double > Dot(const TLorentzVectorC &q) const
std::complex< double > fy
std::complex< double > Px() const