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 GenParticle *ptcl, int pdgID) |
Checks whether the input particle has a child with a given PDGID. More... | |
bool | hasParent (const GenParticle *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... | |
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... | |
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 |
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 437 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, ResonanceBuilder::mass, PFRecoTauDiscriminationByIsolation_cfi::offset, EnergyCorrector::pt, and mps_merge::weight.
|
inline |
Main classificaion method.
Definition at line 101 of file HiggsTemplateCrossSections.cc.
References eostools::cat(), class-composition::child, class-composition::children, error(), event(), getLastInstance(), getStage0Category(), getStage1Category(), HTXS::GG2ZH, hasChild(), hasParent(), HTXS::HIGGS_DECAY_IDENTIFICATION, HTXS::HIGGS_IDENTIFICATION, HTXS::HS_VTX_IDENTIFICATION, isVH(), fwrapper::jets, m_errorCount, m_HiggsProdMode, originateFrom(), AlCaHLTBitMon_ParallelJobs::p, HadronAndPartonSelector_cfi::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::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 85 of file HiggsTemplateCrossSections.cc.
References eostools::cat(), m_errorCount, and mps_check::msg.
Referenced by argparse.ArgumentParser::_get_option_tuples(), python.rootplot.argparse.ArgumentParser::_get_option_tuples(), argparse.ArgumentParser::_parse_known_args(), python.rootplot.argparse.ArgumentParser::_parse_known_args(), argparse.ArgumentParser::_parse_optional(), python.rootplot.argparse.ArgumentParser::_parse_optional(), argparse.ArgumentParser::_read_args_from_files(), python.rootplot.argparse.ArgumentParser::_read_args_from_files(), argparse.ArgumentParser::add_subparsers(), python.rootplot.argparse.ArgumentParser::add_subparsers(), Page1Parser.Page1Parser::check_for_whole_start_tag(), classifyEvent(), argparse.ArgumentParser::parse_args(), python.rootplot.argparse.ArgumentParser::parse_args(), argparse.ArgumentParser::parse_known_args(), and python.rootplot.argparse.ArgumentParser::parse_known_args().
|
inlineoverride |
Definition at line 495 of file HiggsTemplateCrossSections.cc.
References create_public_lumi_plots::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 287 of file HiggsTemplateCrossSections.cc.
References mps_fire::i.
Referenced by BTagWeightCalculator.BTagWeightCalculator::calcJetWeightImpl(), and getStage1Category().
follow a "propagating" particle and return its last instance
Definition at line 36 of file HiggsTemplateCrossSections.cc.
References hasChild().
Referenced by classifyEvent().
|
inline |
Stage-0 HTXS categorization.
Definition at line 307 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 categorization.
Definition at line 323 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(), ResonanceBuilder::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, pat::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 63 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 70 of file HiggsTemplateCrossSections.cc.
References class-composition::parent, parents, and HadronAndPartonSelector_cfi::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 400 of file HiggsTemplateCrossSections.cc.
References HTXS::BBH, HTXS::GG2ZH, HTXS::GGF, initializeHistos(), m_HiggsProdMode, m_sumw, HTXS::QQ2ZH, HTXS::TH, HTXS::TTH, HTXS::UNKNOWN, HTXS::VBF, and HTXS::WH.
|
inline |
Definition at line 507 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 304 of file HiggsTemplateCrossSections.cc.
References HTXS::GG2ZH, HTXS::QQ2ZH, and HTXS::WH.
Referenced by classifyEvent(), and getStage1Category().
|
inline |
Whether particle p originate from any of the ptcls.
Definition at line 45 of file HiggsTemplateCrossSections.cc.
References HadronAndPartonSelector_cfi::particles.
Referenced by classifyEvent(), and originateFrom().
|
inline |
Whether particle p originates from p2.
Definition at line 58 of file HiggsTemplateCrossSections.cc.
References originateFrom().
|
inline |
Definition at line 473 of file HiggsTemplateCrossSections.cc.
References HTXS::HIGGS_IDENTIFICATION, HTXS::HS_VTX_IDENTIFICATION, m_errorCount, HTXS::MOMENTUM_CONSERVATION, simpleEdmComparison::numEvents, 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 77 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent(), getStage0Category(), and getStage1Category().
|
inline |
Sets the Higgs production mode.
Definition at line 395 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 296 of file HiggsTemplateCrossSections.cc.
References funct::abs(), ResonanceBuilder::mass, and EnergyCorrector::pt.
Referenced by getStage1Category().
|
private |
Definition at line 535 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 535 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 536 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 536 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 533 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 535 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 534 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 534 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 531 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 532 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 532 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 533 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and initializeHistos().
|
private |
Definition at line 530 of file HiggsTemplateCrossSections.cc.
Referenced by classifyEvent(), error(), and printClassificationSummary().
|
private |
Definition at line 529 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), classifyEvent(), init(), and setHiggsProdMode().
|
private |
Definition at line 528 of file HiggsTemplateCrossSections.cc.
Referenced by analyze(), finalize(), and init().