Rivet is hosted by Hepforge, IPPP Durham

## Rivet analyses reference

### CDF_2009_S8233977

CDF Run 2 min bias cross-section analysis
Experiment: CDF (Tevatron Run 2)
Inspire ID: 817466
Status: VALIDATED
Authors:
• Hendrik Hoeth
• Niccolo' Moggi
References:
Beams: p- p+
Beam energies: (980.0, 980.0) GeV
Run details:
• $p\bar{p}$ QCD interactions at 1960 GeV. Particles with $c \tau > 10$ mm should be set stable.

Niccolo Moggi's min bias analysis. Minimum bias events are used to measure the average track pT vs. charged multiplicity, a track pT distribution and an inclusive $\sum E_T$ distribution.

Source code: CDF_2009_S8233977.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 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 // -*- C++ -*- #include "Rivet/Analysis.hh" #include "Rivet/Projections/FinalState.hh" #include "Rivet/Projections/ChargedFinalState.hh" #include "Rivet/Projections/TriggerCDFRun2.hh" namespace Rivet { /// @brief CDF Run II min-bias cross-section /// @author Hendrik Hoeth /// /// Measurement of \f$\langle p_T \rangle \f$ vs. \f$n_\text{ch} \f$, /// the track \f$p_T \f$ distribution, and the \f$\sum E_T \f$ distribution. /// Particles are selected within |eta|<1 and with pT>0.4 GeV. /// There is no pT cut for the \f$\sum E_T \f$ measurement. /// /// @par Run conditions /// /// @arg \f$\sqrt{s} = \f$ 1960 GeV /// @arg Run with generic QCD events. /// @arg Set particles with c*tau > 10 mm stable class CDF_2009_S8233977 : public Analysis { public: /// Constructor CDF_2009_S8233977() : Analysis("CDF_2009_S8233977"), _sumWeightSelected(0.0) { } /// @name Analysis methods //@{ /// Book histograms and projections void init() { declare(TriggerCDFRun2(), "Trigger"); declare(FinalState(-1.0, 1.0, 0.0*GeV), "EtFS"); declare(ChargedFinalState(-1.0, 1.0, 0.4*GeV), "CFS"); _hist_pt = bookHisto1D(1, 1, 1); _hist_pt_vs_multiplicity = bookProfile1D(2, 1, 1); _hist_sumEt = bookHisto1D(3, 1, 1); } /// Do the analysis void analyze(const Event& evt) { // MinBias Trigger const bool trigger = apply(evt, "Trigger").minBiasDecision(); if (!trigger) vetoEvent; // Get the event weight const double weight = evt.weight(); /// @todo The pT and sum(ET) distributions look slightly different from /// Niccolo's Monte Carlo plots. Still waiting for his answer. const ChargedFinalState& trackfs = apply(evt, "CFS"); const size_t numParticles = trackfs.size(); foreach (const Particle& p, trackfs.particles()) { const double pT = p.pT() / GeV; _hist_pt_vs_multiplicity->fill(numParticles, pT, weight); // The weight for entries in the pT distribution should be weight/(pT*dPhi*dy). // // - dPhi = 2*PI // // - dy depends on the pT: They calculate y assuming the particle has the // pion mass and assuming that eta=1: // dy = 2 * 1/2 * ln [(sqrt(m^2 + (a+1)*pT^2) + a*pT) / (sqrt(m^2 + (a+1)*pT^2) - a*pT)] // with a = sinh(1). // // sinh(1) = 1.1752012 // m(charged pion)^2 = (139.57 MeV)^2 = 0.019479785 GeV^2 const double sinh1 = 1.1752012; const double apT = sinh1 * pT; const double mPi = 139.57*MeV; const double root = sqrt(mPi*mPi + (1+sinh1)*pT*pT); const double dy = std::log((root+apT)/(root-apT)); const double dphi = TWOPI; _hist_pt->fill(pT, weight/(pT*dphi*dy)); } // Calc sum(Et) from calo particles const FinalState& etfs = apply(evt, "EtFS"); double sumEt = 0.0; foreach (const Particle& p, etfs.particles()) { sumEt += p.Et(); } _hist_sumEt->fill(sumEt, weight); _sumWeightSelected += evt.weight(); } /// Normalize histos void finalize() { scale(_hist_sumEt, crossSection()/millibarn/(4*M_PI*_sumWeightSelected)); scale(_hist_pt, crossSection()/millibarn/_sumWeightSelected); MSG_DEBUG("sumOfWeights() = " << sumOfWeights()); MSG_DEBUG("_sumWeightSelected = " << _sumWeightSelected); } //@} private: double _sumWeightSelected; Profile1DPtr _hist_pt_vs_multiplicity; Histo1DPtr _hist_pt; Histo1DPtr _hist_sumEt; }; // The hook for the plugin system DECLARE_RIVET_PLUGIN(CDF_2009_S8233977); }