rivet is hosted by Hepforge, IPPP Durham

## Rivet analyses reference

### CDF_2012_NOTE10874

CDF energy scan underlying event analysis
Experiment: CDF (Tevatron energy scan)
Status: VALIDATED
Authors:
• Rick Field
References:
• CDF Note 10874
Beams: p- p+
Beam energies: (150.0, 150.0); (450.0, 450.0); (980.0, 980.0) GeV
Run details:
• $p\bar{p}$ QCD interactions at 300, 900, and 1960 GeV. Particles with $c \tau > {}$10 mm should be set stable.

In this analysis the behavior of the underlying event in hard scattering proton-antiproton collisions at 300 GeV, 900 GeV, and 1.96 TeV is studied. The 300 GeV and 900 GeV data are a result of the Tevatron Energy Scan which was performed just before the Tevatron was shut down. The energy ratio histograms can be created from different runs with a merging script available in the Rivet bin directory.

Source code: CDF_2012_NOTE10874.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 // -*- C++ -*- #include "Rivet/Analysis.hh" #include "Rivet/Projections/ChargedFinalState.hh" namespace Rivet { class CDF_2012_NOTE10874 : public Analysis { public: CDF_2012_NOTE10874() : Analysis("CDF_2012_NOTE10874") {} public: void init() { const ChargedFinalState cfs((Cuts::etaIn(-1.0, 1.0) && Cuts::pT >= 0.5*GeV)); declare(cfs, "CFS"); int isqrts = -1; if (fuzzyEquals(sqrtS(), 300*GeV)) isqrts = 1; else if (fuzzyEquals(sqrtS(), 900*GeV)) isqrts = 2; else if (fuzzyEquals(sqrtS(), 1960*GeV)) isqrts = 3; assert(isqrts >= 0); book(_h_nch_transverse ,1,1,isqrts); book(_h_ptSumDen ,2,1,isqrts); book(_h_avePt ,3,1,isqrts); } // Little helper function to identify Delta(phi) regions inline int region_index(double dphi) { assert(inRange(dphi, 0.0, PI, CLOSED, CLOSED)); if (dphi < PI/3.0) return 0; if (dphi < 2*PI/3.0) return 1; return 2; } void analyze(const Event& event) { const ChargedFinalState& cfs = apply(event, "CFS"); if (cfs.size() < 1) { vetoEvent; } Particles particles = cfs.particlesByPt(); Particle p_lead = particles[0]; const double philead = p_lead.phi(); const double pTlead = p_lead.pT(); int tNch = 0; double ptSum = 0.0; for (const Particle& p : particles) { const double pT = p.pT(); const double dPhi = deltaPhi(philead, p.phi()); const int ir = region_index(dPhi); if (ir==1) { tNch++; ptSum += pT; } } const double dEtadPhi = 4.0*PI/3.0; _h_nch_transverse->fill(pTlead/GeV, tNch/dEtadPhi); _h_ptSumDen->fill(pTlead/GeV, ptSum/dEtadPhi); if (tNch > 0) { _h_avePt->fill(pTlead/GeV, ptSum/tNch); } } void finalize() { } private: Profile1DPtr _h_nch_transverse, _h_ptSumDen, _h_avePt; }; // The hook for the plugin system DECLARE_RIVET_PLUGIN(CDF_2012_NOTE10874); }