14 using namespace pf2pat;
17 verbose_ ( iConfig.getUntrackedParameter<bool>(
"verbose",
false) )
34 for(
unsigned i=0;
i<toBeIsolated.size();
i++ ) {
38 cout<<
"to be isolated: "<<toBeIso<<endl;
45 cout<<
"PFIsoDepositAlgo "<<endl;
64 for(
unsigned i=0;
i<forIsolation.size();
i++ ) {
75 double dR = pfDir.deltaR(dirPfc);
78 double maxDeltaRForIsoDep_ = 1;
79 if(dR > maxDeltaRForIsoDep_) {
86 cout<<
"\t"<<pfc<<endl;
89 isoDep.addDeposit(dirPfc, pt);
99 double smallNumber = 1
e-15;
102 else if( fabs( particle1.
energy() - particle2.
energy() ) > smallNumber )
return false;
103 else if( fabs( particle1.
eta() - particle2.
eta() ) > smallNumber )
return false;
104 else if( fabs( particle1.
eta() - particle2.
eta() ) > smallNumber )
return false;
std::vector< Particle > ParticleCollection
virtual double eta() const
momentum pseudorapidity
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
IsoDeposits isoDeposits_
IsoDeposits computed in the produce function.
virtual double energy() const
energy
reco::IsoDeposit buildIsoDeposit(const Particle &particle, const ParticleCollection &forIsolation) const
build the IsoDeposit for "particle"
const IsoDeposits & produce(const ParticleCollection &toBeIsolated, const ParticleCollection &forIsolation)
bool sameParticle(const Particle &particle1, const Particle &particle2) const
checks if the 2 particles are in fact the same
Particle reconstructed by the particle flow algorithm.
std::vector< reco::IsoDeposit > IsoDeposits
volatile std::atomic< bool > shutdown_flag false
virtual ParticleType particleId() const
virtual double phi() const
momentum azimuthal angle
virtual const LorentzVector & p4() const
four-momentum Lorentz vector