Rivet API documentation

Rivet 4.1.3
MissingMomentum.hh
1// -*- C++ -*-
2#ifndef RIVET_MissingMomentum_HH
3#define RIVET_MissingMomentum_HH
4
5#include "Rivet/Event.hh"
6#include "Rivet/Particle.hh"
7#include "Rivet/Projection.hh"
8#include "Rivet/Config/RivetCommon.hh"
9#include "Rivet/Projections/METFinder.hh"
10#include "Rivet/Projections/VisibleFinalState.hh"
11
12namespace Rivet {
13
14
22 class MissingMomentum : public METFinder {
23 public:
24
25 using METFinder::operator=;
26
29 setName("MissingMomentum");
30 declare(fs, "FS");
31 declare(VisibleFinalState(fs), "VisibleFS");
32 }
33
35 MissingMomentum(const Cut& c = Cuts::open())
37
38
41
43 using Projection::operator=;
44
45
48
58 const FourMomentum visibleMomentum(double mass = 0 * GeV) const;
60 const FourMomentum visibleMom(double mass = 0 * GeV) const {
61 return visibleMomentum(mass);
62 }
63
71 const FourMomentum missingMomentum(double mass = 0 * GeV) const {
73 }
74
75 const FourMomentum missingMom(double mass = 0 * GeV) const {
76 return missingMomentum(mass);
77 }
78
80
81
89
93 const ThreeMomentum& vectorSumPt() const {
94 return _vpt;
95 }
96
98 double scalarSumPt() const {
99 return _spt;
100 }
101
103
104
112
116 const Vector3& vectorSumEt() const {
117 return _vet;
118 }
119
121 double scalarSumEt() const {
122 return _set;
123 }
124
126
127
129 void clear();
130
131
132 protected:
133
135 void project(const Event& e);
136
138 CmpState compare(const Projection& p) const;
139
140
141 protected:
142
144 FourMomentum _momentum;
145
147 double _set, _spt;
148
150 Vector3 _vet;
151 ThreeMomentum _vpt;
152 };
153
154
157
158
159}
160
161#endif
Representation of a HepMC event, and enabler of Projection caching.
Definition Event.hh:22
Project out all final-state particles in an event. Probably the most important projection in Rivet!
Definition FinalState.hh:12
Specialized version of the FourVector with momentum/energy functionality.
Definition Vector4.hh:363
FourMomentum reverse() const
Multiply space components only by -1.
Definition Vector4.hh:788
Interface for projections that find missing transverse energy/momentum.
Definition METFinder.hh:11
Calculate missing , etc. as complements to the total visible momentum.
Definition MissingMomentum.hh:22
void clear()
Clear the projection results.
RIVET_DEFAULT_PROJ_CLONE(MissingMomentum)
Clone on the heap.
CmpState compare(const Projection &p) const
Compare projections.
void project(const Event &e)
Apply the projection to the event.
const Vector3 & vectorSumEt() const
The vector-summed visible transverse energy in the event, as a 3-vector with z=0.
Definition MissingMomentum.hh:116
const ThreeMomentum & vectorSumPt() const
The vector-summed visible transverse momentum in the event, as a 3-vector with z=0.
Definition MissingMomentum.hh:93
MissingMomentum(const FinalState &fs)
Canonical constructor taking a FinalState as argument.
Definition MissingMomentum.hh:28
const FourMomentum missingMomentum(double mass=0 *GeV) const
The missing four-momentum in the event, required to balance the final state.
Definition MissingMomentum.hh:71
double scalarSumPt() const
The scalar-summed visible transverse momentum in the event.
Definition MissingMomentum.hh:98
const FourMomentum missingMom(double mass=0 *GeV) const
Alias for missingMomentum.
Definition MissingMomentum.hh:75
const FourMomentum visibleMom(double mass=0 *GeV) const
Alias for visibleMomentum.
Definition MissingMomentum.hh:60
const FourMomentum visibleMomentum(double mass=0 *GeV) const
The vector-summed visible four-momentum in the event.
MissingMomentum(const Cut &c=Cuts::open())
Default constructor with optional cut.
Definition MissingMomentum.hh:35
double scalarSumEt() const
The scalar-summed visible transverse energy in the event.
Definition MissingMomentum.hh:121
const PROJ & declare(const PROJ &proj, const std::string &name) const
Register a contained projection (user-facing version).
Definition ProjectionApplier.hh:205
Base class for all Rivet projections.
Definition Projection.hh:29
void setName(const std::string &name)
Used by derived classes to set their name.
Definition Projection.hh:146
Specialized version of the ThreeVector with momentum functionality.
Definition Vector3.hh:377
Three-dimensional specialisation of Vector.
Definition Vector3.hh:39
Final state modifier excluding particles which are not experimentally visible.
Definition VisibleFinalState.hh:16
double mass(const FourMomentum &a, const FourMomentum &b)
Calculate mass of two 4-vectors.
Definition Vector4.hh:1474
double p(const ParticleBase &p)
Unbound function access to p.
Definition ParticleBaseUtils.hh:819
const Cut & open()
Fully open cut singleton, accepts everything.
Definition LHCbCommon.hh:9
MissingMomentum MissingMom
A slightly more convenient name, following other Rivet shortening-conventions.
Definition MissingMomentum.hh:156