19 if(iJet->
energy()== 0)
return false;
44 if(!validToken)
return;
50 if(!validToken)
return;
58 if(!validToken)
return;
61 std::vector<reco::PFJet> lCJets;
62 for(reco::PFJetCollection::const_iterator
jet=lUCJets.begin();
jet!=lUCJets.end(); ++
jet){
66 lCJets.push_back(tempJet);
74 for(
int ivtx = 0; ivtx < (int)lVertices.size(); ivtx++) {
76 const Vertex *vtx = &(lVertices.at(ivtx));
77 if( vtx->
isFake() )
continue;
78 if( vtx->
ndof()<=4 )
continue;
79 if( vtx->
position().Rho()>2.0 )
continue;
80 if( fabs(vtx->
position().Z())>24.0 )
continue;
81 lGoodVertices.push_back(*vtx);
85 for(
int i0 = 0; i0 < (int) lUCJets.size(); i0++) {
86 const PFJet *pUCJet = &(lUCJets.at(i0));
87 for(
int i1 = 0; i1 < (int) lCJets.size(); i1++) {
88 const PFJet *pCJet = &(lCJets.at(i1));
90 if( fabs(pUCJet->
eta() - pCJet->
eta()) > 0.001 )
continue;
91 if( pUCJet->
pt() < 0.0 )
continue;
92 double lJec = pCJet ->
pt()/pUCJet->
pt();
96 if( lGoodVertices.size()>0 ) {
105 <<
"Debug Jet MVA : "
106 << iEvent.
id() <<
" : "
107 << lPUJetId.
nvtx() <<
" "
108 << pCJet->
pt() <<
" "
109 << lPUJetId.
jetEta() <<
" "
110 << lPUJetId.
jetPhi() <<
" "
111 << lPUJetId.
d0() <<
" "
112 << lPUJetId.
dZ() <<
" "
113 << lPUJetId.
beta() <<
" "
117 << lPUJetId.
dRMean() <<
" "
118 << lPUJetId.
frac01() <<
" "
119 << lPUJetId.
frac02() <<
" "
120 << lPUJetId.
frac03() <<
" "
121 << lPUJetId.
frac04() <<
" "
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
edm::EDGetTokenT< reco::PFJetCollection > PFJetCollection_
T getParameter(std::string const &) const
edm::EDGetTokenT< double > theRhoCollection_
virtual void scaleEnergy(double fScale)
scale energy of the jet
float chargedEmEnergy() const
chargedEmEnergy
const float & frac05() const
bool getByToken(EDGetToken token, Handle< PROD > &result) const
PileupJetIdAlgo * fPUJetIdAlgo
const float & mva() const
std::string jetCorrector_
edm::EDGetTokenT< reco::VertexCollection > thePVCollection_
std::vector< Vertex > VertexCollection
collection of Vertex objects
const float & frac03() const
void Load_pfjets_mvavalue()
void Load_pfjets_corr_p4()
int chargedMultiplicity() const
chargedMultiplicity
const Point & position() const
position
Jets made from PFObjects.
virtual double eta() const
momentum pseudorapidity
virtual double pt() const
transverse momentum
float neutralEmEnergy() const
neutralEmEnergy
virtual double energy() const
energy
const float & beta() const
const float & jetPhi() const
const float & nNeutrals() const
const float & nvtx() const
const float & frac04() const
const float & frac01() const
PileupJetIdentifier computeIdVariables(const reco::Jet *jet, float jec, const reco::Vertex *, const reco::VertexCollection &, double rho)
std::vector< float > & pfjets_mvavalue()
void SetVars(HWW &, const edm::Event &, const edm::EventSetup &)
static const JetCorrector * getJetCorrector(const std::string &fName, const edm::EventSetup &fSetup)
retrieve corrector from the event setup. troughs exception if something is missing ...
std::vector< PFJet > PFJetCollection
collection of PFJet objects
virtual float jetArea() const
get jet area
virtual int nConstituents() const
of constituents
std::vector< float > & pfjets_JEC()
float neutralHadronEnergy() const
neutralHadronEnergy
MVAJetIdMaker(const edm::ParameterSet &, edm::ConsumesCollector)
const float & betaStar() const
ROOT::Math::LorentzVector< ROOT::Math::PxPyPzE4D< float > > XYZTLorentzVectorF
Lorentz vector with cylindrical internal representation using pseudorapidity.
const float & dRMean() const
const float & nCharged() const
bool passPFLooseId(const reco::PFJet *iJet)
float chargedHadronEnergy() const
chargedHadronEnergy
const float & frac02() const
math::PtEtaPhiELorentzVectorF LorentzVector
const float & jetEta() const