Rivet is hosted by Hepforge, IPPP Durham

## Rivet analyses reference

### CMS_2015_I1384119

Pseudorapidity distribution of charged hadrons in proton--proton collisions at $\sqrt{s} = 13$ TeV
Experiment: CMS (LHC)
Inspire ID: 1384119
Status: VALIDATED
Authors:
• Hannes Jung
References: Beams: p+ p+
Beam energies: (6500.0, 6500.0) GeV
Run details:
• $\sqrt{s}=13$ TeV, $pp$ inelastic events, no $p_T$ cut on partons

The pseudorapidity distribution of charged hadrons in $pp$ collisions at $\sqrt{s} =13$ TeV is measured using a data sample obtained with the CMS detector, operated at zero magnetic field, at the CERN LHC. The yield of primary charged long-lived hadrons produced in inelastic $pp$ collisions is determined in the central region of the CMS pixel detector ($|eta| < 2$) using both hit pairs and reconstructed tracks.

Source code: CMS_2015_I1384119.cc
  1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 // -*- C++ -*- #include "Rivet/Analysis.hh" #include "Rivet/Projections/ChargedFinalState.hh" #include "Rivet/Projections/FinalState.hh" namespace Rivet { class CMS_2015_I1384119 : public Analysis { public: /// Constructor DEFAULT_RIVET_ANALYSIS_CTOR(CMS_2015_I1384119); /// Book histograms and initialise projections before the run void init() { const FinalState fsa(Cuts::abseta < 20); declare(fsa, "FSA"); const ChargedFinalState cfs(Cuts::abseta < 2); declare(cfs, "CFS"); _hist_dNch_dEta_inel = bookHisto1D(1, 1, 1); } /// Perform the per-event analysis void analyze(const Event& event) { // Apply inelastic selection (veto pp -> pp elastic events) const FinalState& fsa = apply(event, "FSA"); if (fsa.size() <= 2) vetoEvent; const ChargedFinalState& cfs = apply(event, "CFS"); foreach (const Particle& p, cfs.particles()) { const int id = p.abspid(); // continue if particle is a proton, a kaon or a pion if (id == 211 || id == 321 || id == 2212) ///< @todo Use PID:: ID constants _hist_dNch_dEta_inel->fill(p.eta(), event.weight()); } } /// Normalise histograms etc., after the run void finalize() { scale(_hist_dNch_dEta_inel, 1/sumOfWeights()); } private: /// Histograms Histo1DPtr _hist_dNch_dEta_inel; }; // The hook for the plugin system DECLARE_RIVET_PLUGIN(CMS_2015_I1384119); }