Fork me on GitHub

source: git/cards/CMS_PhaseII/CMS_PhaseII_200PU.tcl@ 1d6586a

ImprovedOutputFile Timing
Last change on this file since 1d6586a was f4fe7fb, checked in by GitHub <noreply@…>, 8 years ago

set back correct MinBias file on eos

set back correct MinBias file on eos

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