Rivet
1.8.3
Main Page
Related Pages
Namespaces
Classes
Files
File List
include
Rivet
Projections
DISKinematics.hh
1
// -*- C++ -*-
2
#ifndef RIVET_DISKinematics_HH
3
#define RIVET_DISKinematics_HH
4
5
#include "Rivet/Particle.hh"
6
#include "Rivet/Event.hh"
7
#include "Rivet/Projection.hh"
8
#include "Rivet/Projections/DISLepton.hh"
9
#include "Rivet/Projections/Beam.hh"
10
11
namespace
Rivet {
12
13
15
class
DISKinematics
:
public
Projection
{
16
17
public
:
18
20
DISKinematics
()
21
: _theQ2(-1.0), _theW2(-1.0), _theX(-1.0), _theY(-1.0), _theS(-1.0)
22
{
23
setName
(
"DISKinematics"
);
24
//addPdgIdPair(ANY, hadid);
25
addProjection
(
Beam
(),
"Beam"
);
26
addProjection
(
DISLepton
(),
"Lepton"
);
27
}
28
30
virtual
const
Projection
*
clone
()
const
{
31
return
new
DISKinematics
(*
this
);
32
}
33
34
35
protected
:
36
38
virtual
void
project
(
const
Event
& e);
39
41
virtual
int
compare
(
const
Projection
& p)
const
;
42
43
44
public
:
45
47
double
Q2
()
const
{
return
_theQ2; }
48
50
double
W2
()
const
{
return
_theW2; }
51
53
double
x
()
const
{
return
_theX; }
54
56
double
y
()
const
{
return
_theY; }
57
59
double
s
()
const
{
return
_theS; }
60
61
62
64
const
LorentzTransform
&
boostHCM
()
const
{
65
return
_hcm;
66
}
67
69
const
LorentzTransform
&
boostBreit
()
const
{
70
return
_breit;
71
}
72
74
const
Particle
&
beamHadron
()
const
{
75
return
_inHadron;
76
}
77
78
private
:
79
81
double
_theQ2;
82
84
double
_theW2;
85
87
double
_theX;
88
90
double
_theY;
91
93
double
_theS;
94
95
Particle
_inHadron;
96
98
LorentzTransform
_hcm;
99
101
LorentzTransform
_breit;
102
};
103
104
105
}
106
107
#endif
Generated on Wed May 8 2013 17:45:40 for Rivet by
1.8.3.1