rivet is hosted by Hepforge, IPPP Durham

Rivet analyses reference

D0_2007_I744624

$Z/\gamma^* + X$ cross-section shape, differential in $y(Z)$
Experiment: D0 (Tevatron Run 2)
Inspire ID: 744624
Status: VALIDATED
Authors:
  • Andy Buckley
  • Gavin Hesketh
  • Frank Siegert
References: Beams: p- p+
Beam energies: (980.0, 980.0) GeV
Run details:
  • Drell-Yan $p \bar{p} \to Z/\gamma^*$ + jets events at $\sqrt{s}$ = 1960 GeV. Needs mass cut on lepton pair to avoid photon singularity, looser than $71 < m_{ee} < 111$ GeV

Cross sections as a function of di-electron rapidity $p \bar{p}$ collisions at $\sqrt{s}$ = 1.96 TeV, based on an integrated luminosity of $0.4 \text{fb}^{-1}$.

Source code: D0_2007_I744624.cc
 1// -*- C++ -*-
 2#include "Rivet/Analysis.hh"
 3#include "Rivet/Projections/DileptonFinder.hh"
 4
 5namespace Rivet {
 6
 7
 8  /// @brief Measurement of D0 Run II Z \f$ p_\perp \f$ diff cross-section shape
 9  ///
10  /// @author Andy Buckley
11  /// @author Gavin Hesketh
12  /// @author Frank Siegert
13  class D0_2007_I744624 : public Analysis {
14  public:
15
16    RIVET_DEFAULT_ANALYSIS_CTOR(D0_2007_I744624);
17
18
19    /// @name Analysis methods
20    /// @{
21
22    /// Book histograms
23    void init() {
24      DileptonFinder zfinder(91.2*GeV, 0.2, Cuts::abspid == PID::ELECTRON, Cuts::massIn(71*GeV, 111*GeV));
25      declare(zfinder, "DileptonFinder");
26
27      book(_h_yZ ,1, 1, 1);
28    }
29
30
31    /// Do the analysis
32    void analyze(const Event & e) {
33      const DileptonFinder& zfinder = apply<DileptonFinder>(e, "DileptonFinder");
34      if (zfinder.bosons().size() == 1) {
35        const Particles& el(zfinder.constituents());
36        if (el[0].pT() > 25*GeV || el[1].pT() > 25*GeV) {
37          _h_yZ->fill(fabs(zfinder.bosons()[0].rapidity()));
38        }
39      } else {
40        MSG_DEBUG("No unique lepton pair found.");
41      }
42    }
43
44
45    // Finalize
46    void finalize() {
47      // Data seems to have been normalized for the avg of the two sides
48      // (+ve & -ve rapidity) rather than the sum, hence the 0.5:
49      normalize(_h_yZ, 0.5);
50    }
51
52    /// @}
53
54
55  private:
56
57    /// @name Histograms
58    /// @{
59    Histo1DPtr _h_yZ;
60    /// @}
61
62  };
63
64
65
66  RIVET_DECLARE_ALIASED_PLUGIN(D0_2007_I744624, D0_2007_S7075677);
67
68}