ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/dhidas/OSUAnalysis/Tools/interface/TopPairCandidateTutorial.h
Revision: 1.1.1.1 (vendor branch)
Committed: Thu Dec 1 16:28:48 2011 UTC (13 years, 5 months ago) by dhidas
Content type: text/plain
Branch: dhidas, MAIN
CVS Tags: START, HEAD
Changes since 1.1: +0 -0 lines
Log Message:
osu copy modified

File Contents

# User Rev Content
1 dhidas 1.1 /*
2     * TopPairCandidateTutorial.h
3     *
4     */
5    
6     #ifndef TOPPAIRCANDIDATETUTORIAL_H_
7     #define TOPPAIRCANDIDATETUTORIAL_H_
8    
9     #include <boost/shared_ptr.hpp>
10     #include "Event.h"
11     #include "RecoObjects/Particle.h"
12     #include "RecoObjects/Electron.h"
13     #include "RecoObjects/Jet.h"
14     #include "Taggers/ConversionTagger.h"
15     #include "TtbarHypothesis.h"
16     #include "TopPairEventCandidate.h"
17    
18    
19     namespace BAT {
20    
21    
22     class TopPairCandidateTutorial: public Event {
23    
24     protected:
25     static double const matched_angle;// = 0.945666;
26     static double const matched_angle_sigma;// = 0.311091;
27     static double const matched_leptonic_top_mass;// = 178.377;
28     static double const matched_leptonic_top_mass_sigma;// = 31.050;
29     static double const matched_hadronic_W_mass;// = 89.9153;
30     static double const matched_hadronic_W_mass_sigma;// = 13.8711;
31     static double const matched_hadronic_top_mass;// = 182.191;
32     static double const matched_hadronic_top_mass_sigma;// = 22.1484;
33     static double const matched_ptratio;// = 0.18552;
34     static double const matched_ptratio_sigma;// = 0.401973;
35     static double const matched_pt_ttbarSystem;// = 0.0760939;
36     static double const matched_pt_ttbarSystem_sigma;// = 0.0700391;
37     static double const matched_HTSystem;// = 1;
38     static double const matched_HTSystem_sigma;// = 0.1;
39     static double const W_mass;
40    
41     ElectronPointer electronFromW;
42     JetPointer leptonicBJet, hadronicBJet, jet1FromW, jet2FromW;
43     ParticlePointer neutrino1, neutrino2, leptonicW1, leptonicW2, hadronicW, leptonicTop1, leptonicTop2, hadronicTop,
44     ttbarResonance;
45     unsigned short selectedNeutrino, currentSelectedNeutrino, hadronicBIndex, leptonicBIndex, jet1FromWIndex,
46     jet2FromWIndex;
47     bool doneReconstruction;
48     ConversionTaggerPointer conversionTagger;
49     bool doneConversionTagging;
50     std::vector<TtbarHypothesisPointer> solutions;
51     compare_totalChi2 compareSolutions;
52     public:
53     static NeutrinoSelectionCriterion::value usedNeutrinoSelection;
54     static TTbarReconstructionCriterion::value usedTTbarReconstruction;
55     TopPairCandidateTutorial();
56     TopPairCandidateTutorial(const Event& event);
57     virtual ~TopPairCandidateTutorial();
58    
59     virtual const JetPointer getLeptonicBJet() const;
60     virtual const JetPointer getHadronicBJet() const;
61     virtual const JetPointer getJet1FromHadronicW() const;
62     virtual const JetPointer getJet2FromHadronicW() const;
63     virtual const ElectronPointer getElectronFromWDecay() const;
64     virtual const ParticlePointer getNeutrinoFromWDecay() const;
65     virtual const ParticlePointer getLeptonicW() const;
66     // virtual const ParticlePointer getHadronicW() const;
67     virtual const ParticlePointer getLeptonicTop() const;
68     virtual const ParticlePointer getHadronicTop() const;
69     virtual const ParticlePointer getResonance() const;
70    
71     virtual bool passesSelectionStep(TTbarEPlusJetsSelection::Step step) const;
72     virtual bool passesSelectionStepUpTo(TTbarEPlusJetsSelection::Step upToStep) const;
73     virtual bool passesNMinus1(TTbarEPlusJetsSelection::Step omittedStep) const;
74     virtual bool passesRelIsoSelection() const;
75     virtual bool passesRelIsoControlSelection() const;
76     virtual bool passesPFIsoSelection() const;
77     virtual bool passesPFIsoControlSelection() const;
78     virtual bool passesAntiIsolationSelection() const;
79    
80     virtual bool passesConversionSelection() const;
81    
82     virtual bool passesScrapingFilter() const;
83     virtual bool passesHighLevelTrigger() const;
84     virtual bool hasOneGoodPrimaryVertex() const;
85     virtual bool hasOnlyOneGoodIsolatedElectron() const;
86     virtual bool isolatedElectronDoesNotComeFromConversion() const;
87     virtual bool isolatedElectronNotTaggedAsFromConversion() const;
88     virtual bool hasNoIsolatedMuon() const;
89    
90     virtual bool hasAtLeastOneGoodJet() const;
91     virtual bool hasAtLeastTwoGoodJets() const;
92     virtual bool hasAtLeastThreeGoodJets() const;
93     virtual bool hasAtLeastFourGoodJets() const;
94    
95     virtual bool isNotAZBosonEvent() const;
96     virtual bool passesFullTTbarEPlusJetSelection() const;
97     // virtual bool hasIsolatedElectronInBarrelRegion() const;
98    
99     virtual void reconstructTTbar(ElectronPointer electron);
100     // virtual void reconstructUsingSubjets();
101     // virtual void reconstructUsingMCTruth();
102    
103     virtual double calculateTopMassDifference(unsigned short neutrinoSolution) const;
104     virtual double getLeptonicChi2(unsigned short neutrinoSolution) const;
105     virtual double getLeptonicChi2(double topMass, double angle) const;
106     virtual double getHadronicChi2() const;
107     virtual double getGlobalChi2(unsigned short neutrinoSolution) const;
108     virtual double getTotalChi2(unsigned short neutrinoSolution) const;
109     virtual double getTotalChi2();
110    
111     virtual double M3() const;
112     virtual double mttbar() const;
113     virtual double sumPt() const;
114     virtual double HT(unsigned short jetLimit) const;
115     virtual double fullHT() const;
116     virtual double transverseWmass(const ElectronPointer electron) const;
117     virtual double HTSystem() const;
118     virtual double PtRatio() const;
119     virtual double PtTtbarSystem(unsigned short neutrinoSolution) const;
120     virtual const boost::array<double, 2> computeNeutrinoPz();
121     virtual void reconstructNeutrinos();
122     // virtual bool hasNextJetCombination();
123     // virtual void selectNextJetCombination();
124     virtual void inspectReconstructedEvent() const;
125     // virtual unsigned int NJet() const;
126     virtual const std::vector<TtbarHypothesisPointer>& Solutions() const;
127    
128     protected:
129     void throwExpeptionIfNotReconstructed() const;
130     virtual void selectNeutrinoSolution();
131     virtual void fillHypotheses();
132     virtual const TtbarHypothesisPointer fillHypothesis(unsigned short int neutrinoSolution);
133    
134     };
135    
136     }
137    
138     #endif /* TOPPAIRCANDIDATETUTORIAL_H_ */