Rivet routine for classifying MC events according to the Higgs template cross section categories. More...
Public Member Functions | |
HiggsClassification | classifyEvent (const Event &event, const HTXS::HiggsProdMode prodMode) |
Main classificaion method. More... | |
HiggsTemplateCrossSections () | |
Utility methods | |
Methods to identify the Higgs boson and associated vector boson and to build jets | |
Particle | getLastInstance (Particle ptcl) |
follow a "propagating" particle and return its last instance More... | |
bool | originateFrom (const Particle &p, const Particles &ptcls) |
Whether particle p originate from any of the ptcls. More... | |
bool | originateFrom (const Particle &p, const Particle &p2) |
Whether particle p originates from p2. More... | |
bool | hasChild (const ConstGenParticlePtr &ptcl, int pdgID) |
Checks whether the input particle has a child with a given PDGID. More... | |
bool | hasParent (const ConstGenParticlePtr &ptcl, int pdgID) |
Checks whether the input particle has a parent with a given PDGID. More... | |
bool | quarkDecay (const Particle &p) |
Return true is particle decays to quarks. More... | |
HiggsClassification | error (HiggsClassification &cat, HTXS::ErrorCode err, std::string msg="", int NmaxWarnings=20) |
Returns the classification object with the error code set. Prints an warning message, and keeps track of number of errors. More... | |
Categorization methods | |
Methods to assign the truth category based on the identified Higgs boson and associated vector bosons and/or reconstructed jets | |
int | getBin (double x, std::vector< double > bins) |
Return bin index of x given the provided bin edges. 0=first bin, -1=underflow bin. More... | |
int | vbfTopology (const Jets &jets, const Particle &higgs) |
VBF topolog selection 0 = fail loose selction: m_jj > 400 GeV and Dy_jj > 2.8 1 pass loose, but fail additional cut pT(Hjj)<25. 2 pass tight selection. More... | |
int | vbfTopology_Stage1_1 (const Jets &jets, const Particle &higgs) |
VBF topology selection Stage1.1 0 = fail loose selection: m_jj > 350 GeV 1 pass loose, but fail additional cut pT(Hjj)<25. 2 pass pT(Hjj)>25 selection 3 pass tight (m_jj>700 GeV), but fail additional cut pT(Hjj)<25. 4 pass pT(Hjj)>25 selection. More... | |
int | vbfTopology_Stage1_1_Fine (const Jets &jets, const Particle &higgs) |
VBF topology selection for Stage1.1 Fine 0 = fail loose selection: m_jj > 350 GeV 1 pass loose, but fail additional cut pT(Hjj)<25. 2 pass pT(Hjj)>25 selection 3 pass 700<m_jj<1000 GeV, but fail additional cut pT(Hjj)<25. 4 pass pT(Hjj)>25 selection 5 pass 1000<m_jj<1500 GeV, but fail additional cut pT(Hjj)<25. 6 pass pT(Hjj)>25 selection 7 pass m_jj>1500 GeV, but fail additional cut pT(Hjj)<25. 8 pass pT(Hjj)>25 selection. More... | |
bool | isVH (HTXS::HiggsProdMode p) |
Whether the Higgs is produced in association with a vector boson (VH) More... | |
HTXS::Stage0::Category | getStage0Category (const HTXS::HiggsProdMode prodMode, const Particle &higgs, const Particle &V) |
Stage-0 HTXS categorization. More... | |
HTXS::Stage1::Category | getStage1Category (const HTXS::HiggsProdMode prodMode, const Particle &higgs, const Jets &jets, const Particle &V) |
Stage-1 categorization. More... | |
HTXS::Stage1_1::Category | getStage1_1_Category (const HTXS::HiggsProdMode prodMode, const Particle &higgs, const Jets &jets, const Particle &V) |
Stage-1.1 categorization. More... | |
HTXS::Stage1_1_Fine::Category | getStage1_1_Fine_Category (const HTXS::HiggsProdMode prodMode, const Particle &higgs, const Jets &jets, const Particle &V) |
Stage-1_1 categorization. More... | |
Default Rivet analysis methods and steering methods | |
void | setHiggsProdMode (HTXS::HiggsProdMode prodMode) |
Sets the Higgs production mode. More... | |
void | init () override |
default Rivet Analysis::init method Booking of histograms, initializing Rivet projection Extracts Higgs production mode from shell variable if not set manually using setHiggsProdMode More... | |
void | analyze (const Event &event) override |
void | printClassificationSummary () |
void | finalize () override |
void | initializeHistos () |
Private Attributes | |
Histo1DPtr | hist_deltay_jj |
Histo1DPtr | hist_dijet_mass |
Histo1DPtr | hist_Njets25 |
Histo1DPtr | hist_Njets30 |
Histo1DPtr | hist_pT_Higgs |
Histo1DPtr | hist_pT_Hjj |
Histo1DPtr | hist_pT_jet1 |
Histo1DPtr | hist_pT_V |
Histo1DPtr | hist_stage0 |
Histo1DPtr | hist_stage1_pTjet25 |
Histo1DPtr | hist_stage1_pTjet30 |
Histo1DPtr | hist_y_Higgs |
std::map< HTXS::ErrorCode, size_t > | m_errorCount |
HTXS::HiggsProdMode | m_HiggsProdMode |
size_t | m_sumevents |
double | m_sumw |
Rivet routine for classifying MC events according to the Higgs template cross section categories.
Definition at line 21 of file HiggsTemplateCrossSections.cc.
|
inline |
Definition at line 24 of file HiggsTemplateCrossSections.cc.
|
inlineoverride |
Definition at line 755 of file HiggsTemplateCrossSections.cc.
References funct::abs(), eostools::cat(), classifyEvent(), F(), hist_deltay_jj, hist_dijet_mass, hist_Njets25, hist_Njets30, hist_pT_Higgs, hist_pT_Hjj, hist_pT_jet1, hist_pT_V, hist_stage0, hist_stage1_pTjet25, hist_stage1_pTjet30, hist_y_Higgs, m_HiggsProdMode, m_sumw, EgHLTOffHistBins_cfi::mass, hltrates_dqm_sourceclient-live_cfg::offset, DiDispStaMuonMonitor_cfi::pt, and mps_merge::weight.
|
inline |
Main classificaion method.
Definition at line 108 of file HiggsTemplateCrossSections.cc.
References eostools::cat(), class-composition::child, class-composition::children, error(), event(), getLastInstance(), getStage0Category(), getStage1_1_Category(), getStage1_1_Fine_Category(), getStage1Category(), HTXS::GG2ZH, bJpsiMuMuTrigSettings_cff::hadrons, hasChild(), hasParent(), HTXS::HIGGS_DECAY_IDENTIFICATION, HTXS::HIGGS_IDENTIFICATION, HTXS::HS_VTX_IDENTIFICATION, isVH(), singleTopDQM_cfi::jets, m_errorCount, m_HiggsProdMode, m_sumevents, originateFrom(), AlCaHLTBitMon_ParallelJobs::p, ecalTrigSettings_cff::particles, HTXS::PRODMODE_DEFINED, PVValHelper::pT, HTXS::QQ2ZH, quarkDecay(), HTXS::SUCCESS, HTXS::TH, HTXS::TOP_W_IDENTIFICATION, HTXS::TTH, HTXS::UNDEFINED, HTXS::UNKNOWN, HTXS::Stage0::UNKNOWN, HTXS::Stage1::UNKNOWN, HTXS::Stage1_1::UNKNOWN, HTXS::Stage1_1_Fine::UNKNOWN, HTXS::VH_DECAY_IDENTIFICATION, HTXS::VH_IDENTIFICATION, and HTXS::WH.
Referenced by analyze().
|
inline |
Returns the classification object with the error code set. Prints an warning message, and keeps track of number of errors.
Definition at line 90 of file HiggsTemplateCrossSections.cc.
References eostools::cat(), runTheMatrix::err, m_errorCount, and mps_check::msg.
Referenced by Page1Parser.Page1Parser::check_for_whole_start_tag(), and classifyEvent().
|
inlineoverride |
Definition at line 816 of file HiggsTemplateCrossSections.cc.
References compare::hist, hist_deltay_jj, hist_dijet_mass, hist_Njets25, hist_Njets30, hist_pT_Higgs, hist_pT_Hjj, hist_pT_jet1, hist_pT_V, hist_stage0, hist_stage1_pTjet25, hist_stage1_pTjet30, hist_y_Higgs, m_sumw, printClassificationSummary(), and Scenarios_cff::scale.
|
inline |
Return bin index of x given the provided bin edges. 0=first bin, -1=underflow bin.
Definition at line 327 of file HiggsTemplateCrossSections.cc.
References mps_fire::i.
Referenced by BTagWeightCalculator.BTagWeightCalculator::calcJetWeightImpl(), getStage1_1_Category(), getStage1_1_Fine_Category(), and getStage1Category().
follow a "propagating" particle and return its last instance
Definition at line 33 of file HiggsTemplateCrossSections.cc.
References hasChild().
Referenced by classifyEvent().
|
inline |
Stage-0 HTXS categorization.
Definition at line 389 of file HiggsTemplateCrossSections.cc.
References funct::abs(), HTXS::GG2ZH, HTXS::GGF, HTXS::QQ2ZH, quarkDecay(), HTXS::Stage0::VH2HQQ, HTXS::Stage0::VH2HQQ_FWDH, and HTXS::WH.
Referenced by classifyEvent().
|
inline |
Stage-1.1 categorization.
Definition at line 493 of file HiggsTemplateCrossSections.cc.
References funct::abs(), HTXS::BBH, HTXS::Stage0::BBH_FWDH, getBin(), HTXS::Stage1_1::GG2H_0J_PTH_0_10, HTXS::Stage1_1::GG2H_0J_PTH_GT10, HTXS::Stage1::GG2H_1J_PTH_0_60, HTXS::Stage0::GG2H_FWDH, HTXS::Stage1_1::GG2H_GE2J_MJJ_0_350_PTH_0_60, HTXS::Stage1_1::GG2H_MJJ_350_700_PTHJJ_0_25, HTXS::Stage1_1::GG2H_PTH_GT200, HTXS::Stage0::GG2HLL_FWDH, HTXS::Stage1_1::GG2HLL_PTV_0_75, HTXS::Stage1_1::GG2HLL_PTV_150_250_0J, HTXS::Stage1_1::GG2HLL_PTV_150_250_GE1J, HTXS::Stage1_1::GG2HLL_PTV_75_150, HTXS::Stage1_1::GG2HLL_PTV_GT250, HTXS::GG2ZH, HTXS::GGF, isVH(), EgHLTOffHistBins_cfi::mass, ECF_cff::Njets, HTXS::Stage0::QQ2HLL_FWDH, HTXS::Stage1_1::QQ2HLL_PTV_0_75, HTXS::Stage1::QQ2HLL_PTV_150_250_0J, HTXS::Stage1::QQ2HLL_PTV_150_250_GE1J, HTXS::Stage1_1::QQ2HLL_PTV_75_150, HTXS::Stage1::QQ2HLL_PTV_GT250, HTXS::Stage0::QQ2HLNU_FWDH, HTXS::Stage1_1::QQ2HLNU_PTV_0_75, HTXS::Stage1::QQ2HLNU_PTV_150_250_0J, HTXS::Stage1::QQ2HLNU_PTV_150_250_GE1J, HTXS::Stage1_1::QQ2HLNU_PTV_75_150, HTXS::Stage1::QQ2HLNU_PTV_GT250, HTXS::Stage1_1::QQ2HQQ_0J, HTXS::Stage1_1::QQ2HQQ_1J, HTXS::Stage1::QQ2HQQ_FWDH, HTXS::Stage1_1::QQ2HQQ_MJJ_0_60, HTXS::Stage1_1::QQ2HQQ_MJJ_120_350, HTXS::Stage1_1::QQ2HQQ_MJJ_60_120, HTXS::Stage1_1::QQ2HQQ_MJJ_GT350_PTH_GT200, HTXS::QQ2ZH, quarkDecay(), HTXS::TH, HTXS::Stage0::TH_FWDH, HTXS::TTH, HTXS::Stage0::TTH_FWDH, SiStripSubdetector::UNKNOWN, HTXS::VBF, vbfTopology_Stage1_1(), and HTXS::WH.
Referenced by classifyEvent().
|
inline |
Stage-1_1 categorization.
Definition at line 595 of file HiggsTemplateCrossSections.cc.
References funct::abs(), HTXS::BBH, HTXS::Stage0::BBH_FWDH, getBin(), HTXS::Stage1_1::GG2H_0J_PTH_0_10, HTXS::Stage1_1::GG2H_0J_PTH_GT10, HTXS::Stage1::GG2H_1J_PTH_0_60, HTXS::Stage0::GG2H_FWDH, HTXS::Stage1_1_Fine::GG2H_GE2J_MJJ_0_350_PTH_0_60_PTHJJ_0_25, HTXS::Stage1_1_Fine::GG2H_GE2J_MJJ_0_350_PTH_0_60_PTHJJ_GT25, HTXS::Stage1_1::GG2H_MJJ_350_700_PTHJJ_0_25, HTXS::Stage1_1::GG2H_PTH_GT200, HTXS::Stage0::GG2HLL_FWDH, HTXS::Stage1_1_Fine::GG2HLL_PTV_0_75_0J, HTXS::Stage1_1_Fine::GG2HLL_PTV_0_75_1J, HTXS::Stage1_1_Fine::GG2HLL_PTV_0_75_GE2J, HTXS::GG2ZH, HTXS::GGF, isVH(), EgHLTOffHistBins_cfi::mass, ECF_cff::Njets, DiDispStaMuonMonitor_cfi::pt, HTXS::Stage0::QQ2HLL_FWDH, HTXS::Stage1_1_Fine::QQ2HLL_PTV_0_75_0J, HTXS::Stage1_1_Fine::QQ2HLL_PTV_0_75_1J, HTXS::Stage1_1_Fine::QQ2HLL_PTV_0_75_GE2J, HTXS::Stage0::QQ2HLNU_FWDH, HTXS::Stage1_1_Fine::QQ2HLNU_PTV_0_75_0J, HTXS::Stage1_1_Fine::QQ2HLNU_PTV_0_75_1J, HTXS::Stage1_1_Fine::QQ2HLNU_PTV_0_75_GE2J, HTXS::Stage1_1::QQ2HQQ_0J, HTXS::Stage1_1::QQ2HQQ_1J, HTXS::Stage1::QQ2HQQ_FWDH, HTXS::Stage1_1_Fine::QQ2HQQ_MJJ_0_60_PTHJJ_0_25, HTXS::Stage1_1_Fine::QQ2HQQ_MJJ_0_60_PTHJJ_GT25, HTXS::Stage1_1::QQ2HQQ_MJJ_350_700_PTHJJ_0_25, HTXS::Stage1_1_Fine::QQ2HQQ_PTH_GT200_MJJ_350_700_PTHJJ_0_25, HTXS::QQ2ZH, quarkDecay(), HTXS::TH, HTXS::Stage0::TH_FWDH, HTXS::TTH, HTXS::Stage0::TTH_FWDH, SiStripSubdetector::UNKNOWN, HTXS::VBF, vbfTopology_Stage1_1_Fine(), and HTXS::WH.
Referenced by classifyEvent().
|
inline |
Stage-1 categorization.
Definition at line 405 of file HiggsTemplateCrossSections.cc.
References funct::abs(), HTXS::BBH, HTXS::Stage0::BBH_FWDH, getBin(), HTXS::Stage1::GG2H_0J, HTXS::Stage1::GG2H_1J_PTH_0_60, HTXS::Stage0::GG2H_FWDH, HTXS::Stage1::GG2H_GE2J_PTH_0_60, HTXS::Stage1::GG2H_VBFTOPO_JET3, HTXS::Stage1::GG2H_VBFTOPO_JET3VETO, HTXS::Stage0::GG2HLL_FWDH, HTXS::Stage1::GG2HLL_PTV_0_150, HTXS::Stage1::GG2HLL_PTV_GT150_0J, HTXS::Stage1::GG2HLL_PTV_GT150_GE1J, HTXS::GG2ZH, HTXS::GGF, isVH(), EgHLTOffHistBins_cfi::mass, ECF_cff::Njets, HTXS::Stage0::QQ2HLL_FWDH, HTXS::Stage1::QQ2HLL_PTV_0_150, HTXS::Stage1::QQ2HLL_PTV_150_250_0J, HTXS::Stage1::QQ2HLL_PTV_150_250_GE1J, HTXS::Stage1::QQ2HLL_PTV_GT250, HTXS::Stage0::QQ2HLNU_FWDH, HTXS::Stage1::QQ2HLNU_PTV_0_150, HTXS::Stage1::QQ2HLNU_PTV_150_250_0J, HTXS::Stage1::QQ2HLNU_PTV_150_250_GE1J, HTXS::Stage1::QQ2HLNU_PTV_GT250, HTXS::Stage1::QQ2HQQ_FWDH, HTXS::Stage1::QQ2HQQ_PTJET1_GT200, HTXS::Stage1::QQ2HQQ_REST, HTXS::Stage1::QQ2HQQ_VBFTOPO_JET3, HTXS::Stage1::QQ2HQQ_VBFTOPO_JET3VETO, HTXS::Stage1::QQ2HQQ_VH2JET, HTXS::QQ2ZH, quarkDecay(), HTXS::TH, HTXS::Stage0::TH_FWDH, HTXS::TTH, HTXS::Stage0::TTH_FWDH, SiStripSubdetector::UNKNOWN, HTXS::VBF, vbfTopology(), and HTXS::WH.
Referenced by classifyEvent().
|
inline |
Checks whether the input particle has a child with a given PDGID.
Definition at line 65 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent(), and getLastInstance().
|
inline |
Checks whether the input particle has a parent with a given PDGID.
Definition at line 73 of file HiggsTemplateCrossSections.cc.
References class-composition::parent, parents, and ecalTrigSettings_cff::particles.
Referenced by classifyEvent().
|
inlineoverride |
default Rivet Analysis::init method Booking of histograms, initializing Rivet projection Extracts Higgs production mode from shell variable if not set manually using setHiggsProdMode
Definition at line 708 of file HiggsTemplateCrossSections.cc.
References HTXS::BBH, HTXS::GG2ZH, HTXS::GGF, initializeHistos(), m_HiggsProdMode, m_sumevents, m_sumw, HTXS::QQ2ZH, HTXS::TH, HTXS::TTH, HTXS::UNKNOWN, HTXS::VBF, and HTXS::WH.
|
inline |
Definition at line 838 of file HiggsTemplateCrossSections.cc.
References hist_deltay_jj, hist_dijet_mass, hist_Njets25, hist_Njets30, hist_pT_Higgs, hist_pT_Hjj, hist_pT_jet1, hist_pT_V, hist_stage0, hist_stage1_pTjet25, hist_stage1_pTjet30, and hist_y_Higgs.
Referenced by init().
|
inline |
Whether the Higgs is produced in association with a vector boson (VH)
Definition at line 386 of file HiggsTemplateCrossSections.cc.
References HTXS::GG2ZH, HTXS::QQ2ZH, and HTXS::WH.
Referenced by classifyEvent(), getStage1_1_Category(), getStage1_1_Fine_Category(), and getStage1Category().
|
inline |
Whether particle p originate from any of the ptcls.
Definition at line 44 of file HiggsTemplateCrossSections.cc.
References ecalTrigSettings_cff::particles.
Referenced by classifyEvent(), and originateFrom().
|
inline |
Whether particle p originates from p2.
Definition at line 59 of file HiggsTemplateCrossSections.cc.
References originateFrom().
|
inline |
Definition at line 791 of file HiggsTemplateCrossSections.cc.
References HTXS::HIGGS_IDENTIFICATION, HTXS::HS_VTX_IDENTIFICATION, m_errorCount, m_sumevents, HTXS::MOMENTUM_CONSERVATION, HTXS::PRODMODE_DEFINED, HTXS::SUCCESS, HTXS::TOP_W_IDENTIFICATION, and HTXS::VH_IDENTIFICATION.
Referenced by finalize().
|
inline |
Return true is particle decays to quarks.
Definition at line 81 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent(), getStage0Category(), getStage1_1_Category(), getStage1_1_Fine_Category(), and getStage1Category().
|
inline |
Sets the Higgs production mode.
Definition at line 703 of file HiggsTemplateCrossSections.cc.
References m_HiggsProdMode.
|
inline |
VBF topolog selection 0 = fail loose selction: m_jj > 400 GeV and Dy_jj > 2.8 1 pass loose, but fail additional cut pT(Hjj)<25. 2 pass tight selection.
Definition at line 337 of file HiggsTemplateCrossSections.cc.
References funct::abs(), EgHLTOffHistBins_cfi::mass, and DiDispStaMuonMonitor_cfi::pt.
Referenced by getStage1Category().
|
inline |
VBF topology selection Stage1.1 0 = fail loose selection: m_jj > 350 GeV 1 pass loose, but fail additional cut pT(Hjj)<25. 2 pass pT(Hjj)>25 selection 3 pass tight (m_jj>700 GeV), but fail additional cut pT(Hjj)<25. 4 pass pT(Hjj)>25 selection.
Definition at line 349 of file HiggsTemplateCrossSections.cc.
References EgHLTOffHistBins_cfi::mass, and DiDispStaMuonMonitor_cfi::pt.
Referenced by getStage1_1_Category().
|
inline |
VBF topology selection for Stage1.1 Fine 0 = fail loose selection: m_jj > 350 GeV 1 pass loose, but fail additional cut pT(Hjj)<25. 2 pass pT(Hjj)>25 selection 3 pass 700<m_jj<1000 GeV, but fail additional cut pT(Hjj)<25. 4 pass pT(Hjj)>25 selection 5 pass 1000<m_jj<1500 GeV, but fail additional cut pT(Hjj)<25. 6 pass pT(Hjj)>25 selection 7 pass m_jj>1500 GeV, but fail additional cut pT(Hjj)<25. 8 pass pT(Hjj)>25 selection.
Definition at line 368 of file HiggsTemplateCrossSections.cc.
References EgHLTOffHistBins_cfi::mass, and DiDispStaMuonMonitor_cfi::pt.
Referenced by getStage1_1_Fine_Category().
|
private |
Definition at line 867 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 867 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 868 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 868 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 865 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 867 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 866 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 866 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 863 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 864 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 864 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 865 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 862 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent(), error(), and printClassificationSummary().
|
private |
Definition at line 861 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), classifyEvent(), init(), and setHiggsProdMode().
|
private |
Definition at line 860 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent(), init(), and printClassificationSummary().
|
private |
Definition at line 859 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and init().