![]() |
![]() |
#include <PrunedRecombPlugin.h>
Public Member Functions | |
virtual std::string | description () const |
PrunedRecombiner (const double &zcut=0.1, const double &Rcut=0.5, RecombinationScheme recomb_scheme=E_scheme) | |
virtual void | recombine (const PseudoJet &pa, const PseudoJet &pb, PseudoJet &pab) const |
recombine pa and pb and put result into pab | |
Private Member Functions | |
int | _pruning_test (const PseudoJet &pa, const PseudoJet &pb) const |
tests whether pa and pb should be recombined or vetoed | |
Private Attributes | |
double | _Rcut |
double | _zcut |
Definition at line 139 of file PrunedRecombPlugin.h.
PrunedRecombiner::PrunedRecombiner | ( | const double & | zcut = 0.1 , |
const double & | Rcut = 0.5 , |
||
RecombinationScheme | recomb_scheme = E_scheme |
||
) | [inline] |
Definition at line 141 of file PrunedRecombPlugin.h.
int PrunedRecombiner::_pruning_test | ( | const PseudoJet & | pa, |
const PseudoJet & | pb | ||
) | const [private] |
tests whether pa and pb should be recombined or vetoed
Definition at line 62 of file PrunedRecombiner.cc.
References _Rcut, _zcut, recombine(), and tmp.
Referenced by recombine().
{ // create the new jet by recombining the first two, using the normal // recombination scheme PseudoJet newjet; JetDefinition::DefaultRecombiner::recombine(pa, pb, newjet); double minpT = pa.perp(); int hard = 2; // harder pj is pj2 double tmp = pb.perp(); if (tmp < minpT) { minpT = tmp; hard = 1; // harder pj is pj1 } if ( pa.squared_distance(pb) < _Rcut*_Rcut || minpT > _zcut * newjet.perp() ) return 0; else return hard; }
FASTJET_BEGIN_NAMESPACE std::string PrunedRecombiner::description | ( | ) | const [virtual] |
Definition at line 20 of file PrunedRecombiner.cc.
References _Rcut, _zcut, and asciidump::s.
{ std::ostringstream s; s << "Pruned " << JetDefinition::DefaultRecombiner::description() << ", with zcut = " << _zcut << " and Rcut = " << _Rcut; return s.str(); }
void PrunedRecombiner::recombine | ( | const PseudoJet & | pa, |
const PseudoJet & | pb, | ||
PseudoJet & | pab | ||
) | const [virtual] |
recombine pa and pb and put result into pab
Recombine pa and pb and put result into pab. If pruning test is true (the recombination is vetoed) the harder parent is merged with a 0 PseudoJet. (Check that this is an identity in all recombination schemes!)
Definition at line 32 of file PrunedRecombiner.cc.
References _pruning_test().
Referenced by _pruning_test().
{ //std::cout << "In PR::recombine()\n"; PseudoJet p0(0.0, 0.0, 0.0, 0.0); // test if recombination should be pruned switch ( _pruning_test(pa, pb) ) { case 1: // MAKE RECORD OF PB BEING PRUNED JetDefinition::DefaultRecombiner::recombine(pa, p0, pab); break; case 2: // MAKE RECORD OF PA BEING PRUNED JetDefinition::DefaultRecombiner::recombine(pb, p0, pab); break; default: // if no pruning, do regular combination JetDefinition::DefaultRecombiner::recombine(pa, pb, pab); } }
double PrunedRecombiner::_Rcut [private] |
Definition at line 157 of file PrunedRecombPlugin.h.
Referenced by _pruning_test(), and description().
double PrunedRecombiner::_zcut [private] |
Definition at line 156 of file PrunedRecombPlugin.h.
Referenced by _pruning_test(), and description().