CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
SubJetAlgorithm.h
Go to the documentation of this file.
1 #ifndef RecoJets_JetAlgorithms_CATopJetAlgorithm2_h
2 #define RecoJets_JetAlgorithms_CATopJetAlgorithm2_h
3 
4 #include <vector>
5 
8 #include "RecoJets/JetAlgorithms/interface/FastPrunePlugin.hh"
9 #include <fastjet/JetDefinition.hh>
10 #include <fastjet/PseudoJet.hh>
11 #include <fastjet/ClusterSequence.hh>
12 #include <fastjet/GhostedAreaSpec.hh>
13 
14 
16  public:
18  unsigned int subjets,
19  double zcut,
20  double rcut_factor,
21  boost::shared_ptr<fastjet::JetDefinition> fjJetDefinition,
22  bool doAreaFastjet,
23  boost::shared_ptr<fastjet::GhostedAreaSpec> fjActiveArea,
24  double voronoiRfact
25  ) :
26  ptMin_ (ptMin ),
27  nSubjets_ (subjets ),
28  zcut_ (zcut ),
29  rcut_factor_ (rcut_factor ),
30  fjJetDefinition_(fjJetDefinition),
31  doAreaFastjet_ (doAreaFastjet),
32  fjActiveArea_ (fjActiveArea),
33  voronoiRfact_ (voronoiRfact)
34  {
35 
36  }
37 
38  void set_zcut(double z);
39  void set_rcut_factor(double r);
40  double zcut() const { return zcut_;}
41  double rcut_factor() const { return rcut_factor_; }
42 
44  void run( const std::vector<fastjet::PseudoJet> & cell_particles,
45  std::vector<CompoundPseudoJet> & hardjetsOutput);
46 
47 
48  private:
49 
50  double ptMin_; //<! lower pt cut on which jets to reco
51  int nSubjets_; //<! number of subjets to produce.
52  double zcut_; //<! zcut parameter (see arXiv:0903.5081). Only relevant if pruning is enabled.
53  double rcut_factor_; //<! r-cut factor (see arXiv:0903.5081).
54  boost::shared_ptr<fastjet::JetDefinition> fjJetDefinition_; //<! jet definition to use
55  bool doAreaFastjet_; //<! whether or not to use the fastjet area
56  boost::shared_ptr<fastjet::GhostedAreaSpec> fjActiveArea_; //<! fastjet area spec
57  double voronoiRfact_; //<! fastjet voronoi area R factor
58 };
59 
60 #endif
double zcut() const
void set_rcut_factor(double r)
double double double z
void set_zcut(double z)
SubJetAlgorithm(double ptMin, unsigned int subjets, double zcut, double rcut_factor, boost::shared_ptr< fastjet::JetDefinition > fjJetDefinition, bool doAreaFastjet, boost::shared_ptr< fastjet::GhostedAreaSpec > fjActiveArea, double voronoiRfact)
void run(const std::vector< fastjet::PseudoJet > &cell_particles, std::vector< CompoundPseudoJet > &hardjetsOutput)
Find the ProtoJets from the collection of input Candidates.
boost::shared_ptr< fastjet::GhostedAreaSpec > fjActiveArea_
double rcut_factor() const
boost::shared_ptr< fastjet::JetDefinition > fjJetDefinition_