9 #include "fastjet/ClusterSequence.hh"
12 using namespace pf2pat;
13 using namespace fastjet;
18 : clusterSequence_(0) {
28 JetDefinition jetDef( static_cast<JetAlgorithm>(algorithm), distance);
34 cout<<jetDef.description()<<endl;
51 typedef InputCollection::const_iterator II;
54 for(II
i=inputColl.begin();
i!=inputColl.end(); ++
i, ++
index) {
55 input_.push_back( PseudoJet(
i->px(),
i->py(),
i->pz(),
i->energy() ) );
56 input_.back().set_user_index( index );
96 return JetType(
p4, vertex, specific, ptrsToConstituents);
106 for(
PJI jc=constituents.begin(); jc!=constituents.end(); ++jc) {
110 return ptrsToConstituents;
118 cout<<
"Pseudo jets:"<<endl;
121 cout<<index<<
" "<<
i->Et()<<endl;
124 for(
PJI jc=constituents.begin(); jc!=constituents.end(); ++jc) {
125 cout<<
"\t"<<jc->user_index()<<
" "<<jc->Et()<<endl;
138 cout<<index<<
" "<<(*i)<<endl;
139 cout<<
i->print()<<endl;
T getParameter(std::string const &) const
std::vector< InputType > InputCollection
const JetCollection & produce(const InputHandle &inputColl)
run the jet clustering on the input collection, and produce the reco jets
void runJetClustering()
run fast jet
bool makeSpecific(std::vector< reco::CandidatePtr > const &towers, const CaloSubdetectorGeometry &towerGeometry, reco::CaloJet::Specific *caloJetSpecific)
Make CaloJet specifics. Assumes PseudoJet is made from CaloTowerCandidates.
FastJetAlgo(const edm::ParameterSet &ps)
std::vector< Constituent > Constituents
fastjet::JetDefinition jetDefinition_
definition of the algorithm, and of the algorithm parameters
void setJetDefinition(const edm::ParameterSet &ps)
get jet definition from parameter set
const JetCollection & fastJetToReco()
convert fastjet output to RECO data format (e.g. PFJet)
Jets made from PFObjects.
void printJets(std::ostream &out=std::cout) const
print output jets
void printPseudoJets(std::ostream &out=std::cout) const
print internal pseudojets
InputHandle inputHandle_
keep track of the input handle - set in the produce function.
math::XYZPoint Point
point in the space
JetType makeJet(const fastjet::PseudoJet &pseudoJet) const
std::vector< fastjet::PseudoJet > PseudoJetCollection
fastjet::ClusterSequence * clusterSequence_
cluster sequence
std::vector< JetType > JetCollection
void recoToFastJet(const InputCollection &inputColl)
reco::Jet::Constituents makeConstituents(const fastjet::PseudoJet &pseudoJet) const
JetCollection::const_iterator JI
JetCollection jetCollection_
output jet collection
PseudoJetCollection output_
fastjet output
math::XYZTLorentzVector LorentzVector
Lorentz vector.
PseudoJetCollection input_
fastjet input
PseudoJetCollection::const_iterator PJI