rivet is hosted by Hepforge, IPPP Durham

Rivet analyses reference

ATLAS_2010_I849050

Charged particles at 900 GeV in ATLAS
Experiment: ATLAS (LHC 900GeV)
Inspire ID: 849050
Status: VALIDATED
Authors:
  • Frank Siegert
References: Beams: p+ p+
Beam energies: (450.0, 450.0) GeV
Run details:
  • pp QCD interactions at 900 GeV including diffractive events.

The first measurements with the ATLAS detector at the LHC. Data were collected using a minimum-bias trigger in December 2009 during proton-proton collisions at a centre of mass energy of 900 GeV. The charged- particle density, its dependence on transverse momentum and pseudorapid- ity, and the relationship between transverse momentum and charged-particle multiplicity are measured for events with at least one charged particle in the kinematic range $|\eta| < 2.5$ and $p_\perp > 500$ MeV. All data is corrected to the particle level.

Source code: ATLAS_2010_I849050.cc
 1// -*- C++ -*-
 2#include "Rivet/Analysis.hh"
 3#include "Rivet/Projections/ChargedFinalState.hh"
 4
 5namespace Rivet {
 6
 7
 8  /// @brief ATLAS minimum bias analysis at 900 GeV
 9  /// @author Frank Siegert
10  class ATLAS_2010_I849050 : public Analysis {
11  public:
12
13    RIVET_DEFAULT_ANALYSIS_CTOR(ATLAS_2010_I849050);
14
15
16    void init() {
17      ChargedFinalState cfs((Cuts::etaIn(-2.5, 2.5) && Cuts::pT >=  0.5*GeV));
18      declare(cfs, "CFS");
19
20      book(_h_dNch_deta ,2, 1, 1);
21      book(_h_dNch_dpT ,3, 1, 1);
22      book(_h_dNevt_dNch ,4, 1, 1);
23      book(_p_meanpT_Nch ,5, 1, 1);
24
25      book(_Nevt_after_cuts, "nevt_pass");
26    }
27
28
29    void analyze(const Event& event) {
30      const ChargedFinalState& charged = apply<ChargedFinalState>(event, "CFS");
31      if (charged.size() < 1) {
32        vetoEvent;
33      }
34      _Nevt_after_cuts->fill();
35
36      _h_dNevt_dNch->fill(charged.size());
37      for (const Particle& p : charged.particles()) {
38        double pT = p.pT()/GeV;
39        _h_dNch_deta->fill(p.eta());
40        _h_dNch_dpT->fill(pT, 1.0/pT);
41        _p_meanpT_Nch->fill(charged.size(), pT);
42      }
43    }
44
45
46    void finalize() {
47      double deta = 5.0;
48      scale(_h_dNch_deta, 1.0/_Nevt_after_cuts->val());
49      scale(_h_dNch_dpT, 1.0/_Nevt_after_cuts->val()/TWOPI/deta);
50      scale(_h_dNevt_dNch, 1.0/_Nevt_after_cuts->val());
51    }
52
53
54  private:
55
56    Histo1DPtr _h_dNch_deta;
57    Histo1DPtr _h_dNch_dpT;
58    Histo1DPtr _h_dNevt_dNch;
59    Profile1DPtr  _p_meanpT_Nch;
60
61    CounterPtr _Nevt_after_cuts;
62
63  };
64
65
66  RIVET_DECLARE_ALIASED_PLUGIN(ATLAS_2010_I849050, ATLAS_2010_S8591806);
67
68}