rivet is hosted by Hepforge, IPPP Durham
CDF_2006_S6450792.cc
Go to the documentation of this file.
00001 // -*- C++ -*-
00002 #include "Rivet/Analysis.hh"
00003 #include "Rivet/Projections/FinalState.hh"
00004 #include "Rivet/Projections/FastJets.hh"
00005 
00006 namespace Rivet {
00007 
00008 
00009   /// @brief CDF Inclusive jet cross-section differential in \f$ p_\perp \f$
00010   class CDF_2006_S6450792 : public Analysis {
00011   public:
00012 
00013     /// Constructor
00014     CDF_2006_S6450792()
00015       : Analysis("CDF_2006_S6450792")
00016     {    }
00017 
00018 
00019     /// @name Analysis methods
00020     //@{
00021 
00022     void init() {
00023       FinalState fs;
00024       addProjection(FastJets(fs, FastJets::CDFMIDPOINT, 0.7), "ConeFinder");
00025 
00026       _h_jet_pt = bookHisto1D(1, 1, 1);
00027     }
00028 
00029 
00030     void analyze(const Event& event) {
00031       const Jets& jets = applyProjection<JetAlg>(event, "ConeFinder").jets(61.0*GeV);
00032       foreach (const Jet& jet, jets) {
00033         double y = fabs(jet.rapidity());
00034         if (inRange(y, 0.1, 0.7)) {
00035           _h_jet_pt->fill(jet.pT()/GeV, event.weight());
00036         }
00037       }
00038     }
00039 
00040 
00041     void finalize() {
00042       const double delta_y = 1.2;
00043       scale(_h_jet_pt, crossSection()/nanobarn/sumOfWeights()/delta_y);
00044     }
00045 
00046     //@}
00047 
00048 
00049   private:
00050 
00051     /// @name Histograms
00052     //@{
00053 
00054     Histo1DPtr _h_jet_pt;
00055     //@}
00056 
00057   };
00058 
00059 
00060 
00061   // The hook for the plugin system
00062   DECLARE_RIVET_PLUGIN(CDF_2006_S6450792);
00063 
00064 }