Rivet is hosted by Hepforge, IPPP Durham

Rivet analyses reference

ATLAS_2016_I1468168

Dileptonic $e \mu$ $t\bar{t}$ early cross-section measurement at 13 TeV
Experiment: ATLAS (LHC)
Inspire ID: 1468168
Status: VALIDATED
Authors:
  • Tom Neep
  • Barbara Alvarez Gonzalez
  • Yang Qin
References: Beams: p+ p+
Beam energies: (6500.0, 6500.0) GeV
Run details:
  • $t\bar{t}$ production

This paper describes a measurement of the inclusive top quark pair production cross-section ($\sigma_{t\bar{t}}$) with a data sample of 3.2 fb${}^{-1}$ of proton-proton collisions at a centre-of-mass energy of $\sqrt{s}=13$ TeV, collected in 2015 by the ATLAS detector at the LHC. This measurement uses events with an opposite-charge electron-muon pair in the final state. Jets containing $b$-quarks are tagged using an algorithm based on track impact parameters and reconstructed secondary vertices. The numbers of events with exactly one and exactly two $b$-tagged jets are counted and used to determine simultaneously $\sigma_{t\bar{t}}$ and the efficiency to reconstruct and $b$-tag a jet from a top quark decay, thereby minimising the associated systematic uncertainties. The cross-section is measured to be: $\sigma_{t\bar{t}} = 818 \pm 8$ (stat) $\pm 27$ (syst) $\pm 19$ (lumi) $\pm 12$ (beam) pb, where the four uncertainties arise from data statistics, experimental and theoretical systematic effects, the integrated luminosity and the LHC beam energy, giving a total relative uncertainty of 4.4\%. The result is consistent with theoretical QCD calculations at next-to-next-to-leading order. A fiducial measurement corresponding to the experimental acceptance of the leptons is also presented.

Source code: ATLAS_2016_I1468168.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
#include "Rivet/Analysis.hh"
#include "Rivet/Projections/FinalState.hh"
#include "Rivet/Projections/IdentifiedFinalState.hh"
#include "Rivet/Projections/PromptFinalState.hh"
#include "Rivet/Projections/DressedLeptons.hh"

namespace Rivet {


  class ATLAS_2016_I1468168 : public Analysis {
  public:

    DEFAULT_RIVET_ANALYSIS_CTOR(ATLAS_2016_I1468168);

    void init() {
      // Eta ranges
      Cut eta_full = Cuts::abseta < 5.0 && Cuts::pT >= 1.0*MeV;
      // Lepton cuts
      Cut lep_cuts = Cuts::abseta < 2.5 && Cuts::pT >= 25.0*GeV;

      // All final state particles
      FinalState fs(eta_full);

      // Get photons to dress leptons
      IdentifiedFinalState photons(fs);
      photons.acceptIdPair(PID::PHOTON);

      // Projection to find the electrons
      IdentifiedFinalState el_id(fs);
      el_id.acceptIdPair(PID::ELECTRON);
      PromptFinalState electrons(el_id);
      electrons.acceptTauDecays(true);
      DressedLeptons dressedelectrons(photons, electrons, 0.1, lep_cuts, true);
      addProjection(dressedelectrons, "DressedElectrons");

      // Projection to find the muons
      IdentifiedFinalState mu_id(fs);
      mu_id.acceptIdPair(PID::MUON);
      PromptFinalState muons(mu_id);
      muons.acceptTauDecays(true);
      DressedLeptons dressedmuons(photons, muons, 0.1, lep_cuts, true);
      addProjection(dressedmuons, "DressedMuons");

      /// @todo Make this a counter or Scatter1D?
      _hist = bookHisto1D("Passed_events", 1, 0, 1);
    }


    void analyze(const Event& event) {

      // Get the selected objects, using the projections.
      const size_t num_es = applyProjection<DressedLeptons>(event, "DressedElectrons").dressedLeptons().size();
      const size_t num_mus = applyProjection<DressedLeptons>(event, "DressedMuons").dressedLeptons().size();

      // Evaluate basic event selection
      const bool pass_emu = num_es == 1 && num_mus == 1;
      if (!pass_emu) vetoEvent;

      // Fill histogram to measure the event acceptance
      _hist->fill(0.5, event.weight());
    }


    void finalize() {
      // Normalize to cross-section
      const double sf(crossSection() / sumOfWeights());
      scale(_hist, sf);
    }


   private:

    Histo1DPtr _hist;

  };


  // The hook for the plugin system
  DECLARE_RIVET_PLUGIN(ATLAS_2016_I1468168);

}