hej
is hosted by
Hepforge
,
IPPP Durham
HEJ
2.2.2
High energy resummation for hadron colliders
Loading...
Searching...
No Matches
include
HEJ
LorentzVector.hh
Go to the documentation of this file.
1
8
#pragma once
9
10
#include <complex>
11
#include <utility>
12
13
#include "CLHEP/Vector/LorentzVector.h"
14
15
#include "
HEJ/Particle.hh
"
16
17
namespace
HEJ
{
19
inline
20
auto
dot
(
21
CLHEP::HepLorentzVector
const
& pi,
22
CLHEP::HepLorentzVector
const
& pj
23
) {
24
return
pi.dot(pj);
25
}
26
28
std::complex<double>
angle
(
29
CLHEP::HepLorentzVector
const
& pi,
30
CLHEP::HepLorentzVector
const
& pj
31
);
32
34
std::complex<double>
square
(
35
CLHEP::HepLorentzVector
const
& pi,
36
CLHEP::HepLorentzVector
const
& pj
37
);
38
40
inline
41
auto
m2
(CLHEP::HepLorentzVector
const
& h1) {
42
return
h1.m2();
43
}
44
46
inline
47
auto
plus
(CLHEP::HepLorentzVector
const
& h1) {
48
return
h1.plus();
49
}
50
52
inline
53
auto
minus
(CLHEP::HepLorentzVector
const
& h1) {
54
return
h1.minus();
55
}
56
57
inline
58
auto
perphat
(CLHEP::HepLorentzVector
const
& h1) {
59
const
auto
perp = std::complex<double>{h1.x(), h1.y()};
60
return
perp/std::abs(perp);
61
}
62
64
74
std::pair<CLHEP::HepLorentzVector, CLHEP::HepLorentzVector>
75
split_into_lightlike
(CLHEP::HepLorentzVector
const
& P);
76
77
inline
78
CLHEP::HepLorentzVector
to_HepLorentzVector
(fastjet::PseudoJet
const
& mom){
79
return
{mom.px(), mom.py(), mom.pz(), mom.e()};
80
}
81
82
inline
83
CLHEP::HepLorentzVector
to_HepLorentzVector
(
Particle
const
& particle){
84
return
to_HepLorentzVector
(particle.
p
);
85
}
86
87
inline
88
fastjet::PseudoJet
to_PseudoJet
(CLHEP::HepLorentzVector
const
& mom){
89
return
{mom.px(), mom.py(), mom.pz(), mom.e()};
90
}
91
}
// namespace HEJ
Particle.hh
Contains the particle struct.
HEJ
Main HEJ 2 Namespace.
Definition:
mainpage.dox:1
HEJ::angle
std::complex< double > angle(CLHEP::HepLorentzVector const &pi, CLHEP::HepLorentzVector const &pj)
"angle" product angle(pi, pj) = <i j>
HEJ::perphat
auto perphat(CLHEP::HepLorentzVector const &h1)
Definition:
LorentzVector.hh:58
HEJ::to_PseudoJet
fastjet::PseudoJet to_PseudoJet(CLHEP::HepLorentzVector const &mom)
Definition:
LorentzVector.hh:88
HEJ::plus
auto plus(CLHEP::HepLorentzVector const &h1)
Plus component.
Definition:
LorentzVector.hh:47
HEJ::dot
auto dot(CLHEP::HepLorentzVector const &pi, CLHEP::HepLorentzVector const &pj)
"dot" product
Definition:
LorentzVector.hh:20
HEJ::split_into_lightlike
std::pair< CLHEP::HepLorentzVector, CLHEP::HepLorentzVector > split_into_lightlike(CLHEP::HepLorentzVector const &P)
Split a single Lorentz vector into two lightlike Lorentz vectors.
HEJ::to_HepLorentzVector
CLHEP::HepLorentzVector to_HepLorentzVector(fastjet::PseudoJet const &mom)
Definition:
LorentzVector.hh:78
HEJ::square
std::complex< double > square(CLHEP::HepLorentzVector const &pi, CLHEP::HepLorentzVector const &pj)
"square" product square(pi, pj) = [i j]
HEJ::m2
auto m2(CLHEP::HepLorentzVector const &h1)
Invariant mass.
Definition:
LorentzVector.hh:41
HEJ::minus
auto minus(CLHEP::HepLorentzVector const &h1)
Minus component.
Definition:
LorentzVector.hh:53
HEJ::Particle
Class representing a particle.
Definition:
Particle.hh:25
HEJ::Particle::p
fastjet::PseudoJet p
particle momentum
Definition:
Particle.hh:29
Generated by
1.9.5