Rivet  3.1.4
METFinder.hh
1 // -*- C++ -*-
2 #ifndef RIVET_METFinder_HH
3 #define RIVET_METFinder_HH
4 
5 #include "Rivet/Projection.hh"
6 
7 namespace Rivet {
8 
9 
11  class METFinder : public Projection {
12  public:
13 
18 
23  virtual const Vector3& vectorPt() const = 0;
24 
26  const Vector3 vectorMissingPt() const { return -vectorPt(); }
27  // Alias
28  const Vector3 vectorMPT() const { return vectorMissingPt(); }
29 
31  double missingPt() const { return vectorPt().mod(); }
32 
34 
35 
40 
44  virtual const Vector3& vectorEt() const = 0;
45 
47  const Vector3 vectorMissingEt() const { return -vectorEt(); }
48  // Alias
49  const Vector3 vectorMET() const { return vectorMissingEt(); }
50 
52  double missingEt() const { return vectorEt().mod(); }
54  double met() const { return missingEt(); }
55 
57 
58 
60  virtual void reset() { }
61 
62  };
63 
64 
65 }
66 
67 #endif
Definition: MC_Cent_pPb.hh:10
double met() const
Alias for missingEt.
Definition: METFinder.hh:54
double missingEt() const
The vector-summed missing transverse energy in the event.
Definition: METFinder.hh:52
double missingPt() const
The vector-summed missing transverse momentum in the event.
Definition: METFinder.hh:31
const Vector3 vectorMissingPt() const
Convenience vector MPT function.
Definition: METFinder.hh:26
virtual const Vector3 & vectorEt() const =0
Interface for projections that find missing transverse energy/momentum.
Definition: METFinder.hh:11
const Vector3 vectorMissingEt() const
Convenience vector MET function.
Definition: METFinder.hh:47
virtual const Vector3 & vectorPt() const =0
Base class for all Rivet projections.
Definition: Projection.hh:29
Three-dimensional specialisation of Vector.
Definition: Vector3.hh:26
double mod() const
Calculate the modulus of a vector. .
Definition: VectorN.hh:95
virtual void reset()
Reset the projection. Smearing functions will be unchanged.
Definition: METFinder.hh:60