rivet is hosted by Hepforge, IPPP Durham

Rivet analyses reference

D0_2000_I535017

Transverse momentum of the W boson
Experiment: D0 (Tevatron Run 1)
Inspire ID: 535017
Status: VALIDATED
Authors:
  • Frank Siegert
References: Beams: p- p+
Beam energies: (900.0, 900.0) GeV
Run details:
  • Production of W+ and W- decaying into the electron channel.

Measurement of the differential cross section for W boson production as a function of its transverse momentum. The data were collected by the D0 experiment at the Fermilab Tevatron Collider during 1994-1995 and correspond to an integrated luminosity of 85 pb$^{-1}$.

Source code: D0_2000_I535017.cc
 1// -*- C++ -*-
 2#include "Rivet/Analysis.hh"
 3#include "Rivet/Projections/FinalState.hh"
 4#include "Rivet/Projections/MissingMomentum.hh"
 5#include "Rivet/Projections/LeptonFinder.hh"
 6
 7namespace Rivet {
 8
 9
10  /// D0 transverse momentum of the W boson
11  class D0_2000_I535017 : public Analysis {
12  public:
13
14    RIVET_DEFAULT_ANALYSIS_CTOR(D0_2000_I535017);
15
16
17    /// @name Analysis methods
18    /// @{
19
20    /// Book histograms and initialise projections before the run
21    void init() {
22      declare("MET", MissingMomentum());
23      LeptonFinder ef(0.2, Cuts::abseta < 5 && Cuts::abspid == PID::ELECTRON);
24      declare(ef, "Elecs");
25
26      book(_h_W_pT ,1, 1, 1);
27    }
28
29
30    /// Perform the per-event analysis
31    void analyze(const Event& event) {
32      const P4& pmiss = apply<MissingMom>(event, "MET").missingMom();
33      const Particles& es = apply<LeptonFinder>(event, "Elecs").particles();
34      const int ifound = closestMatchIndex(es, pmiss, Kin::mass, 80.4*GeV, 0*GeV, 200*GeV);
35
36      if (ifound < 0) vetoEvent;
37      _h_W_pT->fill((pmiss+es[ifound].mom()).pT()/GeV);
38    }
39
40
41    /// Normalise histograms etc., after the run
42    void finalize() {
43      scale(_h_W_pT, crossSection()/picobarn/sumOfWeights());
44    }
45
46    /// @}
47
48
49  private:
50
51    /// Histogram
52    Histo1DPtr _h_W_pT;
53
54  };
55
56
57  RIVET_DECLARE_ALIASED_PLUGIN(D0_2000_I535017, D0_2000_S4480767);
58
59}