Fork me on GitHub

source: git/cards/CMS_PhaseII/CMS_PhaseII_200PU.tcl@ bc14a10

ImprovedOutputFile Timing dual_readout llp 3.3.3pre10
Last change on this file since bc14a10 was bc14a10, checked in by Michele Selvaggi <michele.selvaggi@…>, 8 years ago

degrade by hands photon reso in CMS UPG cards

  • Property mode set to 100644
File size: 28.1 KB
Line 
1#
2# Phase II - Pile-Up
3#
4# Main authors: Michele Selvaggi (UCL)
5#
6# Released on:
7#
8# Version: v01
9#
10#
11#######################################
12# Order of execution of various modules
13#######################################
14
15set ExecutionPath {
16
17 PileUpMerger
18 ParticlePropagator
19
20 ChargedHadronTrackingEfficiency
21 ElectronTrackingEfficiency
22 MuonTrackingEfficiency
23
24 ChargedHadronMomentumSmearing
25 ElectronEnergySmearing
26 MuonMomentumSmearing
27
28 TrackMerger
29
30 ECal
31 HCal
32
33 PhotonEnergySmearing
34 ElectronFilter
35 TrackPileUpSubtractor
36
37 TowerMerger
38 NeutralEFlowMerger
39 EFlowMergerAllTracks
40 EFlowMerger
41
42 LeptonFilterNoLep
43 LeptonFilterLep
44 RunPUPPIBase
45 RunPUPPI
46
47 PhotonFilter
48
49 PhotonIsolation
50 PhotonEfficiency
51
52 ElectronIsolation
53 ElectronEfficiency
54
55 MuonIsolation
56 MuonLooseIdEfficiency
57 MuonTightIdEfficiency
58
59 NeutrinoFilter
60
61 MissingET
62 PuppiMissingET
63 GenMissingET
64 GenPileUpMissingET
65
66 GenJetFinder
67 FastJetFinder
68 FatJetFinder
69
70 ScalarHT
71
72 JetEnergyScale
73
74 JetFlavorAssociation
75
76 BTaggingLoose
77 BTaggingMedium
78 BTaggingTight
79
80 TauTagging
81
82 GenParticleFilter
83
84 TreeWriter
85}
86
87
88
89###############
90# PileUp Merger
91###############
92
93module PileUpMerger PileUpMerger {
94 set InputArray Delphes/stableParticles
95
96 set ParticleOutputArray stableParticles
97 set VertexOutputArray vertices
98
99 # pre-generated minbias input file
100 #set PileUpFile ../eos/cms/store/group/upgrade/delphes/PhaseII/MinBias_100k.pileup
101 set PileUpFile MinBias.pileup
102
103 # average expected pile up
104 set MeanPileUp 200
105
106 # maximum spread in the beam direction in m
107 set ZVertexSpread 0.25
108
109 # maximum spread in time in s
110 set TVertexSpread 800E-12
111
112 # vertex smearing formula f(z,t) (z,t need to be respectively given in m,s)
113 set VertexDistributionFormula {exp(-(t^2/160e-12^2/2))*exp(-(z^2/0.053^2/2))}
114
115}
116
117
118#################################
119# Propagate particles in cylinder
120#################################
121
122module ParticlePropagator ParticlePropagator {
123 set InputArray PileUpMerger/stableParticles
124
125 set OutputArray stableParticles
126 set ChargedHadronOutputArray chargedHadrons
127 set ElectronOutputArray electrons
128 set MuonOutputArray muons
129
130 # radius of the magnetic field coverage, in m
131 set Radius 1.29
132 # half-length of the magnetic field coverage, in m
133 set HalfLength 3.0
134
135 # magnetic field
136 set Bz 3.8
137}
138
139
140####################################
141# Charged hadron tracking efficiency
142####################################
143
144module Efficiency ChargedHadronTrackingEfficiency {
145 ## particles after propagation
146 set InputArray ParticlePropagator/chargedHadrons
147 set OutputArray chargedHadrons
148 # tracking efficiency formula for charged hadrons
149 set EfficiencyFormula {
150 (pt <= 0.2) * (0.00) + \
151 (abs(eta) <= 1.2) * (pt > 0.2 && pt <= 1.0) * (pt * 0.96) + \
152 (abs(eta) <= 1.2) * (pt > 1.0) * (0.97) + \
153 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 0.2 && pt <= 1.0) * (pt*0.85) + \
154 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 1.0) * (0.87) + \
155 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 0.2 && pt <= 1.0) * (pt*0.8) + \
156 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 1.0) * (0.82) + \
157 (abs(eta) > 4.0) * (0.00)
158 }
159}
160
161
162#####################################
163# Electron tracking efficiency - ID
164####################################
165
166module Efficiency ElectronTrackingEfficiency {
167 set InputArray ParticlePropagator/electrons
168 set OutputArray electrons
169 # tracking efficiency formula for electrons
170 set EfficiencyFormula {
171 (pt <= 0.2) * (0.00) + \
172 (abs(eta) <= 1.2) * (pt > 0.2 && pt <= 1.0) * (pt * 0.96) + \
173 (abs(eta) <= 1.2) * (pt > 1.0) * (0.97) + \
174 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 0.2 && pt <= 1.0) * (pt*0.85) + \
175 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 1.0 && pt <= 10.0) * (0.82+pt*0.01) + \
176 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 10.0) * (0.90) + \
177 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 0.2 && pt <= 1.0) * (pt*0.8) + \
178 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 1.0 && pt <= 10.0) * (0.8+pt*0.01) + \
179 (abs(eta) > 2.5 && abs(eta) <= 4.0) * (pt > 10.0) * (0.85) + \
180 (abs(eta) > 4.0) * (0.00)
181
182 }
183}
184
185##########################
186# Muon tracking efficiency
187##########################
188
189module Efficiency MuonTrackingEfficiency {
190 set InputArray ParticlePropagator/muons
191 set OutputArray muons
192 # tracking efficiency formula for muons
193 set EfficiencyFormula {
194 (pt <= 0.2) * (0.00) + \
195 (abs(eta) <= 1.2) * (pt > 0.2 && pt <= 1.0) * (pt * 1.00) + \
196 (abs(eta) <= 1.2) * (pt > 1.0) * (1.00) + \
197 (abs(eta) > 1.2 && abs(eta) <= 2.8) * (pt > 0.2 && pt <= 1.0) * (pt*1.00) + \
198 (abs(eta) > 1.2 && abs(eta) <= 2.8) * (pt > 1.0) * (1.00) + \
199 (abs(eta) > 2.8 && abs(eta) <= 4.0) * (pt > 0.2 && pt <= 1.0) * (pt*0.95) + \
200 (abs(eta) > 2.8 && abs(eta) <= 4.0) * (pt > 1.0) * (0.95) + \
201 (abs(eta) > 4.0) * (0.00)
202
203 }
204}
205
206
207########################################
208# Momentum resolution for charged tracks
209########################################
210
211module MomentumSmearing ChargedHadronMomentumSmearing {
212 ## hadrons after having applied the tracking efficiency
213 set InputArray ChargedHadronTrackingEfficiency/chargedHadrons
214 set OutputArray chargedHadrons
215 # resolution formula for charged hadrons ,
216
217 # from http://mersi.web.cern.ch/mersi/layouts/.private/Baseline_tilted_200_Pixel_1_1_1/index.html
218 source trackMomentumResolution.tcl
219}
220
221#################################
222# Energy resolution for electrons
223#################################
224
225module EnergySmearing ElectronEnergySmearing {
226 set InputArray ElectronTrackingEfficiency/electrons
227 set OutputArray electrons
228
229 # set ResolutionFormula {resolution formula as a function of eta and energy}
230
231 # resolution formula for electrons
232
233 # taking something flat in energy for now, ECAL will take over at high energy anyway.
234 # inferred from hep-ex/1306.2016 and 1502.02701
235 set ResolutionFormula {
236
237 (abs(eta) <= 1.5) * (energy*0.028) +
238 (abs(eta) > 1.5 && abs(eta) <= 1.75) * (energy*0.037) +
239 (abs(eta) > 1.75 && abs(eta) <= 2.15) * (energy*0.038) +
240 (abs(eta) > 2.15 && abs(eta) <= 3.00) * (energy*0.044) +
241 (abs(eta) > 3.00 && abs(eta) <= 4.00) * (energy*0.10)}
242
243}
244
245###############################
246# Momentum resolution for muons
247###############################
248
249module MomentumSmearing MuonMomentumSmearing {
250 set InputArray MuonTrackingEfficiency/muons
251 set OutputArray muons
252 # resolution formula for muons
253
254 # up to |eta| < 2.8 take measurement from tracking + muon chambers
255 # for |eta| > 2.8 and pT < 5.0 take measurement from tracking alone taken from
256 # http://mersi.web.cern.ch/mersi/layouts/.private/Baseline_tilted_200_Pixel_1_1_1/index.html
257 source muonMomentumResolution.tcl
258}
259
260
261
262
263##############
264# Track merger
265##############
266
267module Merger TrackMerger {
268# add InputArray InputArray
269 add InputArray ChargedHadronMomentumSmearing/chargedHadrons
270 add InputArray ElectronEnergySmearing/electrons
271 add InputArray MuonMomentumSmearing/muons
272 set OutputArray tracks
273}
274
275#############
276# ECAL
277#############
278
279module SimpleCalorimeter ECal {
280 set ParticleInputArray ParticlePropagator/stableParticles
281 set TrackInputArray TrackMerger/tracks
282
283 set TowerOutputArray ecalTowers
284 set EFlowTrackOutputArray eflowTracks
285 set EFlowTowerOutputArray eflowPhotons
286
287 set IsEcal true
288
289 set EnergyMin 0.5
290 set EnergySignificanceMin 1.0
291
292 set SmearTowerCenter true
293
294 set pi [expr {acos(-1)}]
295
296 # lists of the edges of each tower in eta and phi
297 # each list starts with the lower edge of the first tower
298 # the list ends with the higher edged of the last tower
299
300 # assume 0.02 x 0.02 resolution in eta,phi in the barrel |eta| < 1.5
301
302 set PhiBins {}
303 for {set i -180} {$i <= 180} {incr i} {
304 add PhiBins [expr {$i * $pi/180.0}]
305 }
306
307 # 0.02 unit in eta up to eta = 1.5 (barrel)
308 for {set i -85} {$i <= 86} {incr i} {
309 set eta [expr {$i * 0.0174}]
310 add EtaPhiBins $eta $PhiBins
311 }
312
313 # assume 0.02 x 0.02 resolution in eta,phi in the endcaps 1.5 < |eta| < 3.0 (HGCAL- ECAL)
314
315 set PhiBins {}
316 for {set i -180} {$i <= 180} {incr i} {
317 add PhiBins [expr {$i * $pi/180.0}]
318 }
319
320 # 0.02 unit in eta up to eta = 3
321 for {set i 1} {$i <= 84} {incr i} {
322 set eta [expr { -2.958 + $i * 0.0174}]
323 add EtaPhiBins $eta $PhiBins
324 }
325
326 for {set i 1} {$i <= 84} {incr i} {
327 set eta [expr { 1.4964 + $i * 0.0174}]
328 add EtaPhiBins $eta $PhiBins
329 }
330
331 # take present CMS granularity for HF
332
333 # 0.175 x (0.175 - 0.35) resolution in eta,phi in the HF 3.0 < |eta| < 5.0
334 set PhiBins {}
335 for {set i -18} {$i <= 18} {incr i} {
336 add PhiBins [expr {$i * $pi/18.0}]
337 }
338
339 foreach eta {-5 -4.7 -4.525 -4.35 -4.175 -4 -3.825 -3.65 -3.475 -3.3 -3.125 -2.958 3.125 3.3 3.475 3.65 3.825 4 4.175 4.35 4.525 4.7 5} {
340 add EtaPhiBins $eta $PhiBins
341 }
342
343
344 add EnergyFraction {0} {0.0}
345 # energy fractions for e, gamma and pi0
346 add EnergyFraction {11} {1.0}
347 add EnergyFraction {22} {1.0}
348 add EnergyFraction {111} {1.0}
349 # energy fractions for muon, neutrinos and neutralinos
350 add EnergyFraction {12} {0.0}
351 add EnergyFraction {13} {0.0}
352 add EnergyFraction {14} {0.0}
353 add EnergyFraction {16} {0.0}
354 add EnergyFraction {1000022} {0.0}
355 add EnergyFraction {1000023} {0.0}
356 add EnergyFraction {1000025} {0.0}
357 add EnergyFraction {1000035} {0.0}
358 add EnergyFraction {1000045} {0.0}
359 # energy fractions for K0short and Lambda
360 add EnergyFraction {310} {0.3}
361 add EnergyFraction {3122} {0.3}
362
363 # set ResolutionFormula {resolution formula as a function of eta and energy}
364
365 # for the ECAL barrel (|eta| < 1.5), see hep-ex/1306.2016 and 1502.02701
366 # for the endcaps (1.5 < |eta| < 3.0), we take HGCAL see LHCC-P-008, Fig. 3.39, p.117
367
368 set ResolutionFormula { (abs(eta) <= 1.50) * sqrt(energy^2*0.009^2 + energy*0.12^2 + 0.45^2) +
369 (abs(eta) > 1.50 && abs(eta) <= 1.75) * sqrt(energy^2*0.006^2 + energy*0.20^2) + \
370 (abs(eta) > 1.75 && abs(eta) <= 2.15) * sqrt(energy^2*0.007^2 + energy*0.21^2) + \
371 (abs(eta) > 2.15 && abs(eta) <= 3.00) * sqrt(energy^2*0.008^2 + energy*0.24^2) + \
372 (abs(eta) >= 3.0 && abs(eta) <= 5.0) * sqrt(energy^2*0.08^2 + energy*1.98^2)}
373
374}
375
376#############
377# HCAL
378#############
379
380module SimpleCalorimeter HCal {
381 set ParticleInputArray ParticlePropagator/stableParticles
382 set TrackInputArray ECal/eflowTracks
383
384 set TowerOutputArray hcalTowers
385 set EFlowTrackOutputArray eflowTracks
386 set EFlowTowerOutputArray eflowNeutralHadrons
387
388 set IsEcal false
389
390 set EnergyMin 1.0
391 set EnergySignificanceMin 1.0
392
393 set SmearTowerCenter true
394
395 set pi [expr {acos(-1)}]
396
397 # lists of the edges of each tower in eta and phi
398 # each list starts with the lower edge of the first tower
399 # the list ends with the higher edged of the last tower
400
401 # assume 0.087 x 0.087 resolution in eta,phi in the barrel |eta| < 1.5
402
403 set PhiBins {}
404 for {set i -36} {$i <= 36} {incr i} {
405 add PhiBins [expr {$i * $pi/36.0}]
406 }
407 foreach eta {-1.566 -1.479 -1.392 -1.305 -1.218 -1.131 -1.044 -0.957 -0.87 -0.783 -0.696 -0.609 -0.522 -0.435 -0.348 -0.261 -0.174 -0.087 0 0.087 0.174 0.261 0.348 0.435 0.522 0.609 0.696 0.783 0.87 0.957 1.044 1.131 1.218 1.305 1.392 1.479 1.566 1.65} {
408 add EtaPhiBins $eta $PhiBins
409 }
410
411 # assume 0.02 x 0.02 resolution in eta,phi in the endcaps 1.5 < |eta| < 3.0 (HGCAL- HCAL)
412
413 set PhiBins {}
414 for {set i -180} {$i <= 180} {incr i} {
415 add PhiBins [expr {$i * $pi/180.0}]
416 }
417
418 # 0.02 unit in eta up to eta = 3
419 for {set i 1} {$i <= 84} {incr i} {
420 set eta [expr { -2.958 + $i * 0.0174}]
421 add EtaPhiBins $eta $PhiBins
422 }
423
424 for {set i 1} {$i <= 84} {incr i} {
425 set eta [expr { 1.4964 + $i * 0.0174}]
426 add EtaPhiBins $eta $PhiBins
427 }
428
429 # take present CMS granularity for HF
430
431 # 0.175 x (0.175 - 0.35) resolution in eta,phi in the HF 3.0 < |eta| < 5.0
432 set PhiBins {}
433 for {set i -18} {$i <= 18} {incr i} {
434 add PhiBins [expr {$i * $pi/18.0}]
435 }
436
437 foreach eta {-5 -4.7 -4.525 -4.35 -4.175 -4 -3.825 -3.65 -3.475 -3.3 -3.125 -2.958 3.125 3.3 3.475 3.65 3.825 4 4.175 4.35 4.525 4.7 5} {
438 add EtaPhiBins $eta $PhiBins
439 }
440
441
442 # default energy fractions {abs(PDG code)} {Fecal Fhcal}
443 add EnergyFraction {0} {1.0}
444 # energy fractions for e, gamma and pi0
445 add EnergyFraction {11} {0.0}
446 add EnergyFraction {22} {0.0}
447 add EnergyFraction {111} {0.0}
448 # energy fractions for muon, neutrinos and neutralinos
449 add EnergyFraction {12} {0.0}
450 add EnergyFraction {13} {0.0}
451 add EnergyFraction {14} {0.0}
452 add EnergyFraction {16} {0.0}
453 add EnergyFraction {1000022} {0.0}
454 add EnergyFraction {1000023} {0.0}
455 add EnergyFraction {1000025} {0.0}
456 add EnergyFraction {1000035} {0.0}
457 add EnergyFraction {1000045} {0.0}
458 # energy fractions for K0short and Lambda
459 add EnergyFraction {310} {0.7}
460 add EnergyFraction {3122} {0.7}
461
462# set ResolutionFormula {resolution formula as a function of eta and energy}
463 set ResolutionFormula { (abs(eta) <= 1.5) * sqrt(energy^2*0.05^2 + energy*1.00^2) + \
464 (abs(eta) > 1.5 && abs(eta) <= 3.0) * sqrt(energy^2*0.05^2 + energy*1.00^2) + \
465 (abs(eta) > 3.0 && abs(eta) <= 5.0) * sqrt(energy^2*0.11^2 + energy*2.80^2)}
466
467}
468
469#################################
470# Energy resolution for electrons
471#################################
472
473module EnergySmearing PhotonEnergySmearing {
474 set InputArray ECal/eflowPhotons
475 set OutputArray eflowPhotons
476
477 # adding 1% extra photon smearing
478 set ResolutionFormula {energy*0.01}
479
480}
481
482
483
484#################
485# Electron filter
486#################
487
488module PdgCodeFilter ElectronFilter {
489 set InputArray HCal/eflowTracks
490 set OutputArray electrons
491 set Invert true
492 add PdgCode {11}
493 add PdgCode {-11}
494}
495
496
497##########################
498# Track pile-up subtractor
499##########################
500
501module TrackPileUpSubtractor TrackPileUpSubtractor {
502# add InputArray InputArray OutputArray
503 add InputArray HCal/eflowTracks eflowTracks
504 add InputArray ElectronFilter/electrons electrons
505 add InputArray MuonMomentumSmearing/muons muons
506
507 set VertexInputArray PileUpMerger/vertices
508 # assume perfect pile-up subtraction for tracks with |z| > fZVertexResolution
509 # Z vertex resolution in m
510 set ZVertexResolution 0.0001
511}
512
513
514###################################################
515# Tower Merger (in case not using e-flow algorithm)
516###################################################
517
518module Merger TowerMerger {
519# add InputArray InputArray
520 add InputArray ECal/ecalTowers
521 add InputArray HCal/hcalTowers
522 set OutputArray towers
523}
524
525
526####################
527# Neutral eflow erger
528####################
529
530module Merger NeutralEFlowMerger {
531# add InputArray InputArray
532 add InputArray PhotonEnergySmearing/eflowPhotons
533 add InputArray HCal/eflowNeutralHadrons
534 set OutputArray eflowTowers
535}
536
537
538####################
539# Energy flow merger
540####################
541
542module Merger EFlowMerger {
543# add InputArray InputArray
544 add InputArray HCal/eflowTracks
545 add InputArray PhotonEnergySmearing/eflowPhotons
546 add InputArray HCal/eflowNeutralHadrons
547 set OutputArray eflow
548}
549
550##################################
551# Energy flow merger (all tracks)
552##################################
553
554module Merger EFlowMergerAllTracks {
555# add InputArray InputArray
556 add InputArray TrackMerger/tracks
557 add InputArray PhotonEnergySmearing/eflowPhotons
558 add InputArray HCal/eflowNeutralHadrons
559 set OutputArray eflow
560}
561
562#########################################
563### Run the puppi code (to be tuned) ###
564#########################################
565
566module PdgCodeFilter LeptonFilterNoLep {
567 set InputArray HCal/eflowTracks
568 set OutputArray eflowTracksNoLeptons
569 set Invert false
570 add PdgCode {13}
571 add PdgCode {-13}
572 add PdgCode {11}
573 add PdgCode {-11}
574}
575
576module PdgCodeFilter LeptonFilterLep {
577 set InputArray HCal/eflowTracks
578 set OutputArray eflowTracksLeptons
579 set Invert true
580 add PdgCode {11}
581 add PdgCode {-11}
582 add PdgCode {13}
583 add PdgCode {-13}
584}
585
586module RunPUPPI RunPUPPIBase {
587 ## input information
588 set TrackInputArray LeptonFilterNoLep/eflowTracksNoLeptons
589 set NeutralInputArray NeutralEFlowMerger/eflowTowers
590 set PVInputArray PileUpMerger/vertices
591 set MinPuppiWeight 0.05
592 set UseExp false
593 set UseNoLep false
594
595 ## define puppi algorithm parameters (more than one for the same eta region is possible)
596 add EtaMinBin 0.0 1.5 4.0
597 add EtaMaxBin 1.5 4.0 10.0
598 add PtMinBin 0.0 0.0 0.0
599 add ConeSizeBin 0.2 0.2 0.2
600 add RMSPtMinBin 0.1 0.5 0.5
601 add RMSScaleFactorBin 1.0 1.0 1.0
602 add NeutralMinEBin 0.2 0.2 0.5
603 add NeutralPtSlope 0.006 0.013 0.067
604 add ApplyCHS true true true
605 add UseCharged true true false
606 add ApplyLowPUCorr true true true
607 add MetricId 5 5 5
608 add CombId 0 0 0
609
610 ## output name
611 set OutputArray PuppiParticles
612 set OutputArrayTracks puppiTracks
613 set OutputArrayNeutrals puppiNeutrals
614}
615
616module Merger RunPUPPI {
617 add InputArray RunPUPPIBase/PuppiParticles
618 add InputArray LeptonFilterLep/eflowTracksLeptons
619 set OutputArray PuppiParticles
620}
621
622###################
623# Missing ET merger
624###################
625
626module Merger MissingET {
627# add InputArray InputArray
628# add InputArray RunPUPPI/PuppiParticles
629 add InputArray EFlowMerger/eflow
630 set MomentumOutputArray momentum
631}
632
633module Merger PuppiMissingET {
634 #add InputArray InputArray
635 add InputArray RunPUPPI/PuppiParticles
636 #add InputArray EFlowMerger/eflow
637 set MomentumOutputArray momentum
638}
639
640###################
641# Ger PileUp Missing ET
642###################
643
644module Merger GenPileUpMissingET {
645# add InputArray InputArray
646# add InputArray RunPUPPI/PuppiParticles
647 add InputArray ParticlePropagator/stableParticles
648 set MomentumOutputArray momentum
649}
650
651##################
652# Scalar HT merger
653##################
654
655module Merger ScalarHT {
656# add InputArray InputArray
657 add InputArray RunPUPPI/PuppiParticles
658 set EnergyOutputArray energy
659}
660
661#################
662# Neutrino Filter
663#################
664
665module PdgCodeFilter NeutrinoFilter {
666
667 set InputArray Delphes/stableParticles
668 set OutputArray filteredParticles
669
670 set PTMin 0.0
671
672 add PdgCode {12}
673 add PdgCode {14}
674 add PdgCode {16}
675 add PdgCode {-12}
676 add PdgCode {-14}
677 add PdgCode {-16}
678
679}
680
681
682#####################
683# MC truth jet finder
684#####################
685
686module FastJetFinder GenJetFinder {
687 set InputArray NeutrinoFilter/filteredParticles
688
689 set OutputArray jets
690
691 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
692 set JetAlgorithm 6
693 set ParameterR 0.4
694
695 set JetPTMin 15.0
696}
697
698#########################
699# Gen Missing ET merger
700########################
701
702module Merger GenMissingET {
703
704# add InputArray InputArray
705 add InputArray NeutrinoFilter/filteredParticles
706 set MomentumOutputArray momentum
707}
708
709
710
711############
712# Jet finder
713############
714
715module FastJetFinder FastJetFinder {
716# set InputArray TowerMerger/towers
717 set InputArray RunPUPPI/PuppiParticles
718
719 set OutputArray jets
720
721 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
722 set JetAlgorithm 6
723 set ParameterR 0.4
724
725 set JetPTMin 15.0
726}
727
728
729
730############
731# Jet finder
732############
733
734module FastJetFinder FatJetFinder {
735# set InputArray TowerMerger/towers
736 set InputArray RunPUPPI/PuppiParticles
737
738 set OutputArray jets
739
740 set JetAlgorithm 5
741 set ParameterR 0.8
742
743 set ComputeNsubjettiness 1
744 set Beta 1.0
745 set AxisMode 4
746
747 set ComputeTrimming 1
748 set RTrim 0.2
749 set PtFracTrim 0.05
750
751 set ComputePruning 1
752 set ZcutPrun 0.1
753 set RcutPrun 0.5
754 set RPrun 0.8
755
756 set ComputeSoftDrop 1
757 set BetaSoftDrop 0.0
758 set SymmetryCutSoftDrop 0.1
759 set R0SoftDrop 0.8
760
761 set JetPTMin 200.0
762}
763
764
765##################
766# Jet Energy Scale
767##################
768
769module EnergyScale JetEnergyScale {
770 set InputArray FastJetFinder/jets
771 set OutputArray jets
772
773 # scale formula for jets
774 set ScaleFormula {1.00}
775}
776
777
778#################
779# Photon filter
780#################
781
782module PdgCodeFilter PhotonFilter {
783 set InputArray PhotonEnergySmearing/eflowPhotons
784 set OutputArray photons
785 set Invert true
786 set PTMin 5.0
787 add PdgCode {22}
788}
789
790
791####################
792# Photon isolation #
793####################
794
795module Isolation PhotonIsolation {
796
797 # particle for which calculate the isolation
798 set CandidateInputArray PhotonFilter/photons
799
800 # isolation collection
801 set IsolationInputArray RunPUPPI/PuppiParticles
802
803 # output array
804 set OutputArray photons
805
806 # veto isolation cand. based on proximity to input cand.
807 set DeltaRMin 0.01
808 set UseMiniCone true
809
810 # isolation cone
811 set DeltaRMax 0.3
812
813 # minimum pT
814 set PTMin 1.0
815
816 # iso ratio to cut
817 set PTRatioMax 9999.
818
819}
820
821
822
823#####################
824# Photon efficiency #
825#####################
826
827module Efficiency PhotonEfficiency {
828
829 ## input particles
830 set InputArray PhotonIsolation/photons
831 ## output particles
832 set OutputArray photons
833 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
834 # efficiency formula for photons
835 set EfficiencyFormula { (pt <= 10.0) * (0.00) + \
836 (abs(eta) <= 1.5) * (pt > 10.0) * (0.9635) + \
837 (abs(eta) > 1.5 && abs(eta) <= 4.0) * (pt > 10.0) * (0.9624) + \
838 (abs(eta) > 4.0) * (0.00)}
839
840}
841
842
843######################
844# Electron isolation #
845######################
846
847module Isolation ElectronIsolation {
848
849 set CandidateInputArray ElectronFilter/electrons
850
851 # isolation collection
852 set IsolationInputArray RunPUPPI/PuppiParticles
853 #set IsolationInputArray EFlowMerger/eflow
854
855 set OutputArray electrons
856
857 set DeltaRMax 0.3
858 set PTMin 1.0
859 set PTRatioMax 9999.
860
861}
862
863
864
865#######################
866# Electron efficiency #
867#######################
868
869module Efficiency ElectronEfficiency {
870
871 set InputArray ElectronIsolation/electrons
872 set OutputArray electrons
873
874 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
875 # efficiency formula for electrons
876 set EfficiencyFormula {
877 (pt <= 4.0) * (0.00) + \
878 (abs(eta) <= 1.45 ) * (pt > 4.0 && pt <= 6.0) * (0.50) + \
879 (abs(eta) <= 1.45 ) * (pt > 6.0 && pt <= 8.0) * (0.70) + \
880 (abs(eta) <= 1.45 ) * (pt > 8.0 && pt <= 10.0) * (0.85) + \
881 (abs(eta) <= 1.45 ) * (pt > 10.0 && pt <= 30.0) * (0.94) + \
882 (abs(eta) <= 1.45 ) * (pt > 30.0 && pt <= 50.0) * (0.97) + \
883 (abs(eta) <= 1.45 ) * (pt > 50.0 && pt <= 70.0) * (0.98) + \
884 (abs(eta) <= 1.45 ) * (pt > 70.0 ) * (1.0) + \
885 (abs(eta) > 1.45 && abs(eta) <= 1.55) * (pt > 4.0 && pt <= 10.0) * (0.35) + \
886 (abs(eta) > 1.45 && abs(eta) <= 1.55) * (pt > 10.0 && pt <= 30.0) * (0.40) + \
887 (abs(eta) > 1.45 && abs(eta) <= 1.55) * (pt > 30.0 && pt <= 70.0) * (0.45) + \
888 (abs(eta) > 1.45 && abs(eta) <= 1.55) * (pt > 70.0 ) * (0.55) + \
889 (abs(eta) >= 1.55 && abs(eta) <= 2.0 ) * (pt > 4.0 && pt <= 10.0) * (0.75) + \
890 (abs(eta) >= 1.55 && abs(eta) <= 2.0 ) * (pt > 10.0 && pt <= 30.0) * (0.85) + \
891 (abs(eta) >= 1.55 && abs(eta) <= 2.0 ) * (pt > 30.0 && pt <= 50.0) * (0.95) + \
892 (abs(eta) >= 1.55 && abs(eta) <= 2.0 ) * (pt > 50.0 && pt <= 70.0) * (0.95) + \
893 (abs(eta) >= 1.55 && abs(eta) <= 2.0 ) * (pt > 70.0 ) * (1.0) + \
894 (abs(eta) >= 2.0 && abs(eta) <= 2.5 ) * (pt > 4.0 && pt <= 10.0) * (0.65) + \
895 (abs(eta) >= 2.0 && abs(eta) <= 2.5 ) * (pt > 10.0 && pt <= 30.0) * (0.75) + \
896 (abs(eta) >= 2.0 && abs(eta) <= 2.5 ) * (pt > 30.0 && pt <= 50.0) * (0.90) + \
897 (abs(eta) >= 2.0 && abs(eta) <= 2.5 ) * (pt > 50.0 && pt <= 70.0) * (0.90) + \
898 (abs(eta) >= 2.0 && abs(eta) <= 2.5 ) * (pt > 70.0 ) * (0.90) + \
899 (abs(eta) > 2.5 && abs(eta) <= 4.0 ) * (pt > 4.0 && pt <= 10.0) * (0.65) + \
900 (abs(eta) > 2.5 && abs(eta) <= 4.0 ) * (pt > 10.0 && pt <= 30.0) * (0.75) + \
901 (abs(eta) > 2.5 && abs(eta) <= 4.0 ) * (pt > 30.0 && pt <= 50.0) * (0.90) + \
902 (abs(eta) > 2.5 && abs(eta) <= 4.0 ) * (pt > 50.0 && pt <= 70.0) * (0.90) + \
903 (abs(eta) > 2.5 && abs(eta) <= 4.0 ) * (pt > 70.0 ) * (0.90) + \
904 (abs(eta) > 4.0) * (0.00)
905
906 }
907}
908
909##################
910# Muon isolation #
911##################
912
913module Isolation MuonIsolation {
914 set CandidateInputArray MuonMomentumSmearing/muons
915
916 # isolation collection
917 set IsolationInputArray RunPUPPI/PuppiParticles
918
919 set OutputArray muons
920
921 set DeltaRMax 0.3
922 set PTMin 1.0
923 set PTRatioMax 9999.
924
925}
926
927
928##################
929# Muon Loose Id #
930##################
931
932module Efficiency MuonLooseIdEfficiency {
933 set InputArray MuonIsolation/muons
934 set OutputArray muons
935 # tracking + LooseID efficiency formula for muons
936 source muonLooseId.tcl
937
938}
939
940
941##################
942# Muon Tight Id #
943##################
944
945module Efficiency MuonTightIdEfficiency {
946 set InputArray MuonIsolation/muons
947 set OutputArray muons
948 # tracking + TightID efficiency formula for muons
949 source muonTightId.tcl
950}
951
952
953
954########################
955# Jet Flavor Association
956########################
957
958module JetFlavorAssociation JetFlavorAssociation {
959
960 set PartonInputArray Delphes/partons
961 set ParticleInputArray Delphes/allParticles
962 set ParticleLHEFInputArray Delphes/allParticlesLHEF
963 set JetInputArray JetEnergyScale/jets
964
965 set DeltaR 0.5
966 set PartonPTMin 10.0
967 set PartonEtaMax 4.0
968
969}
970
971
972#############
973# b-tagging #
974#############
975module BTagging BTaggingLoose {
976
977 set JetInputArray JetEnergyScale/jets
978
979 set BitNumber 0
980
981 source btagLoose.tcl
982}
983
984
985#############
986# b-tagging #
987#############
988module BTagging BTaggingMedium {
989
990 set JetInputArray JetEnergyScale/jets
991
992 set BitNumber 1
993
994 source btagMedium.tcl
995}
996
997
998#############
999# b-tagging #
1000#############
1001module BTagging BTaggingTight {
1002
1003 set JetInputArray JetEnergyScale/jets
1004
1005 set BitNumber 2
1006
1007 source btagTight.tcl
1008}
1009
1010
1011#############
1012# tau-tagging
1013#############
1014
1015
1016module TauTagging TauTagging {
1017 set ParticleInputArray Delphes/allParticles
1018 set PartonInputArray Delphes/partons
1019 set JetInputArray JetEnergyScale/jets
1020
1021 set DeltaR 0.5
1022
1023 set TauPTMin 20.0
1024
1025 set TauEtaMax 2.3
1026
1027 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
1028
1029 add EfficiencyFormula {0} { (abs(eta) < 2.3) * ((( -0.00621816+0.00130097*pt-2.19642e-5*pt^2+1.49393e-7*pt^3-4.58972e-10*pt^4+5.27983e-13*pt^5 )) * (pt<250) + 0.0032*(pt>250)) + \
1030 (abs(eta) > 2.3) * (0.000)
1031 }
1032 add EfficiencyFormula {15} { (abs(eta) < 2.3) * 0.97*0.77*( (0.32 + 0.01*pt - 0.000054*pt*pt )*(pt<100)+0.78*(pt>100) ) + \
1033 (abs(eta) > 2.3) * (0.000)
1034 }
1035}
1036
1037
1038###############################################################################################################
1039# StatusPidFilter: this module removes all generated particles except electrons, muons, taus, and status == 3 #
1040###############################################################################################################
1041
1042module StatusPidFilter GenParticleFilter {
1043
1044 set InputArray Delphes/allParticles
1045 set OutputArray filteredParticles
1046 set PTMin 5.0
1047
1048}
1049
1050
1051##################
1052# ROOT tree writer
1053##################
1054
1055module TreeWriter TreeWriter {
1056# add Branch InputArray BranchName BranchClass
1057 add Branch GenParticleFilter/filteredParticles Particle GenParticle
1058 add Branch PileUpMerger/vertices Vertex Vertex
1059
1060 add Branch GenJetFinder/jets GenJet Jet
1061 add Branch GenMissingET/momentum GenMissingET MissingET
1062
1063# add Branch HCal/eflowTracks EFlowTrack Track
1064# add Branch ECal/eflowPhotons EFlowPhoton Tower
1065# add Branch HCal/eflowNeutralHadrons EFlowNeutralHadron Tower
1066
1067 add Branch PhotonEfficiency/photons Photon Photon
1068 add Branch ElectronEfficiency/electrons Electron Electron
1069 add Branch MuonLooseIdEfficiency/muons MuonLoose Muon
1070 add Branch MuonTightIdEfficiency/muons MuonTight Muon
1071
1072 add Branch JetEnergyScale/jets Jet Jet
1073 add Branch FatJetFinder/jets FatJet Jet
1074
1075 add Branch MissingET/momentum MissingET MissingET
1076 add Branch PuppiMissingET/momentum PuppiMissingET MissingET
1077 add Branch GenPileUpMissingET/momentum GenPileUpMissingET MissingET
1078 add Branch ScalarHT/energy ScalarHT ScalarHT
1079}
1080
Note: See TracBrowser for help on using the repository browser.