Rivet analyses referenceATLAS_2011_S8971293Dijet azimuthal decorrelationsExperiment: ATLAS (LHC) Inspire ID: 889546 Status: VALIDATED Authors:
Beam energies: (3500.0, 3500.0) GeV Run details:
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}
|