69 |
|
|
70 |
|
#include "SampleWeight.h" |
71 |
|
#include "EfficiencyWeightsInterface.h" |
72 |
+ |
#include "SelectionZ.h" |
73 |
|
|
74 |
|
#include "SimpleLepton.h" |
75 |
|
|
296 |
|
if(!(ientry%1000)) cerr << "entry: " << ientry << "\t" << float(ientry)/imax << endl; |
297 |
|
|
298 |
|
string fname = string(chain->GetFile()->GetEndpointUrl()->GetFile()); |
299 |
< |
setEra( fname, ctrl ); |
300 |
< |
|
299 |
> |
if( ctrl.era == 0 ) |
300 |
> |
setEra( fname, ctrl ); |
301 |
|
|
302 |
|
// pfNoPU |
303 |
|
PFnoPUflag.clear(); |
334 |
|
// lepton/kinematic selection ... |
335 |
|
failingLeptons.clear(); |
336 |
|
passingLeptons.clear(); |
337 |
< |
EventData ret4l = |
337 |
> |
EventData ret4l; |
338 |
|
|
339 |
< |
apply_HZZ4L_EMU_selection(ctrl, info, |
340 |
< |
hltTable, |
341 |
< |
hltObjArr, |
342 |
< |
fTrigObjs, |
343 |
< |
vtxArr, |
344 |
< |
pfArr, |
345 |
< |
puDArr, |
346 |
< |
electronArr, |
347 |
< |
&electronReferencePreSelection, |
348 |
< |
&electronReferenceIDMVASelectionV1, |
349 |
< |
&electronReferenceIsoSelection, |
350 |
< |
muonArr, |
351 |
< |
&muonReferencePreSelection, |
352 |
< |
&muonIDPFSelection, |
353 |
< |
&muonReferenceIsoSelection); |
354 |
< |
|
339 |
> |
if(ctrl.fakeScheme.Contains("oneZ")) |
340 |
> |
ret4l = apply_HZZ4L_Z_selection(ctrl, info, |
341 |
> |
hltTable, |
342 |
> |
hltObjArr, |
343 |
> |
fTrigObjs, |
344 |
> |
vtxArr, |
345 |
> |
pfArr, |
346 |
> |
puDArr, |
347 |
> |
electronArr, |
348 |
> |
&electronReferencePreSelection, |
349 |
> |
&electronReferenceIDMVASelectionV1, |
350 |
> |
&electronReferenceIsoSelection, |
351 |
> |
muonArr, |
352 |
> |
&muonReferencePreSelection, |
353 |
> |
&muonIDPFSelection, |
354 |
> |
&muonReferenceIsoSelection); |
355 |
> |
else |
356 |
> |
ret4l = apply_HZZ4L_EMU_selection(ctrl, info, |
357 |
> |
hltTable, |
358 |
> |
hltObjArr, |
359 |
> |
fTrigObjs, |
360 |
> |
vtxArr, |
361 |
> |
pfArr, |
362 |
> |
puDArr, |
363 |
> |
fConversions, |
364 |
> |
electronArr, |
365 |
> |
&electronReferencePreSelection, |
366 |
> |
&electronReferenceIDMVASelectionV1, |
367 |
> |
&electronReferenceIsoSelection, |
368 |
> |
muonArr, |
369 |
> |
&muonReferencePreSelection, |
370 |
> |
&muonIDPFSelection, |
371 |
> |
&muonReferenceIsoSelection); |
372 |
|
|
373 |
|
if( ret4l.status.pass() ) { |
374 |
< |
|
374 |
> |
fillKinematics(ret4l,kinematics); |
375 |
|
TLorentzVector pfmet; pfmet.SetPxPyPzE(metArr->At(0)->Mex(),metArr->At(0)->Mey(),0,0); |
376 |
|
fillEventInfo( info, pfmet, evtinfo, ctrl.mc ? getNPU(puArr) : 0, vtxArr->GetEntries()); |
377 |
|
foTree.Fill(); |
360 |
– |
|
361 |
– |
// if( ctrl.mc) |
362 |
– |
// setEffiencyWeights(ctrl.era, ret4l, weights); |
363 |
– |
if(ientry<10000) cout << "\n\nWARNING: not setting eff weights\n\n" << endl; |
364 |
– |
|
378 |
|
nt.Fill(); |
379 |
|
} |
380 |
< |
|
380 |
> |
|
381 |
|
} |
382 |
|
foTree.getFile()->cd(); |
383 |
|
foTree.getTree()->Write(); |