Rivet analyses referenceTOPAZ_1997_I454183Measurement of charged particle multiplicity vs thrust at $E_{\text{CMS}}=57.8$ GeVExperiment: TOPAZ (Tristan) Inspire ID: 454183 Status: UNVALIDATED Authors:
Beam energies: (28.9, 28.9) GeV Run details:
Measurement of the charged particle multiplicity as a function of thrust at 57.8 GeV by the TOPAZ collaboration. Source code: TOPAZ_1997_I454183.cc 1// -*- C++ -*-
2#include "Rivet/Analysis.hh"
3#include "Rivet/Projections/ChargedFinalState.hh"
4#include "Rivet/Projections/Thrust.hh"
5
6namespace Rivet {
7
8
9 /// @brief N charged vs thrust
10 class TOPAZ_1997_I454183 : public Analysis {
11 public:
12
13 /// Constructor
14 RIVET_DEFAULT_ANALYSIS_CTOR(TOPAZ_1997_I454183);
15
16
17 /// @name Analysis methods
18 //@{
19
20 /// Book histograms and initialise projections before the run
21 void init() {
22
23 // Initialise and register projections
24 ChargedFinalState cfs;
25 declare(cfs , "CFS");
26 declare(Thrust(cfs), "Thrust");
27
28 // Book histograms
29 book(_p_charged ,3,1,1);
30 book(_c_ncharged,1,1,1);
31
32 }
33
34
35 /// Perform the per-event analysis
36 void analyze(const Event& event) {
37 // First, veto on leptonic events by requiring at least 5 charged FS particles
38 const ChargedFinalState& cfs = apply<ChargedFinalState>(event, "CFS");
39 const size_t numParticles = cfs.particles().size();
40 // Even if we only generate hadronic events, we still need a cut on numCharged >= 2.
41 if (numParticles < 5) {
42 MSG_DEBUG("Failed leptonic event cut");
43 vetoEvent;
44 }
45 MSG_DEBUG("Passed leptonic event cut");
46
47 // thrust
48 const Thrust& thrust = apply<Thrust>(event, "Thrust");
49 _c_ncharged->fill(cfs.particles().size());
50 _p_charged->fill(-log(1.-thrust.thrust()),cfs.particles().size());
51 }
52
53
54 /// Normalise histograms etc., after the run
55 void finalize() {
56 scale(_c_ncharged,1./sumOfWeights());
57 }
58
59 //@}
60
61
62 /// @name Histograms
63 //@{
64 Profile1DPtr _p_charged;
65 CounterPtr _c_ncharged;
66 //@}
67
68
69 };
70
71
72 // The hook for the plugin system
73 RIVET_DECLARE_PLUGIN(TOPAZ_1997_I454183);
74
75
76}
|