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... | |
bool | ChLeptonDecay (const Particle &p) |
Return true if particle decays to charged leptons. 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_X (const Jets &jets, const Particle &higgs) |
VBF topology selection Stage1.1 and Stage1.2 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_X_Fine (const Jets &jets, const Particle &higgs) |
VBF topology selection for Stage1.1 and Stage 1.2 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... | |
HTXS::Stage1_2::Category | getStage1_2_Category (const HTXS::HiggsProdMode prodMode, const Particle &higgs, const Jets &jets, const Particle &V) |
Stage-1.2 categorization. More... | |
HTXS::Stage1_2_Fine::Category | getStage1_2_Fine_Category (const HTXS::HiggsProdMode prodMode, const Particle &higgs, const Jets &jets, const Particle &V) |
Stage-1.2 Fine 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_isZ2vv |
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_2_fine_pTjet25 |
Histo1DPtr | hist_stage1_2_fine_pTjet30 |
Histo1DPtr | hist_stage1_2_pTjet25 |
Histo1DPtr | hist_stage1_2_pTjet30 |
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 995 of file HiggsTemplateCrossSections.cc.
|
inline |
Return true if particle decays to charged leptons.
Definition at line 93 of file HiggsTemplateCrossSections.cc.
References AlCaHLTBitMon_ParallelJobs::p.
Referenced by classifyEvent().
|
inline |
Main classificaion method.
Definition at line 122 of file HiggsTemplateCrossSections.cc.
References eostools::cat(), class-composition::children, ChLeptonDecay(), error(), getLastInstance(), getStage0Category(), getStage1_1_Category(), getStage1_1_Fine_Category(), getStage1_2_Category(), getStage1_2_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::Stage1_2::UNKNOWN, HTXS::Stage1_2_Fine::UNKNOWN, HTXS::VH_DECAY_IDENTIFICATION, HTXS::VH_IDENTIFICATION, and HTXS::WH.
|
inline |
Returns the classification object with the error code set. Prints an warning message, and keeps track of number of errors.
Definition at line 104 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 1069 of file HiggsTemplateCrossSections.cc.
|
inline |
Return bin index of x given the provided bin edges. 0=first bin, -1=underflow bin.
Definition at line 348 of file HiggsTemplateCrossSections.cc.
Referenced by BTagWeightCalculator.BTagWeightCalculator::calcJetWeightImpl().
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 410 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent().
|
inline |
Stage-1.1 categorization.
Definition at line 514 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent().
|
inline |
Stage-1_1 categorization.
Definition at line 616 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent().
|
inline |
Stage-1.2 categorization.
Definition at line 719 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent().
|
inline |
Stage-1.2 Fine categorization.
Definition at line 824 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent().
|
inline |
Stage-1 categorization.
Definition at line 426 of file HiggsTemplateCrossSections.cc.
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 75 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 948 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 1095 of file HiggsTemplateCrossSections.cc.
References hist_deltay_jj, hist_dijet_mass, hist_isZ2vv, hist_Njets25, hist_Njets30, hist_pT_Higgs, hist_pT_Hjj, hist_pT_jet1, hist_pT_V, hist_stage0, hist_stage1_2_fine_pTjet25, hist_stage1_2_fine_pTjet30, hist_stage1_2_pTjet25, hist_stage1_2_pTjet30, 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 407 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent().
|
inline |
Whether particle p originates from p2.
Definition at line 59 of file HiggsTemplateCrossSections.cc.
References originateFrom(), AlCaHLTBitMon_ParallelJobs::p, and p2.
|
inline |
Whether particle p originate from any of the ptcls.
Definition at line 44 of file HiggsTemplateCrossSections.cc.
References AlCaHLTBitMon_ParallelJobs::p, and ecalTrigSettings_cff::particles.
Referenced by classifyEvent(), and originateFrom().
|
inline |
Definition at line 1044 of file HiggsTemplateCrossSections.cc.
|
inline |
Return true is particle decays to quarks.
Definition at line 83 of file HiggsTemplateCrossSections.cc.
References AlCaHLTBitMon_ParallelJobs::p.
Referenced by classifyEvent().
|
inline |
Sets the Higgs production mode.
Definition at line 943 of file HiggsTemplateCrossSections.cc.
|
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 358 of file HiggsTemplateCrossSections.cc.
References funct::abs(), singleTopDQM_cfi::jets, EgHLTOffHistBins_cfi::mass, and DiDispStaMuonMonitor_cfi::pt.
|
inline |
VBF topology selection Stage1.1 and Stage1.2 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 370 of file HiggsTemplateCrossSections.cc.
|
inline |
VBF topology selection for Stage1.1 and Stage 1.2 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 389 of file HiggsTemplateCrossSections.cc.
|
private |
Definition at line 1131 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1131 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1133 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1132 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1132 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1129 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1131 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1130 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1130 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1125 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1128 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1128 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1127 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1127 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1126 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1126 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1129 of file HiggsTemplateCrossSections.cc.
Referenced by initializeHistos().
|
private |
Definition at line 1124 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent(), and error().
|
private |
Definition at line 1123 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent(), and init().
|
private |
Definition at line 1122 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent(), and init().
|
private |
Definition at line 1121 of file HiggsTemplateCrossSections.cc.
Referenced by init().