7 #include "RecoJets/JetAlgorithms/interface/PrunedRecombiner.hh"
11 using namespace fastjet;
16 s <<
"Pruned " << _recombiner->description()
17 <<
", with zcut = " << _zcut <<
" and Rcut = " << _Rcut;
27 void PrunedRecombiner::recombine(
const PseudoJet &
pa,
const PseudoJet & pb,
28 PseudoJet & pab)
const
30 PseudoJet p0(0.0, 0.0, 0.0, 0.0);
32 switch ( _pruning_test(pa, pb) ) {
34 _pruned_pseudojets.push_back(pb.cluster_hist_index());
35 _recombiner->recombine(pa, p0, pab);
38 _pruned_pseudojets.push_back(pa.cluster_hist_index());
39 _recombiner->recombine(pb, p0, pab);
43 _recombiner->recombine(pa, pb, pab);
56 int PrunedRecombiner::_pruning_test(
const PseudoJet & pa,
const PseudoJet & pb)
const
61 _recombiner->recombine(pa, pb, newjet);
63 double minpT = pa.perp();
65 double tmp = pb.perp();
71 if ( pa.squared_distance(pb) < _Rcut*_Rcut
72 || minpT > _zcut * newjet.perp() )
81 _pruned_pseudojets.clear();
std::vector< std::vector< double > > tmp
void reset(double vett[256])