Rivet
1.8.0
|
00001 // -*- C++ -*- 00002 #ifndef RIVET_MC_JetAnalysis_HH 00003 #define RIVET_MC_JetAnalysis_HH 00004 00005 #include "Rivet/Analysis.hh" 00006 #include "Rivet/Projections/FinalState.hh" 00007 #include "LWH/Histogram1D.h" 00008 00009 namespace Rivet { 00010 00011 00013 class MC_JetAnalysis : public Analysis { 00014 public: 00015 00017 MC_JetAnalysis(const string& name, 00018 size_t njet, 00019 const string& jetpro_name, 00020 double jetptcut=20*GeV); 00021 00022 00024 00025 virtual void init(); 00026 virtual void analyze(const Event& event); 00027 virtual void finalize(); 00029 00030 00031 protected: 00032 00034 size_t m_njet; 00035 00038 const std::string m_jetpro_name; 00039 00041 double m_jetptcut; 00042 00044 00046 00047 std::vector<AIDA::IHistogram1D *> _h_log10_d; 00048 std::vector<AIDA::IDataPointSet *> _h_log10_R; 00049 std::vector<AIDA::IHistogram1D *> _h_pT_jet; 00050 std::vector<AIDA::IHistogram1D *> _h_eta_jet; 00051 std::vector<shared_ptr<LWH::Histogram1D> > _h_eta_jet_plus, _h_eta_jet_minus; 00052 std::vector<AIDA::IHistogram1D *> _h_rap_jet; 00053 std::vector<shared_ptr<LWH::Histogram1D> > _h_rap_jet_plus, _h_rap_jet_minus; 00054 std::vector<AIDA::IHistogram1D *> _h_mass_jet; 00055 std::map<std::pair<size_t, size_t>, AIDA::IHistogram1D*> _h_deta_jets; 00056 std::map<std::pair<size_t, size_t>, AIDA::IHistogram1D*> _h_dphi_jets; 00057 std::map<std::pair<size_t, size_t>, AIDA::IHistogram1D*> _h_dR_jets; 00058 AIDA::IHistogram1D * _h_jet_multi_exclusive; 00059 AIDA::IHistogram1D * _h_jet_multi_inclusive; 00060 AIDA::IDataPointSet * _h_jet_multi_ratio; 00061 AIDA::IHistogram1D * _h_jet_HT; 00063 00064 }; 00065 00066 } 00067 00068 #endif