void DiElectronAnalyser::analyse(const EventPtr event, const ElectronCollection electrons) { histMan_->setCurrentHistogramFolder(histogramFolder_); weight_ = event->weight() * prescale_ * scale_; if (electrons.size() == 2) { ElectronPointer leadingElectron = electrons.front(); ElectronPointer secondElectron = electrons.at(1); //both histMan_->H1D_BJetBinned("diLepton_Mass")->Fill(leadingElectron->invariantMass(secondElectron), weight_); histMan_->H1D_BJetBinned("diLepton_DeltaR")->Fill(leadingElectron->deltaR(secondElectron), weight_); //lead histMan_->H1D_BJetBinned("LeadLepton_Pt")->Fill(leadingElectron->pt(), weight_); histMan_->H1D_BJetBinned("LeadLepton_Eta")->Fill(leadingElectron->eta(), weight_); histMan_->H1D_BJetBinned("LeadLepton_AbsEta")->Fill(abs(leadingElectron->eta()), weight_); histMan_->H1D_BJetBinned("LeadLepton_Phi")->Fill(leadingElectron->phi(), weight_); histMan_->H1D_BJetBinned("LeadLepton_RelIso")->Fill(leadingElectron->pfRelativeIsolationRhoCorrected(), weight_); histMan_->H1D_BJetBinned("LeadLepton_HadOverEM")->Fill(leadingElectron->HadOverEm(), weight_); histMan_->H1D_BJetBinned("LeadLepton_dB")->Fill(leadingElectron->d0_wrtBeamSpot(), weight_); //second histMan_->H1D_BJetBinned("SecondLepton_Pt")->Fill(secondElectron->pt(), weight_); histMan_->H1D_BJetBinned("SecondLepton_Eta")->Fill(secondElectron->eta(), weight_); histMan_->H1D_BJetBinned("SecondLepton_AbsEta")->Fill(abs(secondElectron->eta()), weight_); histMan_->H1D_BJetBinned("SecondLepton_Phi")->Fill(secondElectron->phi(), weight_); histMan_->H1D_BJetBinned("SecondLepton_RelIso")->Fill(secondElectron->pfRelativeIsolationRhoCorrected(), weight_); histMan_->H1D_BJetBinned("SecondLepton_HadOverEM")->Fill(secondElectron->HadOverEm(), weight_); histMan_->H1D_BJetBinned("SecondLepton_dB")->Fill(secondElectron->d0_wrtBeamSpot(), weight_); } }
bool TopPairEMuReferenceSelection::isLooseElectron(const ElectronPointer electron) const { bool passesEtAndEta = electron->et() > 20. && fabs(electron->eta()) < 2.5; bool passesID(electron->passesElectronID(ElectronID::MVAIDTrigger)); bool passesIso = electron->pfRelativeIsolationRhoCorrected() < 0.15; return passesEtAndEta && passesIso && passesID; }
bool TopPairMuPlusJetsReferenceSelection2011::isLooseElectron(const ElectronPointer electron) const { bool passesEtAndEta = electron->et() > 15. && fabs(electron->eta()) < 2.5 && !electron->isInCrack(); // bool passesID(electron->passesElectronID(ElectronID::MVAIDTrigger)); bool passesIso = electron->pfRelativeIsolationRhoCorrected() < 0.2; return passesEtAndEta && passesIso; }
ElectronPointer TestObjectFactory::goodIsolatedElectron() { ElectronPointer electron = TestObjectFactory::goodCaloElectron(); electron->setTrackerIsolation(0.4); electron->setEcalIsolation(0.3); electron->setHcalIsolation(0.5); electron->setPFChargedHadronIsolation(0.4); electron->setPFGammaIsolation(0.3); electron->setPFNeutralHadronIsolation(0.5); electron->setUsedAlgorithm(ElectronAlgorithm::ParticleFlow); electron->setPFPUChargedHadronIsolation(0.2); electron->setPFRelativeIsolationRho(0.05); assert(electron->relativeIsolation() < 0.1); assert(electron->pfRelativeIsolationRhoCorrected() < 0.1); return electron; }