Rivet  1.8.3
MC_JetAnalysis.hh
1 // -*- C++ -*-
2 #ifndef RIVET_MC_JetAnalysis_HH
3 #define RIVET_MC_JetAnalysis_HH
4 
5 #include "Rivet/Analysis.hh"
6 #include "Rivet/Projections/FinalState.hh"
7 #include "LWH/Histogram1D.h"
8 
9 namespace Rivet {
10 
11 
13  class MC_JetAnalysis : public Analysis {
14  public:
15 
17  MC_JetAnalysis(const string& name,
18  size_t njet,
19  const string& jetpro_name,
20  double jetptcut=20*GeV);
21 
22 
24 
25  virtual void init();
26  virtual void analyze(const Event& event);
27  virtual void finalize();
29 
30 
31  protected:
32 
34  size_t m_njet;
35 
38  const std::string m_jetpro_name;
39 
41  double m_jetptcut;
42 
44 
46 
47  std::vector<AIDA::IHistogram1D *> _h_pT_jet;
48  std::vector<AIDA::IHistogram1D *> _h_eta_jet;
49  std::vector<shared_ptr<LWH::Histogram1D> > _h_eta_jet_plus, _h_eta_jet_minus;
50  std::vector<AIDA::IHistogram1D *> _h_rap_jet;
51  std::vector<shared_ptr<LWH::Histogram1D> > _h_rap_jet_plus, _h_rap_jet_minus;
52  std::vector<AIDA::IHistogram1D *> _h_mass_jet;
53  std::map<std::pair<size_t, size_t>, AIDA::IHistogram1D*> _h_deta_jets;
54  std::map<std::pair<size_t, size_t>, AIDA::IHistogram1D*> _h_dphi_jets;
55  std::map<std::pair<size_t, size_t>, AIDA::IHistogram1D*> _h_dR_jets;
56  AIDA::IHistogram1D * _h_jet_multi_exclusive;
57  AIDA::IHistogram1D * _h_jet_multi_inclusive;
58  AIDA::IDataPointSet * _h_jet_multi_ratio;
59  AIDA::IHistogram1D * _h_jet_HT;
61 
62  };
63 
64 }
65 
66 #endif