ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/VHbbAnalysis/VHbbDataFormats/interface/VHbbEvent.h
(Generate patch)

Comparing UserCode/VHbbAnalysis/VHbbDataFormats/interface/VHbbEvent.h (file contents):
Revision 1.2 by tboccali, Mon Jul 18 12:59:51 2011 UTC vs.
Revision 1.33 by arizzi, Wed May 9 15:55:32 2012 UTC

# Line 8 | Line 8
8   class VHbbEvent{
9   public:
10  
11  class ParticleMCInfo {
12  public:
13    ParticleMCInfo(): status(-99), momid(-99), gmomid(-99), charge(-1){}
14  public:
15    int status;
16    int momid;
17    int gmomid;
18    int charge;
19    TLorentzVector fourMomentum;
20    //    int ndau;
21    std::vector<int> dauid;
22    std::vector<TLorentzVector> dauFourMomentum;    
23  };
11  
12    class SimpleJet {
13      public:
14 <    SimpleJet(): flavour(-99), tche(-99), tchp(-99), jpb(-99), jp(-99),
15 <      ssvhe(-99), csv(-99), csvmva(-99), ntracks(-99), charge(-99),
14 >    SimpleJet(): flavour(-99), isSemiLept(-99), isSemiLeptMCtruth(-99), SoftLeptpdgId(-99), SoftLeptIdlooseMu(-99), SoftLeptId95(-99), SoftLeptPt(-99), SoftLeptdR(-99), SoftLeptptRel(-99),  SoftLeptRelCombIso(-99),   tche(-99), tchp(-99), jpb(-99), jp(-99),
15 >      ssvhe(-99), csv(-99), csvmva(-99), csvivf(-99), cmva(-99),
16 >      vtxMass(-99), vtx3dL(-99), vtx3deL(-99), vtxNTracks(-99), vtxProb(-99),
17 >      ntracks(-99), charge(-99),jecunc(-99),
18 >      chargedHadronEFraction(-99), neutralHadronEFraction(-99), chargedEmEFraction(-99), neutralEmEFraction(-99),nConstituents(-99), ptRaw(-99), ptLeadTrack(-99), jetArea(-99),
19        bestMCid(-99), bestMCmomid(-99){}
20    public:
21 <    int flavour;
22 <    float tche,tchp, jpb,jp , ssvhe, csv, csvmva;
21 >    double Pt() {return p4.Pt();}
22 >    int flavour, isSemiLept, isSemiLeptMCtruth, SoftLeptpdgId , SoftLeptIdlooseMu, SoftLeptId95;
23 >    float SoftLeptPt, SoftLeptdR, SoftLeptptRel, SoftLeptRelCombIso;
24 >    float tche,tchp, jpb,jp , ssvhe, csv, csvmva,csvivf,cmva;
25 >    // CSV vertex info
26 >    float vtxMass, vtx3dL, vtx3deL, vtxNTracks, vtxProb;
27 >    TVector3 vtxPosition;
28 >    TLorentzVector  vtxP4;
29 >    std::vector<unsigned int> vtxTrackIds, btagTrackIds, csvTrackIds;
30 >    int csvNTracks, btagNTracks;
31      int ntracks;
32      float charge;
33 <    TLorentzVector fourMomentum;
33 >    TLorentzVector p4;
34      TLorentzVector chargedTracksFourMomentum;
35  
36 +    // jec uncertainty
37 +
38 +    float jecunc;
39 +    // energy fractions as in
40 +    /*    //chargedHadronEnergyFraction (relative to uncorrected jet energy)
41 +          float chargedHadronEnergyFraction() const {return chargedHadronEnergy()/((jecSetsAvailable() ? jecFactor(0) : 1.)*energy());}
42 +          /// neutralHadronEnergyFraction (relative to uncorrected jet energy)
43 +          float neutralHadronEnergyFraction() const {return neutralHadronEnergy()/((jecSetsAvailable() ? jecFactor(0) : 1.)*energy());}
44 +          /// chargedEmEnergyFraction (relative to uncorrected jet energy)
45 +          float chargedEmEnergyFraction()     const {return chargedEmEnergy()/((jecSetsAvailable() ? jecFactor(0) : 1.)*energy());}
46 +          /// neutralEmEnergyFraction (relative to uncorrected jet energy)
47 +          float neutralEmEnergyFraction()     const {return neutralEmEnergy()/((jecSetsAvailable() ? jecFactor(0) : 1.)*energy());}
48 +    */
49 +
50 +    float chargedHadronEFraction, neutralHadronEFraction, chargedEmEFraction, neutralEmEFraction;
51 +    int nConstituents;
52 +    float ptRaw,ptLeadTrack;  
53 +    float jetArea;  
54 +
55 +    //MC parton matching
56 +    TLorentzVector bestMCp4,bestMCp4mom;
57      int bestMCid, bestMCmomid;
58      // new
59      TVector2 tVector;
60 +    //Scale factor
61 +    float SF_CSVL;
62 +    float SF_CSVM;
63 +    float SF_CSVT;
64 +    float SF_CSVLerr;
65 +    float SF_CSVMerr;
66 +    float SF_CSVTerr;
67 +    
68    };
69  
70  
# Line 46 | Line 73 | class VHbbEvent{
73      HardJet(): constituents(-99){}
74    public:
75      int constituents;
76 <    TLorentzVector fourMomentum;
76 >    TLorentzVector p4;
77      std::vector<TLorentzVector> subFourMomentum;
78      std::vector<float> etaSub, phiSub;
79    };
# Line 57 | Line 84 | class VHbbEvent{
84      METInfo(): sumEt(-99), metSig(-99), eLong(-99){}
85    public:
86      float sumEt, metSig, eLong;
87 <    TLorentzVector fourMomentum;
87 >    TLorentzVector p4;
88    };
89  
90    class MuonInfo {
91    public:
92 <    MuonInfo(): charge(-99),tIso(-99), eIso(-99), hIso(-99),
92 >    MuonInfo(): charge(-99),tIso(-99), eIso(-99), hIso(-99),pfChaIso(-99),pfChaPUIso(99), pfPhoIso(-99), pfNeuIso(-99),
93        acop(-99), ipDb(-99), ipErrDb(-99), zPVPt(-99),zPVProb(-99), chi2(-99), globChi2(-99),
94 <      cat(-99), nHits(-99), nPixelHits(-99), globNHits(-99),validMuStations(-99),
94 >      cat(-99), nValidTracker(-99), nValidPixel(-99), nMatches(-99),nHits(-99), nPixelHits(-99), globNHits(-99),validMuStations(-99),emEnergy(-99), hadEnergy(-99),nValidLayers(-99),isPF(-99),
95        mcId(-99), mcMomId(-99), mcgMomId(-99){}
96    public:
97 <    TLorentzVector fourMomentum;
97 >    TLorentzVector p4;
98      int charge;
99 <    float tIso, eIso, hIso, acop, ipDb, ipErrDb, zPVPt,zPVProb, chi2, globChi2;
100 <    int cat, nHits, nPixelHits, globNHits, validMuStations;
99 >    float tIso, eIso, hIso, pfChaIso,pfChaPUIso,  pfPhoIso,pfNeuIso,acop, ipDb, ipErrDb, zPVPt,zPVProb, chi2, globChi2;
100 >    int cat, nValidTracker, nValidPixel, nMatches,nHits, nPixelHits, globNHits, validMuStations;
101 >    float emEnergy, hadEnergy;
102      TLorentzVector mcFourMomentum;
103      int mcId, mcMomId, mcgMomId;
104 +    int isPF,nValidLayers;
105 +    std::vector< int > hltMatchedBits;
106    };
107  
108    class ElectronInfo {
109    public:
110      ElectronInfo() : scEta(-99), scPhi(-99), charge(-99),
111 <    tIso(-99), eIso(-99), hIso(-99),
112 <      acop(-99), id95(-99),id85(-99),id70(-99),id95r(-99),
113 <      id70r(-99), id85r(-99),mcId(-99), mcMomId(-99), mcgMomId (-99){}
111 >      tIso(-99), eIso(-99), hIso(-99),pfChaIso(-99),pfChaPUIso(-99), pfPhoIso(-99), pfNeuIso(-99), acop(-99),
112 >      sihih(-99), Dphi(-99), Deta(-99), HoE(-99), convDist(-99), convDcot(-99), innerHits(-99),
113 >      isEB(false),isEE(false),
114 >      ipDb(-99), ipErrDb(-99),
115 >      id95(-99),id85(-99),id80(-99),id70(-99),
116 >      id95r(-99),id85r(-99),id80r(-99),id70r(-99),
117 >      mcId(-99), mcMomId(-99), mcgMomId (-99),
118 >      dxy(-99), dz(-99),
119 >     //MVA ELEID 2012 input vars (keep same names to make life easier in integrating with MVA evaluation code
120 >      fMVAVar_EoP(-99), fMVAVar_HoE(-99), fMVAVar_IoEmIoP(-99), fMVAVar_PreShowerOverRaw(-99), fMVAVar_R9(-99), fMVAVar_d0(-99), fMVAVar_deta(-99), fMVAVar_detacalo(-99), fMVAVar_dphi(-99), fMVAVar_e1x5e5x5(-99), fMVAVar_eleEoPout(-99), fMVAVar_eta(-99), fMVAVar_etawidth(-99), fMVAVar_fbrem(-99), fMVAVar_gsfchi2(-99), fMVAVar_ip3d(-99), fMVAVar_kfchi2(-99), fMVAVar_kfhits(-99), fMVAVar_phiwidth(-99), fMVAVar_pt(-99), fMVAVar_see(-99), fMVAVar_spp(-99), mvaOut(-99),mvaOutTrig(-99)
121 > {}
122    public:
123 <    TLorentzVector fourMomentum;
123 >    TLorentzVector p4;
124      float scEta, scPhi;
125      int charge;
126 <    float tIso, eIso, hIso, acop;
127 <    float  id95,id85,id70,id95r, id70r, id85r;
126 >    float tIso, eIso, hIso, pfChaIso,pfChaPUIso, pfPhoIso,pfNeuIso, acop;
127 >    float sihih, Dphi, Deta, HoE, convDist, convDcot;
128 >    int innerHits;
129 >    bool isEB,isEE;
130 >    float       ipDb, ipErrDb, dxy,dz;
131 >    float  id95,id85,id80,id70,id95r, id85r,id80r, id70r;
132 >    float fMVAVar_EoP, fMVAVar_HoE, fMVAVar_IoEmIoP, fMVAVar_PreShowerOverRaw, fMVAVar_R9, fMVAVar_d0, fMVAVar_deta, fMVAVar_detacalo, fMVAVar_dphi, fMVAVar_e1x5e5x5, fMVAVar_eleEoPout, fMVAVar_eta, fMVAVar_etawidth, fMVAVar_fbrem, fMVAVar_gsfchi2, fMVAVar_ip3d, fMVAVar_kfchi2, fMVAVar_kfhits, fMVAVar_phiwidth, fMVAVar_pt, fMVAVar_see, fMVAVar_spp, mvaOut,mvaOutTrig;
133      TLorentzVector mcFourMomentum;
134      int mcId, mcMomId, mcgMomId;
135 +    std::vector< int > hltMatchedBits;
136    };
137  
138    class TauInfo{
139    public:
140 <    TauInfo()  : charge(-99), tIso(-99), eIso(-99), hIso(-99), acop(-99),
141 <    idbyIso(-99),idbyTrackIso(-99),idbyTaNCfrOnePercent(-99),
142 <    idbyTaNCfrHalfPercent(-99), idbyTaNCfrQuarterPercent(-99),
143 <      idbyTaNCfrTenthPercent(-99), idbyTaNC(-99), mcId(-99), mcMomId(-99), mcgMomId(-99) {}
140 >    TauInfo()  : charge(-99), tIso(-99), eIso(-99), hIso(-99),pfChaIso(-99), pfChaPUIso(-99),pfPhoIso(-99), pfNeuIso(-99), acop(-99),
141 >      byIsolation(-99),trackIsolation(-99),byTaNCfrOnePercent(-99),
142 >      byTaNCfrHalfPercent(-99), byTaNCfrQuarterPercent(-99),
143 >      byTaNCfrTenthPercent(-99), byTaNC(-99), mcId(-99), mcMomId(-99), mcgMomId(-99),
144 >      againstElectronLoose(-99),  againstElectronMedium(-99),  againstElectronTight(-99),  againstMuonLoose(-99),  againstMuonTight(-99),  
145 >      byLooseIsolation(-99),  byMediumIsolation(-99),  byTightIsolation(-99),  byVLooseIsolation(-99),  decayModeFinding(-99),
146 >      isolationPFChargedHadrCandsPtSum(-999999.), isolationPFGammaCandsEtSum(-999999.),leadPFChargedHadrCandPt(-999999.),
147 >      NsignalPFChargedHadrCands (-99),NsignalPFGammaCands(-99), byLooseCombinedIsolationDeltaBetaCorr(-99), againstElectronMVA(-99) {}
148    public:
149 <    TLorentzVector fourMomentum;
149 >    TLorentzVector p4;
150      int charge;
151 <    float tIso, eIso, hIso, acop;
152 <    float  idbyIso,idbyTrackIso,idbyTaNCfrOnePercent,idbyTaNCfrHalfPercent, idbyTaNCfrQuarterPercent, idbyTaNCfrTenthPercent, idbyTaNC;
105 <    TLorentzVector mcFourMomentum;
151 >    float tIso, eIso, hIso,pfChaIso,pfChaPUIso,pfPhoIso,pfNeuIso, acop;
152 >    float  byIsolation,trackIsolation,byTaNCfrOnePercent,byTaNCfrHalfPercent, byTaNCfrQuarterPercent, byTaNCfrTenthPercent, byTaNC;
153      int mcId, mcMomId, mcgMomId;
154 +    float againstElectronLoose, againstElectronMedium, againstElectronTight, againstMuonLoose, againstMuonTight;
155 +    float byLooseIsolation, byMediumIsolation, byTightIsolation, byVLooseIsolation, decayModeFinding;
156 +
157 +    float isolationPFChargedHadrCandsPtSum,isolationPFGammaCandsEtSum,leadPFChargedHadrCandPt;
158 +    int NsignalPFChargedHadrCands, NsignalPFGammaCands;
159 +    float byLooseCombinedIsolationDeltaBetaCorr, againstElectronMVA;
160 +
161 +
162 +    TLorentzVector mcFourMomentum;
163    };
164  
165  
166    class DiMuonInfo  {
167    public:
168 <    TLorentzVector fourMomentum;
168 >    TLorentzVector p4;
169      MuonInfo daughter1, daughter2;
170    };
171  
172  
173    class DiElectronInfo {
174    public:
175 <    TLorentzVector fourMomentum;
175 >    TLorentzVector p4;
176      ElectronInfo daughter1, daughter2;
177    };
178  
179  
124  class TriggerInfo {
125  public:
126    TriggerInfo() :  triggerMu9(-99),
127      triggerIsoMu9(-99),
128      triggerIsoMu13_3(-99),
129      triggerMu11(-99),
130      triggerDoubleMu3(-99),
131      triggerDoubleMu3_2(-99),
132      triggerMu15(-99),
133      triggerMu15_1(-99),
134      triggerDoubleElec10(-99),
135      triggerDoubleElec15_1(-99),
136      triggerDoubleElec17_1(-99),
137      triggerMet100_1(-99),
138      triggerSingleEle1(-99),
139      triggerSingleEle2(-99),
140      triggerSingleEle3(-99),
141      triggerSingleEle4(-99),
142      triggerBtagMu1(-99),
143      triggerBtagMu2(-99),
144      triggerBtagMu0(-99),
145      triggerBtagMu11(-99),
146      triggerBtagMuJet1(-99),
147      triggerBtagMuJet2(-99),
148      triggerBtagMuJet3(-99),
149      triggerBtagMuJet4(-99),
150      triggerIsoMu15(-99),
151      triggerIsoMu17v5(-99),
152      triggerIsoMu17v6(-99) {
153      for (unsigned int i=0; i< 500; ++i){
154        flag[i]= -99;
155      }
156    }
157  public:
158    int flag[500];
159    int triggerMu9,
160      triggerIsoMu9,
161      triggerIsoMu13_3,
162      triggerMu11,
163      triggerDoubleMu3,
164      triggerDoubleMu3_2,
165      triggerMu15,
166      triggerMu15_1,
167      triggerDoubleElec10,
168      triggerDoubleElec15_1,
169      triggerDoubleElec17_1,
170      triggerMet100_1,
171      triggerSingleEle1,
172      triggerSingleEle2,
173      triggerSingleEle3,
174      triggerSingleEle4,
175      triggerBtagMu1,
176      triggerBtagMu2,
177      triggerBtagMu0,
178      triggerBtagMu11,
179      triggerBtagMuJet1,
180      triggerBtagMuJet2,
181      triggerBtagMuJet3,
182      triggerBtagMuJet4,
183      triggerIsoMu15,
184      triggerIsoMu17v5,
185      triggerIsoMu17v6;
186  };
187
188  class PrimaryVertexInfo {
189  public:
190    TVector3 firstPVInPT2,firstPVInProb;
191  };
192
193  class PUInfo{
194  public:
195    PUInfo(): rho(-99) {}
196  public:
197    float rho;
198  };
199
180  
181   public:
202  ParticleMCInfo mcH;
203  ParticleMCInfo mcW;
204  ParticleMCInfo mcZ;
182    std::vector<SimpleJet> simpleJets;
183    std::vector<SimpleJet> simpleJets2; //???
184 +  std::vector<SimpleJet> simpleJets3;
185 +  std::vector<SimpleJet> simpleJets4; //???
186    std::vector<SimpleJet> subJets; //???
187 +  std::vector<SimpleJet> filterJets; //???
188    std::vector<HardJet> hardJets;
189    
210  ParticleMCInfo mcBbar;
211  ParticleMCInfo mcB;
212  ParticleMCInfo mcC;    
213  
214  PUInfo puInfo;
215  
190    METInfo calomet;
191    METInfo tcmet;
192    METInfo pfmet;
193 <  
193 >  METInfo pfmetType1corr;
194 >  METInfo pfmetType1p2corr;
195 >  METInfo pfmetNoPUType1corr;
196 >  METInfo pfmetNoPUType1p2corr;
197 >  METInfo mht;
198 >  METInfo metNoPU;
199 >  METInfo metCh;
200 >  std::vector<METInfo> metUncInfo;
201 >
202    std::vector<MuonInfo> muInfo;
203    std::vector<ElectronInfo> eleInfo;
204    std::vector<TauInfo> tauInfo;
205    
224  TriggerInfo triggerInfo;
225  
226  PrimaryVertexInfo pvInfo;
227  
206    std::vector<DiMuonInfo> diMuonInfo;
207    std::vector<DiElectronInfo> diElectronInfo;
208    

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines