41 |
|
fSuperClusterName ("PFSuperClusters"), |
42 |
|
fPFMetName ("PFMet"), |
43 |
|
fPFJetName (Names::gkPFJetBrn), |
44 |
– |
fGenJetName ("AKT5GenJets"), |
44 |
|
funcorrPFJetName ("AKt5PFJets"), |
45 |
+ |
fGenJetName ("AKT5GenJets"), |
46 |
|
fLeptonTagElectronsName ("HggLeptonTagElectrons"), |
47 |
|
fLeptonTagMuonsName ("HggLeptonTagMuons"), |
48 |
|
|
81 |
|
fApplyLeptonTag (kFALSE), |
82 |
|
fApplyBTag (kFALSE), |
83 |
|
fApplyPFMetCorrections (kFALSE), |
84 |
– |
|
84 |
|
fPhFixDataFile (gSystem->Getenv("CMSSW_BASE") + |
85 |
|
TString("/src/MitPhysics/data/PhotonFixSTART42V13.dat")), |
86 |
|
fTupleName ("hPhotonTree") |
125 |
|
LoadEventObject(fPFMetName, fPFMet); |
126 |
|
if (fEnableJets){ |
127 |
|
LoadEventObject(fPFJetName, fPFJets); |
128 |
+ |
//LoadEventObject(funcorrPFJetName, funcorrPFJets); |
129 |
|
LoadBranch(funcorrPFJetName); |
130 |
+ |
// if(!fIsData) LoadEventObject(fGenJetName, fGenJets); |
131 |
|
} |
132 |
|
// ------------------------------------------------------------ |
133 |
|
// load event based information |
144 |
|
if( !fIsData ) { |
145 |
|
LoadBranch(fMCParticleName); |
146 |
|
LoadBranch(fPileUpName); |
147 |
< |
if ( fApplyPFMetCorrections ) LoadEventObject(fGenJetName, fGenJets); |
148 |
< |
} |
147 |
> |
if (fEnableJets) LoadEventObject(fGenJetName, fGenJets); |
148 |
> |
} else fGenJets = NULL; |
149 |
|
|
150 |
|
if( !fIsData ) { |
151 |
|
for (UInt_t i=0; i<fPileUp->GetEntries(); ++i) { |
163 |
|
if (!fIsData) |
164 |
|
FindHiggsPtAndZ(_pth, _decayZ, _genmass); |
165 |
|
|
166 |
+ |
|
167 |
+ |
Double_t _spfMet = fPFMet->At(0)->SumEt(); |
168 |
|
fDiphotonEvent->leptonTag = -1; // disabled |
169 |
|
|
170 |
|
fDiphotonEvent->rho = rho; |
199 |
|
fDiphotonEvent->pfmetphi = fPFMet->At(0)->Phi(); |
200 |
|
fDiphotonEvent->pfmetx = fPFMet->At(0)->Px(); |
201 |
|
fDiphotonEvent->pfmety = fPFMet->At(0)->Py(); |
202 |
+ |
fDiphotonEvent->spfMet = _spfMet; |
203 |
|
fDiphotonEvent->masscor = -99.; |
204 |
|
fDiphotonEvent->masscorerr = -99.; |
205 |
|
fDiphotonEvent->masscorele = -99.; |
232 |
|
fDiphotonEvent->zeppenfeld = -99.; |
233 |
|
fDiphotonEvent->dphidijetgg = -99.; |
234 |
|
|
235 |
+ |
//uncorrected jets |
236 |
+ |
// const Jet *uncorrjet1 = 0; |
237 |
+ |
// const Jet *uncorrjet2 = 0; |
238 |
+ |
// const Jet *uncorrjetcentral = 0; |
239 |
+ |
|
240 |
+ |
// fDiphotonEvent->uncorrjet1pt = -99.; |
241 |
+ |
// fDiphotonEvent->uncorrjet1eta = -99.; |
242 |
+ |
// fDiphotonEvent->uncorrjet1phi = -99.; |
243 |
+ |
// fDiphotonEvent->uncorrjet1mass = -99.; |
244 |
+ |
// fDiphotonEvent->uncorrjet2pt = -99.; |
245 |
+ |
// fDiphotonEvent->uncorrjet2eta = -99.; |
246 |
+ |
// fDiphotonEvent->uncorrjet2phi = -99.; |
247 |
+ |
// fDiphotonEvent->uncorrjet2mass = -99.; |
248 |
+ |
// fDiphotonEvent->uncorrjetcentralpt = -99.; |
249 |
+ |
// fDiphotonEvent->uncorrjetcentraleta = -99.; |
250 |
+ |
// fDiphotonEvent->uncorrjetcentralphi = -99.; |
251 |
+ |
// fDiphotonEvent->uncorrjetcentralmass = -99.; |
252 |
+ |
// fDiphotonEvent->diuncorrjetpt = -99.; |
253 |
+ |
// fDiphotonEvent->diuncorrjeteta = -99.; |
254 |
+ |
// fDiphotonEvent->diuncorrjetphi = -99.; |
255 |
+ |
// fDiphotonEvent->diuncorrjetmass = -99.; |
256 |
+ |
|
257 |
+ |
|
258 |
+ |
|
259 |
|
Int_t nhitsbeforevtxmax = 1; |
260 |
|
if (!fApplyElectronVeto) |
261 |
|
nhitsbeforevtxmax = 999; |
319 |
|
} |
320 |
|
|
321 |
|
// fill Btag information... set to true if One jet fullfills |
322 |
< |
fDiphotonEvent -> btagJet1 = -1.; |
323 |
< |
fDiphotonEvent -> btagJet1Pt = -99.; |
324 |
< |
fDiphotonEvent -> btagJet1Eta = -99.; |
325 |
< |
fDiphotonEvent -> btagJet2 = -1.; |
326 |
< |
fDiphotonEvent -> btagJet2Pt = -99.; |
327 |
< |
fDiphotonEvent -> btagJet2Eta = -99.; |
322 |
> |
fDiphotonEvent -> btagJet1 = -1.; |
323 |
> |
fDiphotonEvent -> btagJet1Pt = -99.; |
324 |
> |
fDiphotonEvent -> btagJet1Eta = -99.; |
325 |
> |
|
326 |
> |
fDiphotonEvent -> btagJet2 = -1.; |
327 |
> |
fDiphotonEvent -> btagJet2Pt = -99.; |
328 |
> |
fDiphotonEvent -> btagJet2Eta = -99.; |
329 |
|
|
330 |
|
if( fApplyBTag && fEnableJets ) { |
331 |
|
float highTag = 0.; |
303 |
– |
float trailTag = 0.; |
332 |
|
float highJetPt = 0.; |
333 |
|
float highJetEta = 0.; |
334 |
+ |
|
335 |
+ |
float trailTag = 0.; |
336 |
|
float trailJetPt = 0.; |
337 |
|
float trailJetEta = 0.; |
338 |
+ |
|
339 |
|
for (UInt_t ijet=0; ijet<fPFJets->GetEntries();++ijet) { |
340 |
|
const Jet *jet = fPFJets->At(ijet); |
341 |
|
if( jet->Pt() < 20. || jet->AbsEta() > 2.4 ) continue; |
342 |
|
if ( jet->CombinedSecondaryVertexBJetTagsDisc() > highTag ) { |
343 |
< |
trailTag = highTag; |
344 |
< |
trailJetPt = highJetPt; |
343 |
> |
|
344 |
> |
trailTag = highTag; |
345 |
> |
trailJetPt = highJetPt; |
346 |
|
trailJetEta = highJetEta; |
347 |
+ |
|
348 |
|
highTag = jet->CombinedSecondaryVertexBJetTagsDisc(); |
349 |
|
highJetPt = jet->Pt(); |
350 |
|
highJetEta = jet->Eta(); |
351 |
+ |
|
352 |
|
} else if ( jet->CombinedSecondaryVertexBJetTagsDisc() > trailTag ) { |
353 |
+ |
|
354 |
|
trailTag = jet->CombinedSecondaryVertexBJetTagsDisc(); |
355 |
|
trailJetPt = jet->Pt(); |
356 |
|
trailJetEta = jet->Eta(); |
358 |
|
} |
359 |
|
fDiphotonEvent -> btagJet1 = highTag; |
360 |
|
fDiphotonEvent -> btagJet1Pt = highJetPt; |
361 |
< |
fDiphotonEvent -> btagJet1Eta = highJetEta; |
362 |
< |
fDiphotonEvent -> btagJet2 = trailTag; |
363 |
< |
fDiphotonEvent -> btagJet2Pt = trailJetPt; |
364 |
< |
fDiphotonEvent -> btagJet2Eta = trailJetEta; |
361 |
> |
fDiphotonEvent -> btagJet1Eta = highJetEta; |
362 |
> |
|
363 |
> |
fDiphotonEvent -> btagJet1 = trailTag; |
364 |
> |
fDiphotonEvent -> btagJet1Pt = trailJetPt; |
365 |
> |
fDiphotonEvent -> btagJet1Eta = trailJetEta; |
366 |
> |
|
367 |
|
} |
368 |
|
|
369 |
|
//fill jet variables |
376 |
|
else if (!jetcentral && 0) jetcentral = jet; |
377 |
|
} |
378 |
|
if (jet1&&jet2&&jetcentral) break; |
379 |
< |
} |
379 |
> |
} |
380 |
|
} |
381 |
|
|
382 |
|
if (jet1) { |
418 |
|
} |
419 |
|
} |
420 |
|
|
384 |
– |
|
421 |
|
//added gen. info of whether a lep. or nutrino is from W or Z --Heng 02/14/2012 12:30 EST |
422 |
|
Double_t _fromZ = -99; |
423 |
|
Double_t _fromW = -99; |
444 |
|
} |
445 |
|
} |
446 |
|
|
411 |
– |
/* |
412 |
– |
for(UInt_t j=0; j<fMCParticles->GetEntries(); ++j) { |
413 |
– |
const MCParticle* p = fMCParticles->At(j); |
414 |
– |
if( p->AbsPdgId()==23 ||p->AbsPdgId()==32 || p->AbsPdgId()==33 ) { |
415 |
– |
_fromZ=1; |
416 |
– |
_zpt=p->Pt(); |
417 |
– |
} |
418 |
– |
else _fromW=1; |
419 |
– |
} |
420 |
– |
} |
421 |
– |
|
422 |
– |
*/ |
447 |
|
fDiphotonEvent->fromZ = _fromZ; |
448 |
|
fDiphotonEvent->fromW = _fromW; |
449 |
|
fDiphotonEvent->zpt = _zpt; |
499 |
|
} |
500 |
|
|
501 |
|
} |
502 |
< |
|
503 |
< |
|
480 |
< |
fDiphotonEvent->corrpfmet = -99.; |
502 |
> |
|
503 |
> |
fDiphotonEvent->corrpfmet = -99.; |
504 |
|
fDiphotonEvent->corrpfmetphi = -99.; |
505 |
< |
fDiphotonEvent->corrpfmetx = -99.; |
506 |
< |
fDiphotonEvent->corrpfmety = -99.; |
505 |
> |
fDiphotonEvent->corrpfmetx = -99.; |
506 |
> |
fDiphotonEvent->corrpfmety = -99.; |
507 |
|
|
508 |
< |
Met *corrMet = NULL; |
509 |
< |
if( fApplyPFMetCorrections ) { |
510 |
< |
corrMet = new Met(fPFMet->At(0)->Px(),fPFMet->At(0)->Py()); |
508 |
> |
Met *corrMet =NULL; |
509 |
> |
|
510 |
> |
if (fApplyPFMetCorrections){ |
511 |
> |
corrMet = new Met(fPFMet->At(0)->Px(),fPFMet->At(0)->Py()); |
512 |
> |
|
513 |
> |
if (!fIsData){ |
514 |
|
PFMetCorrectionTools::correctMet(corrMet,phHard,phSoft,1,1,funcorrPFJets,fGenJets,fPFJets); |
515 |
< |
PFMetCorrectionTools::shiftMet(corrMet,fIsData); |
516 |
< |
|
517 |
< |
fDiphotonEvent->corrpfmet = corrMet->Pt(); |
518 |
< |
fDiphotonEvent->corrpfmetphi = corrMet->Phi(); |
519 |
< |
fDiphotonEvent->corrpfmetx = corrMet->Px(); |
520 |
< |
fDiphotonEvent->corrpfmety = corrMet->Py(); |
515 |
> |
PFMetCorrectionTools::shiftMet(corrMet,fIsData,_spfMet); |
516 |
> |
} |
517 |
> |
else { |
518 |
> |
PFMetCorrectionTools::shiftMet(corrMet,fIsData,_spfMet); |
519 |
> |
PFMetCorrectionTools::correctMet(corrMet,phHard,phSoft,0,1,funcorrPFJets,fGenJets,fPFJets); |
520 |
> |
} |
521 |
> |
|
522 |
> |
fDiphotonEvent->corrpfmet = corrMet->Pt(); |
523 |
> |
fDiphotonEvent->corrpfmetphi = corrMet->Phi(); |
524 |
> |
fDiphotonEvent->corrpfmetx = corrMet->Px(); |
525 |
> |
fDiphotonEvent->corrpfmety = corrMet->Py(); |
526 |
|
|
527 |
< |
delete corrMet; |
527 |
> |
delete corrMet; |
528 |
|
} |
529 |
|
|
530 |
|
Float_t _massele = -99.; |
787 |
|
if (fEnableJets){ |
788 |
|
ReqEventObject(fPFJetName, fPFJets, fPFJetsFromBranch); |
789 |
|
ReqBranch(funcorrPFJetName, funcorrPFJets); |
790 |
+ |
// if (!fIsData) ReqEventObject(fGenJetName, fGenJets, true); |
791 |
|
} |
792 |
|
if (!fIsData) { |
793 |
|
ReqBranch(fPileUpName, fPileUp); |
794 |
|
ReqBranch(fMCParticleName, fMCParticles); |
795 |
< |
if ( fApplyPFMetCorrections ) ReqEventObject(fGenJetName, fGenJets, true); |
795 |
> |
if (fEnableJets) ReqEventObject(fGenJetName, fGenJets, true); |
796 |
|
} |
797 |
|
if (fIsData) { |
798 |
|
fPhFixDataFile = gSystem->Getenv("CMSSW_BASE") + |