5 #include "fastjet/tools/Pruner.hh"
14 ReclusterJets::ReclusterJets(
const std::vector<LorentzVector> &
objects,
double ktpower,
double rparam)
15 : ktpower_(ktpower), rparam_(rparam) {
20 fastjet::PseudoJet
j(
o.Px(),
o.Py(),
o.Pz(),
o.E());
37 throw cms::Exception(
"InvalidArgument",
"Unsupported ktpower value");
48 std::vector<math::XYZTLorentzVector> JetObjectsAll;
49 for (
const fastjet::PseudoJet &pj :
jets) {
50 JetObjectsAll.push_back(
LorentzVector(pj.px(), pj.py(), pj.pz(), pj.e()));
86 throw cms::Exception(
"InvalidArgument",
"getPrunedSubjetExclusive called for non-existing exclusive subjet");
94 throw cms::Exception(
"InvalidArgument",
"getPrunedSubjetInclusive called for non-existing inclusive subjet");
101 fastjet::Pruner pruner(fastjet::cambridge_algorithm,
zcut, rcutFactor);
103 fastjet::PseudoJet pruned_jet = pruner(
jet);
104 return LorentzVector(pruned_jet.px(), pruned_jet.py(), pruned_jet.pz(), pruned_jet.e());