rivet is hosted by Hepforge, IPPP Durham

Rivet analyses reference

ATLAS_2011_S8971293

Dijet azimuthal decorrelations
Experiment: ATLAS (LHC)
Inspire ID: 889546
Status: VALIDATED
Authors:
  • Frank Siegert
References: Beams: p+ p+
Beam energies: (3500.0, 3500.0) GeV
Run details:
  • pp QCD interactions at 7000 GeV. The distributions are binned in leading pT starting at 110 GeV with the last bin starting at 800 GeV.

Dijet azimuthal decorrelation measured by ATLAS at 7 TeV. Jets are anti-$k_t$ with $R = 0.6$, $p_\perp > 100$ GeV, $|\eta| < 0.8$. The analysis is binned in leading jet $p_\perp$ bins. All data is fully corrected for detector effects.

Source code: ATLAS_2011_S8971293.cc
 1// -*- C++ -*-
 2#include "Rivet/Analysis.hh"
 3#include "Rivet/Tools/BinnedHistogram.hh"
 4#include "Rivet/Projections/FinalState.hh"
 5#include "Rivet/Projections/FastJets.hh"
 6
 7namespace Rivet {
 8
 9
10  class ATLAS_2011_S8971293 : public Analysis {
11  public:
12
13    /// Constructor
14    RIVET_DEFAULT_ANALYSIS_CTOR(ATLAS_2011_S8971293);
15
16
17    /// @name Analysis methods
18    //@{
19
20    /// Book histograms and initialise projections before the run
21    void init() {
22      /// Initialise and register projections
23      declare(FastJets(FinalState(), FastJets::ANTIKT, 0.6), "AntiKtJets06");
24
25      /// Book histograms
26      /// @todo Provide a nicer way!
27      {Histo1DPtr tmp; _h_deltaPhi.add(110., 160., book(tmp, 1, 1, 1));}
28      {Histo1DPtr tmp; _h_deltaPhi.add(160., 210., book(tmp, 1, 1, 2));}
29      {Histo1DPtr tmp; _h_deltaPhi.add(210., 260., book(tmp, 1, 1, 3));}
30      {Histo1DPtr tmp; _h_deltaPhi.add(260., 310., book(tmp, 1, 1, 4));}
31      {Histo1DPtr tmp; _h_deltaPhi.add(310., 400., book(tmp, 1, 1, 5));}
32      {Histo1DPtr tmp; _h_deltaPhi.add(400., 500., book(tmp, 1, 1, 6));}
33      {Histo1DPtr tmp; _h_deltaPhi.add(500., 600., book(tmp, 1, 1, 7));}
34      {Histo1DPtr tmp; _h_deltaPhi.add(600., 800., book(tmp, 1, 1, 8));}
35      {Histo1DPtr tmp; _h_deltaPhi.add(800.,10000.,book(tmp, 1, 1, 9));}
36    }
37
38
39    /// Perform the per-event analysis
40    void analyze(const Event& event) {
41      const double weight = 1.0;
42
43      Jets jets06;
44      for (const Jet& jet : apply<FastJets>(event, "AntiKtJets06").jetsByPt(100.0*GeV)) {
45        if (jet.absrap() < 2.8) {
46          jets06.push_back(jet);
47        }
48      }
49      if (jets06.size()>1){
50        if (fabs(jets06[0].rapidity())<0.8 && fabs(jets06[1].rapidity())<0.8) {
51          double observable = mapAngle0ToPi(jets06[0].phi()-jets06[1].phi()) / M_PI;
52          _h_deltaPhi.fill(jets06[0].pT(), observable, weight);
53        }
54      }
55    }
56
57
58    /// Normalise histograms etc., after the run
59    void finalize() {
60      for (Histo1DPtr hist : _h_deltaPhi.histos()) {
61        normalize(hist, 1/M_PI);
62      }
63    }
64
65    /// @}
66
67
68  private:
69
70    /// Histograms
71    BinnedHistogram _h_deltaPhi;
72
73  };
74
75
76
77  RIVET_DECLARE_ALIASED_PLUGIN(ATLAS_2011_S8971293, ATLAS_2011_I889546);
78
79}