double unc( PseudoJet &iJet,JetCorrectionUncertainty *iJetUnc) { if(fabs(iJet.eta()) > 5. || fabs(iJet.pt()) < 10.) return 1.; iJetUnc->setJetPt ( iJet.pt() ); iJetUnc->setJetEta( iJet.eta() ); double jetunc = iJetUnc->getUncertainty(true); return jetunc; }
//vector<PseudoJet> threeHardest(vector<PseudoJet> &iParts, JetDefinition &iJetDef, Selector &iSelector,std::vector<ClusterSequence> &iCSs) { // cluster full event (hard + pileup) // vector<PseudoJet> threehardest = iSelector(sorted_by_pt(cs.inclusive_jets())); // iCSs.push_back(cs); // return threehardest; //} PseudoJet match(PseudoJet &iJet,vector<PseudoJet> &iJets) { for(unsigned int i0 = 0; i0 < iJets.size(); i0++) { double pEta = fabs(iJet.eta()-iJets[i0].eta()); double pPhi = fabs(iJet.phi() - iJets[i0].phi()); if(pPhi > 2.*TMath::Pi()-pPhi) pPhi = 2.*TMath::Pi()-pPhi; if(sqrt(pEta*pEta+pPhi*pPhi) > 0.3) continue; return iJets[i0]; } return PseudoJet(); }
double correction( PseudoJet &iJet,FactorizedJetCorrector *iJetCorr,double iRho) { iJetCorr->setJetPt (iJet.pt()); iJetCorr->setJetEta(iJet.eta()); iJetCorr->setJetPhi(iJet.phi()); iJetCorr->setJetE (iJet.e()); iJetCorr->setJetA (iJet.area()); iJetCorr->setRho(iRho); iJetCorr->setJetEMF(-99.0); double jetcorr= iJetCorr->getCorrection(); return jetcorr; }