|
|
Go to the documentation of this file.
15 log <<
"++++++++++++++++++++++++++++++++++++++++++++++++++ \n";
19 log <<
" TtGenEvent not available! \n";
21 log <<
" TtGenEvent says: ";
24 else if (this->
genEvent()->isFullHadronic())
25 log <<
"Fully Hadronic TtBar";
26 else if (this->
genEvent()->isFullLeptonic())
27 log <<
"Fully Leptonic TtBar";
28 else if (this->
genEvent()->isSemiLeptonic()) {
29 log <<
"Semi-leptonic TtBar, ";
30 switch (this->
genEvent()->semiLeptonicChannel()) {
53 log <<
" - JetLepComb: ";
76 typedef std::map<HypoClassKey, std::vector<HypoCombPair> >::const_iterator EventHypo;
77 for (EventHypo hyp =
evtHyp_.begin(); hyp !=
evtHyp_.end(); ++hyp) {
80 log <<
"-------------------------------------------------- \n";
86 log <<
" WMassMaxSumPt";
89 log <<
" MaxSumPtWMass";
101 log <<
" KinSolution not (yet) applicable to TtSemiLeptonicEvent --> skipping";
104 log <<
" WMassDeltaTopMass";
110 log <<
" Unknown TtEvent::HypoClassKey provided --> skipping";
113 log <<
"-Hypothesis: \n";
118 log <<
" * Number of stored jet combinations: " << nOfHyp <<
"\n";
120 log <<
" The following was found to be the best one:\n";
125 for (
unsigned cmb = 0; cmb < nOfHyp; cmb++) {
128 log <<
" * Not valid! \n";
132 log <<
" * JetLepComb:";
134 for (
unsigned int iJet = 0; iJet <
jets.size(); iJet++) {
135 log <<
" " <<
jets[iJet] <<
" ";
146 <<
" * Discrim.: " << this->
mvaDisc(cmb) <<
" \n";
149 log <<
" * Chi^2 : " << this->
fitChi2(cmb) <<
" \n"
150 <<
" * Prob(Chi^2): " << this->
fitProb(cmb) <<
" \n";
154 <<
" * Prob(Chi^2): " << this->
hitFitProb(cmb) <<
" \n"
162 log <<
" * Candidates (pt; eta; phi; mass):\n";
184 log <<
"++++++++++++++++++++++++++++++++++++++++++++++++++";
edm::RefProd< TtGenEvent > genEvt_
reference to TtGenEvent (has to be kept in the event!)
double hitFitSigMT(const unsigned &cmb=0) const
return the hitfit top mass uncertainty of hypothesis 'cmb' if available; -1 else
const int numberOfRealNeutrinoSolutions(const HypoClassKey &key) const
get number of real neutrino solutions for a given hypo class
const reco::GenParticle * hadronicDecayB() const
get hadronic b of the TtGenEvent
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 Composite...
int numberOfConsideredJets(const std::string &key) const
return number of jets that were considered when building a given hypothesis
std::map< HypoClassKey, std::vector< HypoCombPair > > evtHyp_
double genMatchSumDR(const unsigned &cmb=0) const
return the sum dr of the generator match if available; -1 else
const reco::GenParticle * hadronicDecayQuark() const
get hadronic light quark of the TtGenEvent
double hitFitMT(const unsigned &cmb=0) const
return the hitfit top mass of hypothesis 'cmb' if available; -1 else
double fitChi2(const unsigned &cmb=0) const
return the chi2 of the kinematic fit of hypothesis 'cmb' if available; -1 else
double fitProb(const unsigned &cmb=0) const
return the fit probability of hypothesis 'cmb' if available; -1 else
const reco::GenParticle * singleNeutrino() const
get neutrino of the TtGenEvent
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
unsigned int numberOfAvailableHypos(const std::string &key) const
return number of available hypotheses within a given hypothesis class
const reco::GenParticle * singleLepton() const
get lepton top of the TtGenEvent
double mvaDisc(const unsigned &cmb=0) const
return the mva discriminant value of hypothesis 'cmb' if available; -1 else
const edm::RefProd< TtGenEvent > & genEvent() const
get TtGenEvent
void printParticle(edm::LogInfo &log, const char *name, const reco::Candidate *cand)
print pt, eta, phi, mass of a given candidate into an existing LogInfo
const reco::GenParticle * hadronicDecayQuarkBar() const
get hadronic light quark of the TtGenEvent
HypoClassKey
supported classes of event hypotheses
double hitFitProb(const unsigned &cmb=0) const
return the hitfit probability of hypothesis 'cmb' if available; -1 else
const reco::GenParticle * hadronicDecayTop() const
get hadronic top of the TtGenEvent
const reco::GenParticle * leptonicDecayW() const
get leptonic W of the TtGenEvent
double hitFitChi2(const unsigned &cmb=0) const
return the hitfit chi2 of hypothesis 'cmb' if available; -1 else
const reco::GenParticle * leptonicDecayB() const
get leptonic b of the TtGenEvent
const math::XYZTLorentzVector * topPair() const
get combined 4-vector of top and topBar from the TtGenEvent
const reco::GenParticle * leptonicDecayTop() const
get leptonic top of the TtGenEvent
std::string mvaMethod() const
return the label of the mva method in use for the jet parton association (if kMVADisc is not availabl...
unsigned int numberOfAvailableHypoClasses() const
return number of available hypothesis classes
void print(const int verbosity=1) const
const reco::GenParticle * hadronicDecayW() const
get hadronic W of the TtGenEvent
double genMatchSumPt(const unsigned &cmb=0) const
return the sum pt of the generator match if available; -1 else