Base class to hold information for ttbar event interpretation. More...
#include "AnalysisDataFormats/TopObjects/interface/TtEvent.h"
Classes | |
struct | HypoClassKeyStringToEnum |
a lightweight map for selection type string label and enum value More... | |
Public Types | |
enum | HypoClassKey { kGeom, kWMassMaxSumPt, kMaxSumPtWMass, kGenMatch, kMVADisc, kKinFit, kKinSolution, kWMassDeltaTopMass, kHitFit } |
supported classes of event hypotheses More... | |
typedef std::pair< reco::CompositeCandidate, std::vector< int > > | HypoCombPair |
pair of hypothesis and lepton jet combinatorics for a given hypothesis More... | |
Public Member Functions | |
void | addEventHypo (const HypoClassKey &key, const HypoCombPair &hyp) |
add new hypotheses More... | |
int | correspondingHypo (const std::string &key1, const unsigned &hyp1, const std::string &key2) const |
return the hypothesis in hypothesis class 'key2', which corresponds to hypothesis 'hyp1' in hypothesis class 'key1' More... | |
int | correspondingHypo (const HypoClassKey &key1, const unsigned &hyp1, const HypoClassKey &key2) const |
return the hypothesis in hypothesis class 'key2', which corresponds to hypothesis 'hyp1' in hypothesis class 'key1' More... | |
const reco::CompositeCandidate & | eventHypo (const HypoClassKey &key, const unsigned &cmb=0) const |
double | fitChi2 (const unsigned &cmb=0) const |
return the chi2 of the kinematic fit of hypothesis 'cmb' if available; -1 else More... | |
double | fitProb (const unsigned &cmb=0) const |
return the fit probability of hypothesis 'cmb' if available; -1 else More... | |
const edm::RefProd< TtGenEvent > & | genEvent () const |
get TtGenEvent More... | |
double | genMatchSumDR (const unsigned &cmb=0) const |
return the sum dr of the generator match if available; -1 else More... | |
double | genMatchSumPt (const unsigned &cmb=0) const |
return the sum pt of the generator match if available; -1 else More... | |
double | hitFitChi2 (const unsigned &cmb=0) const |
return the hitfit chi2 of hypothesis 'cmb' if available; -1 else More... | |
double | hitFitMT (const unsigned &cmb=0) const |
return the hitfit top mass of hypothesis 'cmb' if available; -1 else More... | |
double | hitFitProb (const unsigned &cmb=0) const |
return the hitfit probability of hypothesis 'cmb' if available; -1 else More... | |
double | hitFitSigMT (const unsigned &cmb=0) const |
return the hitfit top mass uncertainty of hypothesis 'cmb' if available; -1 else More... | |
bool | isHypoAvailable (const std::string &key, const unsigned &cmb=0) const |
bool | isHypoAvailable (const HypoClassKey &key, const unsigned &cmb=0) const |
check if hypothesis 'cmb' is available within the hypothesis class More... | |
bool | isHypoClassAvailable (const std::string &key) const |
check if hypothesis class 'key' was added to the event structure More... | |
bool | isHypoClassAvailable (const HypoClassKey &key) const |
check if hypothesis class 'key' was added to the event structure More... | |
bool | isHypoValid (const std::string &key, const unsigned &cmb=0) const |
check if hypothesis 'cmb' within the hypothesis class was valid; if not it lead to an empty CompositeCandidate More... | |
bool | isHypoValid (const HypoClassKey &key, const unsigned &cmb=0) const |
check if hypothesis 'cmb' within the hypothesis class was valid; if not it lead to an empty CompositeCandidate More... | |
std::vector< int > | jetLeptonCombination (const std::string &key, const unsigned &cmb=0) const |
return the vector of jet lepton combinatorics for a given hypothesis and class More... | |
std::vector< int > | jetLeptonCombination (const HypoClassKey &key, const unsigned &cmb=0) const |
return the vector of jet lepton combinatorics for a given hypothesis and class More... | |
std::pair< WDecay::LeptonType, WDecay::LeptonType > | lepDecays () const |
get leptonic decay channels More... | |
double | mvaDisc (const unsigned &cmb=0) const |
return the mva discriminant value of hypothesis 'cmb' if available; -1 else More... | |
std::string | mvaMethod () const |
return the label of the mva method in use for the jet parton association (if kMVADisc is not available the string is empty) More... | |
unsigned int | numberOfAvailableHypoClasses () const |
return number of available hypothesis classes More... | |
unsigned int | numberOfAvailableHypos (const std::string &key) const |
return number of available hypotheses within a given hypothesis class More... | |
unsigned int | numberOfAvailableHypos (const HypoClassKey &key) const |
return number of available hypotheses within a given hypothesis class More... | |
int | numberOfConsideredJets (const std::string &key) const |
return number of jets that were considered when building a given hypothesis More... | |
int | numberOfConsideredJets (const HypoClassKey &key) const |
return number of jets that were considered when building a given hypothesis More... | |
void | printParticle (edm::LogInfo &log, const char *name, const reco::Candidate *cand) const |
print pt, eta, phi, mass of a given candidate into an existing LogInfo More... | |
void | setFitChi2 (const std::vector< double > &val) |
set chi2 of kKinFit hypothesis More... | |
void | setFitProb (const std::vector< double > &val) |
set fit probability of kKinFit hypothesis More... | |
void | setGenEvent (const edm::Handle< TtGenEvent > &evt) |
set TtGenEvent More... | |
void | setGenMatchSumDR (const std::vector< double > &val) |
set sum dr of kGenMatch hypothesis More... | |
void | setGenMatchSumPt (const std::vector< double > &val) |
set sum pt of kGenMatch hypothesis More... | |
void | setHitFitChi2 (const std::vector< double > &val) |
set chi2 of kHitFit hypothesis More... | |
void | setHitFitMT (const std::vector< double > &val) |
set fitted top mass of kHitFit hypothesis More... | |
void | setHitFitProb (const std::vector< double > &val) |
set fit probability of kHitFit hypothesis More... | |
void | setHitFitSigMT (const std::vector< double > &val) |
set fitted top mass uncertainty of kHitFit hypothesis More... | |
void | setLepDecays (const WDecay::LeptonType &lepDecTop1, const WDecay::LeptonType &lepDecTop2) |
set leptonic decay channels More... | |
void | setMvaDiscriminators (const std::vector< double > &val) |
set mva discriminant values of kMVADisc hypothesis More... | |
void | setMvaMethod (const std::string &name) |
set label of mva method for kMVADisc hypothesis More... | |
void | setNumberOfConsideredJets (const HypoClassKey &key, const unsigned int nJets) |
set number of jets considered when building a given hypothesis More... | |
const reco::Candidate * | topPair (const std::string &key, const unsigned &cmb=0) const |
get combined 4-vector of top and topBar of the given hypothesis More... | |
const reco::Candidate * | topPair (const HypoClassKey &key, const unsigned &cmb=0) const |
get combined 4-vector of top and topBar of the given hypothesis More... | |
const math::XYZTLorentzVector * | topPair () const |
get combined 4-vector of top and topBar from the TtGenEvent More... | |
TtEvent () | |
empty constructor More... | |
virtual | ~TtEvent () |
default destructor More... | |
Protected Member Functions | |
HypoClassKey | hypoClassKeyFromString (const std::string &label) const |
return the corresponding enum value from a string More... | |
Protected Attributes | |
std::map< HypoClassKey, std::vector< HypoCombPair > > | evtHyp_ |
std::vector< double > | fitChi2_ |
result of kinematic fit More... | |
std::vector< double > | fitProb_ |
result of kinematic fit More... | |
edm::RefProd< TtGenEvent > | genEvt_ |
reference to TtGenEvent (has to be kept in the event!) More... | |
std::vector< double > | genMatchSumDR_ |
result of gen match More... | |
std::vector< double > | genMatchSumPt_ |
result of gen match More... | |
std::vector< double > | hitFitChi2_ |
std::vector< double > | hitFitMT_ |
result of hitfit More... | |
std::vector< double > | hitFitProb_ |
std::vector< double > | hitFitSigMT_ |
std::pair< WDecay::LeptonType, WDecay::LeptonType > | lepDecays_ |
leptonic decay channels More... | |
std::vector< double > | mvaDisc_ |
MVA discriminants. More... | |
std::string | mvaMethod_ |
label of the MVA method More... | |
std::map< HypoClassKey, int > | nJetsConsidered_ |
number of jets considered when building the hypotheses More... | |
Base class to hold information for ttbar event interpretation.
The structure holds information for ttbar event interpretation. All event hypotheses of different classes (user defined during production) and a reference to the TtGenEvent (if available). It provides access and administration.
typedef std::pair<reco::CompositeCandidate, std::vector<int> > TtEvent::HypoCombPair |
supported classes of event hypotheses
Enumerator | |
---|---|
kGeom | |
kWMassMaxSumPt | |
kMaxSumPtWMass | |
kGenMatch | |
kMVADisc | |
kKinFit | |
kKinSolution | |
kWMassDeltaTopMass | |
kHitFit |
Definition at line 31 of file TtEvent.h.
|
inlinevirtual |
|
inline |
add new hypotheses
Definition at line 121 of file TtEvent.h.
References crabWrapper::key.
|
inline |
return the hypothesis in hypothesis class 'key2', which corresponds to hypothesis 'hyp1' in hypothesis class 'key1'
Definition at line 102 of file TtEvent.h.
References correspondingHypo().
Referenced by correspondingHypo().
int TtEvent::correspondingHypo | ( | const HypoClassKey & | key1, |
const unsigned & | hyp1, | ||
const HypoClassKey & | key2 | ||
) | const |
return the hypothesis in hypothesis class 'key2', which corresponds to hypothesis 'hyp1' in hypothesis class 'key1'
Definition at line 8 of file TtEvent.cc.
References jetLeptonCombination(), and numberOfAvailableHypos().
|
inline |
get event hypothesis; there can be more hypotheses of a certain class (sorted by quality); per default the best hypothesis is returned
Definition at line 51 of file TtEvent.h.
References edm::first().
Referenced by BoostedTopProducer::produce().
|
inline |
return the chi2 of the kinematic fit of hypothesis 'cmb' if available; -1 else
Definition at line 90 of file TtEvent.h.
Referenced by TtSemiLeptonicEvent::print(), and TtFullHadronicEvent::print().
|
inline |
return the fit probability of hypothesis 'cmb' if available; -1 else
Definition at line 94 of file TtEvent.h.
Referenced by HypothesisAnalyzer::analyze(), TtSemiLeptonicEvent::print(), and TtFullHadronicEvent::print().
|
inline |
get TtGenEvent
Definition at line 53 of file TtEvent.h.
Referenced by TtSemiLeptonicEvent::print(), TtFullLeptonicEvent::print(), and TtFullHadronicEvent::print().
|
inline |
return the sum dr of the generator match if available; -1 else
Definition at line 84 of file TtEvent.h.
Referenced by HypothesisAnalyzer::analyze(), TtSemiLeptonicEvent::print(), TtFullLeptonicEvent::print(), and TtFullHadronicEvent::print().
|
inline |
return the sum pt of the generator match if available; -1 else
Definition at line 82 of file TtEvent.h.
Referenced by TtSemiLeptonicEvent::print(), TtFullLeptonicEvent::print(), and TtFullHadronicEvent::print().
|
inline |
return the hitfit chi2 of hypothesis 'cmb' if available; -1 else
Definition at line 92 of file TtEvent.h.
Referenced by TtSemiLeptonicEvent::print().
|
inline |
return the hitfit top mass of hypothesis 'cmb' if available; -1 else
Definition at line 98 of file TtEvent.h.
Referenced by TtSemiLeptonicEvent::print().
|
inline |
return the hitfit probability of hypothesis 'cmb' if available; -1 else
Definition at line 96 of file TtEvent.h.
Referenced by TtSemiLeptonicEvent::print().
|
inline |
return the hitfit top mass uncertainty of hypothesis 'cmb' if available; -1 else
Definition at line 100 of file TtEvent.h.
Referenced by TtSemiLeptonicEvent::print().
|
protected |
return the corresponding enum value from a string
Definition at line 19 of file TtEvent.cc.
References label.
|
inline |
Definition at line 60 of file TtEvent.h.
References isHypoAvailable().
Referenced by TtEvtBuilder< C >::fillSpecific(), isHypoAvailable(), and main().
|
inline |
check if hypothesis 'cmb' is available within the hypothesis class
Definition at line 62 of file TtEvent.h.
|
inline |
check if hypothesis class 'key' was added to the event structure
Definition at line 56 of file TtEvent.h.
References isHypoClassAvailable().
Referenced by isHypoClassAvailable().
|
inline |
check if hypothesis class 'key' was added to the event structure
Definition at line 58 of file TtEvent.h.
|
inline |
check if hypothesis 'cmb' within the hypothesis class was valid; if not it lead to an empty CompositeCandidate
Definition at line 64 of file TtEvent.h.
References isHypoValid().
Referenced by HypothesisAnalyzer::analyze(), isHypoValid(), main(), TtSemiLeptonicEvent::print(), TtFullLeptonicEvent::print(), and TtFullHadronicEvent::print().
|
inline |
check if hypothesis 'cmb' within the hypothesis class was valid; if not it lead to an empty CompositeCandidate
Definition at line 66 of file TtEvent.h.
|
inline |
return the vector of jet lepton combinatorics for a given hypothesis and class
Definition at line 78 of file TtEvent.h.
References jetLeptonCombination().
Referenced by correspondingHypo(), jetLeptonCombination(), TtSemiLeptonicEvent::print(), TtFullLeptonicEvent::print(), and TtFullHadronicEvent::print().
|
inline |
return the vector of jet lepton combinatorics for a given hypothesis and class
Definition at line 80 of file TtEvent.h.
References edm::second().
|
inline |
get leptonic decay channels
Definition at line 48 of file TtEvent.h.
|
inline |
return the mva discriminant value of hypothesis 'cmb' if available; -1 else
Definition at line 88 of file TtEvent.h.
Referenced by TtSemiLeptonicEvent::print().
|
inline |
return the label of the mva method in use for the jet parton association (if kMVADisc is not available the string is empty)
Definition at line 86 of file TtEvent.h.
Referenced by TtSemiLeptonicEvent::print().
|
inline |
return number of available hypothesis classes
Definition at line 68 of file TtEvent.h.
Referenced by TtSemiLeptonicEvent::print(), TtFullLeptonicEvent::print(), and TtFullHadronicEvent::print().
|
inline |
return number of available hypotheses within a given hypothesis class
Definition at line 70 of file TtEvent.h.
References numberOfAvailableHypos().
Referenced by correspondingHypo(), numberOfAvailableHypos(), TtSemiLeptonicEvent::print(), TtFullLeptonicEvent::print(), and TtFullHadronicEvent::print().
|
inline |
return number of available hypotheses within a given hypothesis class
Definition at line 72 of file TtEvent.h.
|
inline |
return number of jets that were considered when building a given hypothesis
Definition at line 74 of file TtEvent.h.
References numberOfConsideredJets().
Referenced by numberOfConsideredJets(), and TtSemiLeptonicEvent::print().
|
inline |
return number of jets that were considered when building a given hypothesis
Definition at line 76 of file TtEvent.h.
void TtEvent::printParticle | ( | edm::LogInfo & | log, |
const char * | name, | ||
const reco::Candidate * | cand | ||
) | const |
print pt, eta, phi, mass of a given candidate into an existing LogInfo
Definition at line 26 of file TtEvent.cc.
References reco::Candidate::eta(), alignBH_cfg::fixed, reco::Candidate::mass(), reco::Candidate::phi(), and reco::Candidate::pt().
Referenced by TtSemiLeptonicEvent::print(), TtFullLeptonicEvent::print(), and TtFullHadronicEvent::print().
|
inline |
set chi2 of kKinFit hypothesis
Definition at line 133 of file TtEvent.h.
References heppy_batch::val.
|
inline |
set fit probability of kKinFit hypothesis
Definition at line 137 of file TtEvent.h.
References heppy_batch::val.
|
inline |
set TtGenEvent
Definition at line 119 of file TtEvent.h.
|
inline |
set sum dr of kGenMatch hypothesis
Definition at line 127 of file TtEvent.h.
References heppy_batch::val.
|
inline |
set sum pt of kGenMatch hypothesis
Definition at line 125 of file TtEvent.h.
References heppy_batch::val.
|
inline |
set chi2 of kHitFit hypothesis
Definition at line 135 of file TtEvent.h.
References heppy_batch::val.
|
inline |
set fitted top mass of kHitFit hypothesis
Definition at line 141 of file TtEvent.h.
References heppy_batch::val.
|
inline |
set fit probability of kHitFit hypothesis
Definition at line 139 of file TtEvent.h.
References heppy_batch::val.
|
inline |
set fitted top mass uncertainty of kHitFit hypothesis
Definition at line 143 of file TtEvent.h.
References heppy_batch::val.
|
inline |
set leptonic decay channels
Definition at line 117 of file TtEvent.h.
|
inline |
set mva discriminant values of kMVADisc hypothesis
Definition at line 131 of file TtEvent.h.
References heppy_batch::val.
|
inline |
set label of mva method for kMVADisc hypothesis
Definition at line 129 of file TtEvent.h.
References dataset::name.
|
inline |
set number of jets considered when building a given hypothesis
Definition at line 123 of file TtEvent.h.
References crabWrapper::key.
Referenced by TtEvtBuilder< C >::fillSpecific().
|
inline |
get combined 4-vector of top and topBar of the given hypothesis
Definition at line 107 of file TtEvent.h.
References topPair().
Referenced by HypothesisAnalyzer::analyze(), and topPair().
|
inline |
get combined 4-vector of top and topBar of the given hypothesis
Definition at line 109 of file TtEvent.h.
|
inline |
get combined 4-vector of top and topBar from the TtGenEvent
Definition at line 111 of file TtEvent.h.
References nano_cff::genEvent, cmsBatch::log, dataset::name, and topPair().
Referenced by TtSemiLeptonicEvent::print(), TtFullLeptonicEvent::print(), TtFullHadronicEvent::print(), and topPair().
|
protected |
map of hypotheses; for each HypoClassKey a vector of hypothesis and their lepton jet combinatorics are kept
Definition at line 153 of file TtEvent.h.
Referenced by TtSemiLeptonicEvent::print(), TtFullLeptonicEvent::print(), and TtFullHadronicEvent::print().
|
protected |
|
protected |
|
protected |
reference to TtGenEvent (has to be kept in the event!)
Definition at line 150 of file TtEvent.h.
Referenced by TtSemiLeptonicEvent::print(), and TtFullHadronicEvent::print().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |