diff --git a/Ntupler/src/FatJetInfoFiller.cc b/Ntupler/src/FatJetInfoFiller.cc index aac2fde..4c88ed1 100644 --- a/Ntupler/src/FatJetInfoFiller.cc +++ b/Ntupler/src/FatJetInfoFiller.cc @@ -91,10 +91,14 @@ void FatJetInfoFiller::book() { data.add("fj_genOverReco_mass_null", 0); // default to 0 if not gen-matched data.add("fj_genjet_sdmass", 0); data.add("fj_genjet_sdmass_sqrt", 0); + data.add("fj_genjet_targetmass", 0); data.add("fj_genOverReco_sdmass", 1); // default to 1 if not gen-matched data.add("fj_genOverReco_sdmass_null", 0); // default to 0 if not gen-matched // ---------------------------------- + // --- target mass for energy regression --- + data.add("fj_targetgenmass", 0); + // fatjet kinematics data.add("fj_pt", 0); data.add("fj_eta", 0); @@ -142,7 +146,6 @@ void FatJetInfoFiller::book() { data.add("fj_relptdiff", 0); data.add("fj_sdn2", 0); - //double-b data.add("fj_doubleb", 0); @@ -246,7 +249,8 @@ bool FatJetInfoFiller::fill(const pat::Jet& jet, size_t jetidx, const JetHelper& // gen-matched particle (top/W/etc.) data.fill("fj_gen_pt", fjlabel.second ? fjlabel.second->pt() : -999); data.fill("fj_gen_eta", fjlabel.second ? fjlabel.second->eta() : -999); - data.fill("fj_gen_mass", (fjlabel.first < FatJetMatching::QCD_all && fjlabel.second) ? fjlabel.second->mass() : 0); + float gen_mass = (fjlabel.first < FatJetMatching::QCD_all && fjlabel.second) ? fjlabel.second->mass() : 0.; + data.fill("fj_gen_mass", gen_mass); data.fill("fj_gen_deltaR", fjlabel.second ? reco::deltaR(jet, fjlabel.second->p4()) : 999); // ---------------------------------- @@ -323,13 +327,13 @@ bool FatJetInfoFiller::fill(const pat::Jet& jet, size_t jetidx, const JetHelper& if (sdgenjet){ // jet here points to the uncorrected jet auto pos = [](double x){ return x<0 ? 0 : x; }; - data.fill("fj_genjet_sdmass", pos(sdgenjet->mass())); + data.fill("fj_genjet_sdmass", pos(sdgenjet->mass())); + data.fill("fj_genjet_targetmass",(gen_mass > 6.) ? gen_mass : pos(sdgenjet->mass()) ); data.fill("fj_genjet_sdmass_sqrt", std::sqrt(pos(sdgenjet->mass()))); data.fill("fj_genOverReco_sdmass", catchInfs(pos(sdgenjet->mass()) / pos(msd_uncorr), 1)); data.fill("fj_genOverReco_sdmass_null", catchInfs(pos(sdgenjet->mass()) / pos(msd_uncorr), 0)); } - // -------- // double-b