Find the ProtoJets from the collection of input Candidates.
30 fastjet::Strategy strategy = fastjet::Best;
31 fastjet::RecombinationScheme recombScheme = fastjet::E_scheme;
34 fastjet::JetDefinition jetDef0(algorithm,
jetsize_, recombScheme, strategy);
38 std::auto_ptr<fastjet::JetDefinition> pjetdef;
39 std::auto_ptr<fastjet::PrunedRecombPlugin> PRplugin;
41 PRplugin.reset(
new fastjet::PrunedRecombPlugin(jetDef0, jetDef0,
zcut_,
rcut_factor_));
42 pjetdef.reset(
new fastjet::JetDefinition(PRplugin.get()));
47 const fastjet::JetDefinition & jetDef =
enable_pruning_?(*pjetdef):jetDef0;
50 fastjet::ClusterSequence clusterSeq(cell_particles, jetDef);
51 vector<fastjet::PseudoJet> inclusiveJets = clusterSeq.inclusive_jets(
ptMin_);
55 vector<vector<int> > indices(inclusiveJets.size());
57 vector<fastjet::PseudoJet>::iterator jetIt = inclusiveJets.begin();
58 for ( ; jetIt != inclusiveJets.end(); ++jetIt ) {
60 vector<fastjet::PseudoJet> subjets = clusterSeq.exclusive_subjets(*jetIt,
nSubjets_);
62 vector<CompoundPseudoSubJet> subjetsOutput;
63 std::vector<fastjet::PseudoJet>::const_iterator itSubJetBegin = subjets.begin(),
64 itSubJet = itSubJetBegin, itSubJetEnd = subjets.end();
65 for (; itSubJet != itSubJetEnd; ++itSubJet ){
67 vector<fastjet::PseudoJet> subjetFastjetConstituents = clusterSeq.constituents( *itSubJet );
69 vector<int> constituents;
70 vector<fastjet::PseudoJet>::const_iterator fastSubIt = subjetFastjetConstituents.begin(),
71 transConstBegin = subjetFastjetConstituents.begin(),
72 transConstEnd = subjetFastjetConstituents.end();
73 for ( ; fastSubIt != transConstEnd; ++fastSubIt ) {
74 if (fastSubIt->user_index() >= 0) {
75 constituents.push_back( fastSubIt->user_index() );
CompoundPseudoJet holds an association of fastjet::PseudoJets that represent a "hard" top jet with su...