Rivet analyses referenceCDF_2002_I567774CDF Run 1 charged multiplicity measurementExperiment: CDF (Tevatron Run 1) Inspire ID: 567774 Status: VALIDATED Authors:
Beam energies: (315.0, 315.0); (900.0, 900.0) GeV Run details:
A study of $p\bar{p}$ collisions at $\sqrt{s} = 1800$ and 630 GeV collected using a minimum bias trigger in which the data set is divided into two classes corresponding to `soft' and `hard' interactions. For each subsample, the analysis includes measurements of the multiplicity, transverse momentum (pT) spectra, and the average pT and event-by-event pT dispersion as a function of multiplicity. A comparison of results shows distinct differences in the behavior of the two samples as a function of the center of mass energy. The properties of the soft sample are invariant as a function of c.m. energy. It should be noticed that minimum bias tunings of PYTHIA made by ATLAS in early 2010, which used this among all other available data from CDF and from ATLAS at 900 GeV and 7 TeV, found an unavoidable tension between this data and the rest. Accordingly, this data was excluded from the fits. Whether this reflects a problem with this dataset or with the PYTHIA MPI model is a judgement for users to make! Beam energy must be specified (in GeV) as analysis option "ENERGY" when rivet-merging samples. Source code: CDF_2002_I567774.cc 1// -*- C++ -*-
2#include "Rivet/Analysis.hh"
3#include "Rivet/Projections/Beam.hh"
4#include "Rivet/Projections/ChargedFinalState.hh"
5#include "Rivet/Projections/TriggerCDFRun0Run1.hh"
6
7namespace Rivet {
8
9
10 /// @brief CDF Run I charged multiplicity measurement
11 ///
12 /// @author Hendrik Hoeth
13 ///
14 /// This analysis measures the charged multiplicity distribution
15 /// in minimum bias events at two different center-of-mass energies:
16 /// \f$ \sqrt{s} = \f$ 630 and 1800 GeV.
17 ///
18 /// Particles with c*tau > 10 mm are considered stable, i.e. they
19 /// are reconstructed and their decay products removed. Selection
20 /// cuts are |eta|<1 and pT>0.4 GeV.
21 ///
22 /// @par Run conditions
23 ///
24 /// @arg Two different beam energies: \f$ \sqrt{s} = \$f 630 & 1800 GeV
25 /// @arg Run with generic QCD events.
26 /// @arg Set particles with c*tau > 10 mm stable
27 class CDF_2002_I567774 : public Analysis {
28 public:
29
30 RIVET_DEFAULT_ANALYSIS_CTOR(CDF_2002_I567774);
31
32
33 /// @name Analysis methods
34 /// @{
35
36 /// Book projections and histograms
37 void init() {
38 declare(TriggerCDFRun0Run1(), "Trigger");
39 const ChargedFinalState cfs(Cuts::abseta < 1.0 && Cuts::pT >= 0.4*GeV);
40 declare(cfs, "FS");
41
42 // Histos
43 if (isCompatibleWithSqrtS(630*GeV)) {
44 book(_hist_multiplicity ,1, 1, 1);
45 book(_hist_pt_vs_multiplicity ,3, 1, 1);
46 } else if (isCompatibleWithSqrtS(1800*GeV)) {
47 book(_hist_multiplicity ,2, 1, 1);
48 book(_hist_pt_vs_multiplicity ,4, 1, 1);
49 }
50 book(_sumWTrig, "sumWTrig");
51
52 }
53
54
55 /// Do the analysis
56 void analyze(const Event& evt) {
57 // Trigger
58 const bool trigger = apply<TriggerCDFRun0Run1>(evt, "Trigger").minBiasDecision();
59 if (!trigger) vetoEvent;
60 _sumWTrig->fill();
61
62 // Get beam energy and tracks
63 const ChargedFinalState& fs = apply<ChargedFinalState>(evt, "FS");
64 const size_t numParticles = fs.particles().size();
65
66 // Fill histos of charged multiplicity distributions
67 _hist_multiplicity->fill(numParticles);
68
69 // Fill histos for <pT> vs. charged multiplicity
70 for (const Particle& p : fs.particles()) {
71 const double pT = p.pT();
72 _hist_pt_vs_multiplicity->fill(numParticles, pT/GeV);
73 }
74
75 }
76
77
78 void finalize() {
79 // This normalisation is NOT a cross-section.
80 // In the paper the x-axes (!) of the histograms are
81 // scaled such that they can put both energies in the
82 // same plot. Of course this affects the area, too.
83 // Since we want to plot the actual multiplicity, we
84 // scale the x-axes back and have to adjust the areas
85 // accordingly. The scale factors are given in the
86 // legend of the plot in the paper. Have a look at
87 // figure 1 and everything immediately becomes clear.
88 // DON'T TRY TO REPAIR THIS, YOU WILL BREAK IT.
89 if (isCompatibleWithSqrtS(630*GeV)) {
90 normalize(_hist_multiplicity, 3.21167); // fixed norm OK
91 } else if (isCompatibleWithSqrtS(1800*GeV)) {
92 normalize(_hist_multiplicity, 4.19121); // fixed norm OK
93 }
94 }
95
96 /// @}
97
98
99 private:
100
101 /// Counter
102 CounterPtr _sumWTrig;
103
104 /// @name Histos
105 /// @{
106 Histo1DPtr _hist_multiplicity;
107 Profile1DPtr _hist_pt_vs_multiplicity;
108 /// @}
109
110 };
111
112
113
114 RIVET_DECLARE_ALIASED_PLUGIN(CDF_2002_I567774, CDF_2002_S4796047);
115
116}
|