rivet is hosted by Hepforge, IPPP Durham

Rivet analyses reference

CDF_1996_S3418421

Dijet angular distributions
Experiment: CDF (Tevatron Run 1)
Inspire ID: 423414
Status: VALIDATED
Authors:
  • Frank Siegert
References: Beams: p- p+
Beam energies: (900.0, 900.0) GeV
Run details:
  • QCD dijet events at Tevatron $\sqrt{s}=1.8$ TeV without MPI.

Measurement of jet angular distributions in events with two jets in the final state in 5 bins of dijet invariant mass. Based on $106 \mathrm{pb}^{-1}$

Source code: CDF_1996_S3418421.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  /// @brief CDF dijet angular distributions
11  class CDF_1996_S3418421 : public Analysis {
12  public:
13
14    RIVET_DEFAULT_ANALYSIS_CTOR(CDF_1996_S3418421);
15
16
17    /// @name Analysis methods
18    //@{
19
20    /// Book histograms and initialise projections before the run
21    void init() {
22      FinalState fs(Cuts::abseta < 4.2);
23      declare(FastJets(fs, FastJets::CDFJETCLU, 0.7), "Jets");
24
25      {Histo1DPtr tmp; _h_chi.add(241.0, 300.0, book(tmp, 1, 1, 1));}
26      {Histo1DPtr tmp; _h_chi.add(300.0, 400.0, book(tmp, 1, 1, 2));}
27      {Histo1DPtr tmp; _h_chi.add(400.0, 517.0, book(tmp, 1, 1, 3));}
28      {Histo1DPtr tmp; _h_chi.add(517.0, 625.0, book(tmp, 1, 1, 4));}
29      {Histo1DPtr tmp; _h_chi.add(625.0,1800.0, book(tmp, 1, 1, 5));}
30      book(_h_ratio,  2, 1, 1);
31      book(_htmp_chi_above_25 ,"TMP/chiabove25", refData(2, 1, 1));
32      book(_htmp_chi_below_25 ,"TMP/chibelow25", refData(2, 1, 1));
33    }
34
35
36    /// Perform the per-event analysis
37    void analyze(const Event& event) {
38      const double weight = 1.0;
39
40      Jets jets = apply<FastJets>(event, "Jets").jetsByPt(50.0*GeV);
41      if (jets.size() < 2) vetoEvent;
42
43      const FourMomentum jet1 = jets[0].momentum();
44      const FourMomentum jet2 = jets[1].momentum();
45      const double eta1 = jet1.eta();
46      const double eta2 = jet2.eta();
47      const double chi = exp(fabs(eta1 - eta2));
48      if (fabs(eta2) > 2.0 || fabs(eta1) > 2.0 || chi > 5.0) vetoEvent;
49
50      double m = FourMomentum(jet1 + jet2).mass();
51      _h_chi.fill(m, chi, weight);
52
53      // Fill ratio numerator or denominator depending on chi value
54      ((chi > 2.5) ? _htmp_chi_above_25 : _htmp_chi_below_25)->fill(m/GeV, weight);
55    }
56
57
58    /// Normalise histograms etc., after the run
59    void finalize() {
60      for (Histo1DPtr hist : _h_chi.histos()) {
61        normalize(hist);
62      }
63      divide(_htmp_chi_below_25, _htmp_chi_above_25, _h_ratio);
64    }
65
66    //@}
67
68
69  private:
70
71    /// @name Histograms
72    //@{
73    BinnedHistogram _h_chi;
74    Histo1DPtr _htmp_chi_above_25, _htmp_chi_below_25;
75    Scatter2DPtr _h_ratio;
76    //@}
77
78  };
79
80
81
82  RIVET_DECLARE_ALIASED_PLUGIN(CDF_1996_S3418421, CDF_1996_I423414);
83
84}