Rivet analyses referenceALICE_2010_S8625980Pseudorapidities at three energies, charged multiplicity at 7 TeVExperiment: ALICE (LHC) Inspire ID: 852264 Status: VALIDATED Authors:
Beam energies: (450.0, 450.0); (1180.0, 1180.0); (3500.0, 3500.0) GeV Run details:
This is an ALICE publication with pseudorapities for 0.9, 2.36 and $7 \text{TeV}$ and the charged multiplicity at $7 \text{TeV}$. The analysis requires at least on charged particle in the event. Only the INEL distributions are considered here Beam energy must be specified as analysis option "ENERGY" when rivet-merging samples. Source code: ALICE_2010_S8625980.cc 1// -*- C++ -*-
2#include "Rivet/Analysis.hh"
3#include "Rivet/Projections/ChargedFinalState.hh"
4
5namespace Rivet {
6
7
8 class ALICE_2010_S8625980 : public Analysis {
9 public:
10
11 /// Constructor
12 RIVET_DEFAULT_ANALYSIS_CTOR(ALICE_2010_S8625980);
13
14
15 /// @name Analysis methods
16 /// @{
17
18 /// Book histograms and initialise projections before the run
19 void init() {
20
21 ChargedFinalState cfs((Cuts::etaIn(-1.0, 1.0)));
22 declare(cfs, "CFS");
23
24 if (isCompatibleWithSqrtS(900)) {
25 book(_h_dN_deta ,4, 1, 1);
26 } else if (isCompatibleWithSqrtS(2360)) {
27 book(_h_dN_deta ,5, 1, 1);
28 } else if (isCompatibleWithSqrtS(7000)) {
29 book(_h_dN_deta ,6, 1, 1);
30 book(_h_dN_dNch ,3, 1, 1);
31 }
32 book(_Nevt_after_cuts, "Nevt_after_cuts");
33
34 }
35
36
37 /// Perform the per-event analysis
38 void analyze(const Event& event) {
39 const ChargedFinalState& charged = apply<ChargedFinalState>(event, "CFS");
40 if (charged.size() < 1) {
41 vetoEvent;
42 }
43 _Nevt_after_cuts->fill();
44
45
46 for (const Particle& p : charged.particles()) {
47 const double eta = p.eta();
48 _h_dN_deta->fill(eta);
49 }
50
51 if (isCompatibleWithSqrtS(7000)) {
52 _h_dN_dNch->fill(charged.size());
53 }
54 }
55
56
57 /// Normalise histograms etc., after the run
58 void finalize() {
59
60 if (isCompatibleWithSqrtS(7000)) {
61 normalize(_h_dN_dNch);
62 }
63 scale(_h_dN_deta, 1.0/ *_Nevt_after_cuts);
64
65 }
66
67 /// @}
68
69
70 private:
71
72 /// @name Histograms
73 /// @{
74 Histo1DPtr _h_dN_deta;
75 Histo1DPtr _h_dN_dNch;
76 CounterPtr _Nevt_after_cuts;
77 /// @}
78
79 };
80
81
82
83 RIVET_DECLARE_ALIASED_PLUGIN(ALICE_2010_S8625980, ALICE_2010_I852264);
84
85}
|