ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/UHHAnalysis/NtupleWriter/interface/JetProps.h
Revision: 1.1
Committed: Wed Jun 19 13:24:46 2013 UTC (11 years, 10 months ago) by rkogler
Content type: text/plain
Branch: MAIN
CVS Tags: HEAD
Log Message:
added substructure information and jet constituents

File Contents

# User Rev Content
1 rkogler 1.1 // Dear emacs, this is -*- c++ -*-
2     #ifndef JetProps_H
3     #define JetProps_H
4    
5     #include "UHHAnalysis/NtupleWriter/Objects/Jet.h"
6     #include "UHHAnalysis/NtupleWriter/Objects/TopJet.h"
7     #include "UHHAnalysis/NtupleWriter/Objects/PFParticle.h"
8     #include "UHHAnalysis/NtupleWriter/interface/Njettiness.h"
9    
10    
11     /**
12     * @class for the calculation of jet properties
13     * most of the functions here use FastJet to calculate
14     * observables like N-subjettiness, mass-drop,
15     * sub-jets or jet grooming variables
16     *
17     * If you use this functionality, make sure that the
18     * jet constituents are provided
19     *
20     *
21     * @author Roman Kogler
22     */
23    
24     class JetProps
25     {
26     public:
27     JetProps();
28     JetProps(TopJet* jet);
29     ~JetProps();
30    
31     double GetNsubjettiness(int N, Njettiness::AxesMode mode, double beta, double R0, double Rcutoff=std::numeric_limits<double>::max());
32    
33     double GetPrunedNsubjettiness(int N, Njettiness::AxesMode mode, double beta, double R0, double Rcutoff=std::numeric_limits<double>::max());
34    
35     std::vector<fastjet::PseudoJet> GetFastJet(double R0, fastjet::JetAlgorithm jet_algo=fastjet::cambridge_algorithm);
36     fastjet::PseudoJet GetPrunedJet(fastjet::PseudoJet injet);
37    
38     double GetQjetVolatility(int seed, double R0);
39    
40     double FindMean( std::vector< double > qjetmasses );
41     double FindRMS( std::vector< double > qjetmasses );
42    
43     std::vector<fastjet::PseudoJet> GetJetConstituents();
44    
45     void set_pf_cands(std::vector<PFParticle>* ptr){m_pf_candidates = ptr;}
46    
47     private:
48    
49     std::vector<PFParticle>* m_pf_candidates;
50    
51     TopJet* m_jet;
52     fastjet::ClusterSequence* m_JetFinder;
53     fastjet::JetDefinition* m_JetDef ;
54    
55     };
56    
57    
58     #endif // JetProps_H