Fork me on GitHub

source: svn/trunk/examples/delphes_card_ATLAS_PileUp.tcl@ 1302

Last change on this file since 1302 was 1279, checked in by Pavel Demin, 11 years ago

revert to pre 3.0.10 charged hadron resolution for ATLAS

File size: 19.8 KB
Line 
1#######################################
2# Order of execution of various modules
3#######################################
4
5set ExecutionPath {
6
7 PileUpMerger
8 ParticlePropagator
9
10 ChargedHadronTrackingEfficiency
11 ElectronTrackingEfficiency
12 MuonTrackingEfficiency
13
14 ChargedHadronMomentumSmearing
15 ElectronEnergySmearing
16 MuonMomentumSmearing
17
18 TrackMerger
19 Calorimeter
20 TrackPileUpSubtractor
21 EFlowMerger
22
23 GenJetFinder
24
25 Rho
26 FastJetFinder
27 JetPileUpSubtractor
28
29 JetEnergyScale
30
31 PhotonEfficiency
32 PhotonIsolation
33
34 ElectronEfficiency
35 ElectronIsolation
36
37 MuonEfficiency
38 MuonIsolation
39
40 MissingET
41
42 BTagging
43 TauTagging
44
45 UniqueObjectFinder
46
47 ScalarHT
48
49 TreeWriter
50}
51
52###############
53# PileUp Merger
54###############
55
56module PileUpMerger PileUpMerger {
57 set InputArray Delphes/stableParticles
58
59 set OutputArray stableParticles
60
61 # pre-generated minbias input file
62 set PileUpFile MinBias.pileup
63
64 # average expected pile up
65 set MeanPileUp 50
66 # spread in the beam direction in m (assumes gaussian)
67 set ZVertexSpread 0.07
68}
69
70#################################
71# Propagate particles in cylinder
72#################################
73
74module ParticlePropagator ParticlePropagator {
75 set InputArray PileUpMerger/stableParticles
76
77 set OutputArray stableParticles
78 set ChargedHadronOutputArray chargedHadrons
79 set ElectronOutputArray electrons
80 set MuonOutputArray muons
81
82 # radius of the magnetic field coverage, in m
83 set Radius 1.15
84 # half-length of the magnetic field coverage, in m
85 set HalfLength 3.51
86
87 # magnetic field
88 set Bz 2.0
89}
90
91####################################
92# Charged hadron tracking efficiency
93####################################
94
95module Efficiency ChargedHadronTrackingEfficiency {
96 set InputArray ParticlePropagator/chargedHadrons
97 set OutputArray chargedHadrons
98
99 # add EfficiencyFormula {efficiency formula as a function of eta and pt}
100
101 # tracking efficiency formula for charged hadrons
102 set EfficiencyFormula { (pt <= 0.1) * (0.00) + \
103 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.70) + \
104 (abs(eta) <= 1.5) * (pt > 1.0) * (0.95) + \
105 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.60) + \
106 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0) * (0.85) + \
107 (abs(eta) > 2.5) * (0.00)}
108}
109
110##############################
111# Electron tracking efficiency
112##############################
113
114module Efficiency ElectronTrackingEfficiency {
115 set InputArray ParticlePropagator/electrons
116 set OutputArray electrons
117
118 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
119
120 # tracking efficiency formula for electrons
121 set EfficiencyFormula { (pt <= 0.1) * (0.00) + \
122 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.73) + \
123 (abs(eta) <= 1.5) * (pt > 1.0 && pt <= 1.0e2) * (0.95) + \
124 (abs(eta) <= 1.5) * (pt > 1.0e2) * (0.99) + \
125 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.50) + \
126 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0 && pt <= 1.0e2) * (0.83) + \
127 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e2) * (0.90) + \
128 (abs(eta) > 2.5) * (0.00)}
129}
130
131##########################
132# Muon tracking efficiency
133##########################
134
135module Efficiency MuonTrackingEfficiency {
136 set InputArray ParticlePropagator/muons
137 set OutputArray muons
138
139 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
140
141 # tracking efficiency formula for muons
142 set EfficiencyFormula { (pt <= 0.1) * (0.00) + \
143 (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.75) + \
144 (abs(eta) <= 1.5) * (pt > 1.0) * (0.99) + \
145 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.70) + \
146 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0) * (0.98) + \
147 (abs(eta) > 2.5) * (0.00)}
148}
149
150########################################
151# Momentum resolution for charged tracks
152########################################
153
154module MomentumSmearing ChargedHadronMomentumSmearing {
155 set InputArray ChargedHadronTrackingEfficiency/chargedHadrons
156 set OutputArray chargedHadrons
157
158 # set ResolutionFormula {resolution formula as a function of eta and pt}
159
160 # resolution formula for charged hadrons
161 set ResolutionFormula { (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.02) + \
162 (abs(eta) <= 1.5) * (pt > 1.0 && pt <= 1.0e1) * (0.01) + \
163 (abs(eta) <= 1.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.03) + \
164 (abs(eta) <= 1.5) * (pt > 2.0e2) * (0.05) + \
165 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.03) + \
166 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0 && pt <= 1.0e1) * (0.02) + \
167 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e1 && pt <= 2.0e2) * (0.04) + \
168 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 2.0e2) * (0.05)}
169}
170
171#################################
172# Energy resolution for electrons
173#################################
174
175module EnergySmearing ElectronEnergySmearing {
176 set InputArray ElectronTrackingEfficiency/electrons
177 set OutputArray electrons
178
179 # set ResolutionFormula {resolution formula as a function of eta and energy}
180
181 set ResolutionFormula { (abs(eta) <= 2.5) * (energy > 0.1 && energy <= 2.5e1) * (energy*0.015) + \
182 (abs(eta) <= 2.5) * (energy > 2.5e1) * sqrt(energy^2*0.005^2 + energy*0.05^2 + 0.25^2) + \
183 (abs(eta) > 2.5 && abs(eta) <= 3.0) * sqrt(energy^2*0.005^2 + energy*0.05^2 + 0.25^2) + \
184 (abs(eta) > 3.0 && abs(eta) <= 5.0) * sqrt(energy^2*0.107^2 + energy*2.08^2)}
185
186}
187
188###############################
189# Momentum resolution for muons
190###############################
191
192module MomentumSmearing MuonMomentumSmearing {
193 set InputArray MuonTrackingEfficiency/muons
194 set OutputArray muons
195
196 # set ResolutionFormula {resolution formula as a function of eta and pt}
197
198 # resolution formula for muons
199 set ResolutionFormula { (abs(eta) <= 1.5) * (pt > 0.1 && pt <= 1.0) * (0.03) + \
200 (abs(eta) <= 1.5) * (pt > 1.0 && pt <= 5.0e1) * (0.03) + \
201 (abs(eta) <= 1.5) * (pt > 5.0e1 && pt <= 1.0e2) * (0.04) + \
202 (abs(eta) <= 1.5) * (pt > 1.0e2) * (0.07) + \
203 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 0.1 && pt <= 1.0) * (0.04) + \
204 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0 && pt <= 5.0e1) * (0.04) + \
205 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 5.0e1 && pt <= 1.0e2) * (0.05) + \
206 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 1.0e2) * (0.10)}
207}
208
209##############
210# Track merger
211##############
212
213module Merger TrackMerger {
214# add InputArray InputArray
215 add InputArray ChargedHadronMomentumSmearing/chargedHadrons
216 add InputArray ElectronEnergySmearing/electrons
217 set OutputArray tracks
218}
219
220#############
221# Calorimeter
222#############
223
224module Calorimeter Calorimeter {
225 set ParticleInputArray ParticlePropagator/stableParticles
226 set TrackInputArray TrackMerger/tracks
227
228 set TowerOutputArray towers
229 set PhotonOutputArray photons
230
231 set EFlowTrackOutputArray eflowTracks
232 set EFlowTowerOutputArray eflowTowers
233
234 set pi [expr {acos(-1)}]
235
236 # lists of the edges of each tower in eta and phi
237 # each list starts with the lower edge of the first tower
238 # the list ends with the higher edged of the last tower
239
240 # 10 degrees towers
241 set PhiBins {}
242 for {set i -18} {$i <= 18} {incr i} {
243 add PhiBins [expr {$i * $pi/18.0}]
244 }
245 foreach eta {-3.2 -2.5 -2.4 -2.3 -2.2 -2.1 -2 -1.9 -1.8 -1.7 -1.6 -1.5 -1.4 -1.3 -1.2 -1.1 -1 -0.9 -0.8 -0.7 -0.6 -0.5 -0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 2.1 2.2 2.3 2.4 2.5 2.6 3.3} {
246 add EtaPhiBins $eta $PhiBins
247 }
248
249 # 20 degrees towers
250 set PhiBins {}
251 for {set i -9} {$i <= 9} {incr i} {
252 add PhiBins [expr {$i * $pi/9.0}]
253 }
254 foreach eta {-4.9 -4.7 -4.5 -4.3 -4.1 -3.9 -3.7 -3.5 -3.3 -3 -2.8 -2.6 2.8 3 3.2 3.5 3.7 3.9 4.1 4.3 4.5 4.7 4.9} {
255 add EtaPhiBins $eta $PhiBins
256 }
257
258 # default energy fractions {abs(PDG code)} {Fecal Fhcal}
259 add EnergyFraction {0} {0.0 1.0}
260 # energy fractions for e, gamma and pi0
261 add EnergyFraction {11} {1.0 0.0}
262 add EnergyFraction {22} {1.0 0.0}
263 add EnergyFraction {111} {1.0 0.0}
264 # energy fractions for muon, neutrinos and neutralinos
265 add EnergyFraction {12} {0.0 0.0}
266 add EnergyFraction {13} {0.0 0.0}
267 add EnergyFraction {14} {0.0 0.0}
268 add EnergyFraction {16} {0.0 0.0}
269 add EnergyFraction {1000022} {0.0 0.0}
270 add EnergyFraction {1000023} {0.0 0.0}
271 add EnergyFraction {1000025} {0.0 0.0}
272 add EnergyFraction {1000035} {0.0 0.0}
273 add EnergyFraction {1000045} {0.0 0.0}
274 # energy fractions for K0short and Lambda
275 add EnergyFraction {310} {0.3 0.7}
276 add EnergyFraction {3122} {0.3 0.7}
277
278 # set ECalResolutionFormula {resolution formula as a function of eta and energy}
279 # http://arxiv.org/pdf/physics/0608012v1 jinst8_08_s08003
280 # http://villaolmo.mib.infn.it/ICATPP9th_2005/Calorimetry/Schram.p.pdf
281 # http://www.physics.utoronto.ca/~krieger/procs/ComoProceedings.pdf
282 set ECalResolutionFormula { (abs(eta) <= 3.2) * sqrt(energy^2*0.0017^2 + energy*0.101^2) + \
283 (abs(eta) > 3.2 && abs(eta) <= 4.9) * sqrt(energy^2*0.0350^2 + energy*0.285^2)}
284
285 # set HCalResolutionFormula {resolution formula as a function of eta and energy}
286 # http://arxiv.org/pdf/hep-ex/0004009v1
287 # http://villaolmo.mib.infn.it/ICATPP9th_2005/Calorimetry/Schram.p.pdf
288 set HCalResolutionFormula { (abs(eta) <= 1.7) * sqrt(energy^2*0.0302^2 + energy*0.5205^2 + 1.59^2) + \
289 (abs(eta) > 1.7 && abs(eta) <= 3.2) * sqrt(energy^2*0.0500^2 + energy*0.706^2) + \
290 (abs(eta) > 3.2 && abs(eta) <= 4.9) * sqrt(energy^2*0.9420^2 + energy*0.075^2)}
291}
292
293##########################
294# Track pile-up subtractor
295##########################
296
297module TrackPileUpSubtractor TrackPileUpSubtractor {
298# add InputArray InputArray OutputArray
299 add InputArray Calorimeter/eflowTracks eflowTracks
300 add InputArray ElectronEnergySmearing/electrons electrons
301 add InputArray MuonMomentumSmearing/muons muons
302
303 # assume perfect pile-up subtraction for tracks with |z| > fZVertexResolution
304 # Z vertex resolution in m
305 set ZVertexResolution 0.0001
306}
307
308####################
309# Energy flow merger
310####################
311
312module Merger EFlowMerger {
313# add InputArray InputArray
314 add InputArray TrackPileUpSubtractor/eflowTracks
315 add InputArray Calorimeter/eflowTowers
316 add InputArray MuonMomentumSmearing/muons
317 set OutputArray eflow
318}
319
320#############
321# Rho pile-up
322#############
323
324module FastJetFinder Rho {
325 set InputArray Calorimeter/towers
326
327 set ComputeRho true
328 set RhoOutputArray rho
329
330 # area algorithm: 0 Do not compute area, 1 Active area explicit ghosts, 2 One ghost passive area, 3 Passive area, 4 Voronoi, 5 Active area
331 set AreaAlgorithm 5
332
333 # jet algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
334 set JetAlgorithm 4
335 set ParameterR 0.6
336 set GhostEtaMax 5.0
337 set RhoEtaMax 5.0
338
339 set JetPTMin 0.0
340}
341
342#####################
343# MC truth jet finder
344#####################
345
346module FastJetFinder GenJetFinder {
347 set InputArray Delphes/stableParticles
348
349 set OutputArray jets
350
351 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
352 set JetAlgorithm 6
353 set ParameterR 0.6
354
355 set JetPTMin 20.0
356}
357
358############
359# Jet finder
360############
361
362module FastJetFinder FastJetFinder {
363 set InputArray Calorimeter/towers
364
365 set OutputArray jets
366
367 # area algorithm: 0 Do not compute area, 1 Active area explicit ghosts, 2 One ghost passive area, 3 Passive area, 4 Voronoi, 5 Active area
368 set AreaAlgorithm 5
369
370 # jet algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
371 set JetAlgorithm 6
372 set ParameterR 0.6
373
374 set JetPTMin 20.0
375}
376
377###########################
378# Jet Pile-Up Subtraction
379###########################
380
381module JetPileUpSubtractor JetPileUpSubtractor {
382 set JetInputArray FastJetFinder/jets
383 set RhoInputArray Rho/rho
384
385 set OutputArray jets
386
387 set JetPTMin 20.0
388}
389
390##################
391# Jet Energy Scale
392##################
393
394module EnergyScale JetEnergyScale {
395 set InputArray JetPileUpSubtractor/jets
396 set OutputArray jets
397
398 # scale formula for jets
399 set ScaleFormula {1.0}
400}
401
402###################
403# Photon efficiency
404###################
405
406module Efficiency PhotonEfficiency {
407 set InputArray Calorimeter/photons
408 set OutputArray photons
409
410 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
411
412 # efficiency formula for photons
413 set EfficiencyFormula { (pt <= 10.0) * (0.00) + \
414 (abs(eta) <= 1.5) * (pt > 10.0) * (0.95) + \
415 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0) * (0.85) + \
416 (abs(eta) > 2.5) * (0.00)}
417}
418
419##################
420# Photon isolation
421##################
422
423module Isolation PhotonIsolation {
424 set CandidateInputArray PhotonEfficiency/photons
425 set IsolationInputArray EFlowMerger/eflow
426 set RhoInputArray Rho/rho
427
428 set OutputArray photons
429
430 set DeltaRMax 0.5
431
432 set PTMin 0.5
433
434 set PTRatioMax 0.1
435}
436
437#####################
438# Electron efficiency
439#####################
440
441module Efficiency ElectronEfficiency {
442 set InputArray TrackPileUpSubtractor/electrons
443 set OutputArray electrons
444
445 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
446
447 # efficiency formula for electrons
448 set EfficiencyFormula { (pt <= 10.0) * (0.00) + \
449 (abs(eta) <= 1.5) * (pt > 10.0) * (0.95) + \
450 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0) * (0.85) + \
451 (abs(eta) > 2.5) * (0.00)}
452}
453
454####################
455# Electron isolation
456####################
457
458module Isolation ElectronIsolation {
459 set CandidateInputArray ElectronEfficiency/electrons
460 set IsolationInputArray EFlowMerger/eflow
461 set RhoInputArray Rho/rho
462
463 set OutputArray electrons
464
465 set DeltaRMax 0.5
466
467 set PTMin 0.5
468
469 set PTRatioMax 0.1
470}
471
472#################
473# Muon efficiency
474#################
475
476module Efficiency MuonEfficiency {
477 set InputArray TrackPileUpSubtractor/muons
478 set OutputArray muons
479
480 # set EfficiencyFormula {efficiency as a function of eta and pt}
481
482 # efficiency formula for muons
483 set EfficiencyFormula { (pt <= 10.0) * (0.00) + \
484 (abs(eta) <= 1.5) * (pt > 10.0) * (0.95) + \
485 (abs(eta) > 1.5 && abs(eta) <= 2.7) * (pt > 10.0) * (0.85) + \
486 (abs(eta) > 2.7) * (0.00)}
487}
488
489################
490# Muon isolation
491################
492
493module Isolation MuonIsolation {
494 set CandidateInputArray MuonEfficiency/muons
495 set IsolationInputArray EFlowMerger/eflow
496 set RhoInputArray Rho/rho
497
498 set OutputArray muons
499
500 set DeltaRMax 0.5
501
502 set PTMin 0.5
503
504 set PTRatioMax 0.1
505}
506
507###################
508# Missing ET merger
509###################
510
511module Merger MissingET {
512# add InputArray InputArray
513 add InputArray EFlowMerger/eflow
514 set MomentumOutputArray momentum
515}
516
517##################
518# Scalar HT merger
519##################
520
521module Merger ScalarHT {
522# add InputArray InputArray
523 add InputArray UniqueObjectFinder/jets
524 add InputArray UniqueObjectFinder/electrons
525 add InputArray UniqueObjectFinder/photons
526 add InputArray UniqueObjectFinder/muons
527 set EnergyOutputArray energy
528}
529
530###########
531# b-tagging
532###########
533
534module BTagging BTagging {
535 set PartonInputArray Delphes/partons
536 set JetInputArray JetEnergyScale/jets
537
538 set BitNumber 0
539
540 set DeltaR 0.5
541
542 set PartonPTMin 1.0
543
544 set PartonEtaMax 2.5
545
546 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
547 # PDG code = the highest PDG code of a quark or gluon inside DeltaR cone around jet axis
548 # gluon's PDG code has the lowest priority
549
550 # default efficiency formula (misidentification rate)
551 add EfficiencyFormula {0} {0.001}
552
553 # efficiency formula for c-jets (misidentification rate)
554 add EfficiencyFormula {4} { (pt <= 15.0) * (0.000) + \
555 (abs(eta) <= 1.2) * (pt > 15.0) * (0.2*tanh(pt*0.03 - 0.4)) + \
556 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 15.0) * (0.1*tanh(pt*0.03 - 0.4)) + \
557 (abs(eta) > 2.5) * (0.000)}
558
559 # efficiency formula for b-jets
560 add EfficiencyFormula {5} { (pt <= 15.0) * (0.000) + \
561 (abs(eta) <= 1.2) * (pt > 15.0) * (0.5*tanh(pt*0.03 - 0.4)) + \
562 (abs(eta) > 1.2 && abs(eta) <= 2.5) * (pt > 15.0) * (0.4*tanh(pt*0.03 - 0.4)) + \
563 (abs(eta) > 2.5) * (0.000)}
564}
565
566module TauTagging TauTagging {
567 set ParticleInputArray Delphes/allParticles
568 set PartonInputArray Delphes/partons
569 set JetInputArray JetEnergyScale/jets
570
571 set DeltaR 0.5
572
573 set TauPTMin 1.0
574
575 set TauEtaMax 2.5
576
577 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
578
579 # default efficiency formula (misidentification rate)
580 add EfficiencyFormula {0} {0.001}
581 # efficiency formula for tau-jets
582 add EfficiencyFormula {15} {0.4}
583}
584
585#####################################################
586# Find uniquely identified photons/electrons/tau/jets
587#####################################################
588
589module UniqueObjectFinder UniqueObjectFinder {
590# earlier arrays take precedence over later ones
591# add InputArray InputArray OutputArray
592 add InputArray PhotonIsolation/photons photons
593 add InputArray ElectronIsolation/electrons electrons
594 add InputArray MuonIsolation/muons muons
595 add InputArray JetEnergyScale/jets jets
596}
597
598##################
599# ROOT tree writer
600##################
601
602module TreeWriter TreeWriter {
603# add Branch InputArray BranchName BranchClass
604 add Branch Delphes/allParticles Particle GenParticle
605 add Branch TrackMerger/tracks Track Track
606 add Branch Calorimeter/towers Tower Tower
607# add Branch Calorimeter/eflowTracks EFlowTrack Track
608# add Branch Calorimeter/eflowTowers EFlowTower Tower
609# add Branch MuonMomentumSmearing/muons EFlowMuon Muon
610 add Branch GenJetFinder/jets GenJet Jet
611 add Branch UniqueObjectFinder/jets Jet Jet
612 add Branch UniqueObjectFinder/electrons Electron Electron
613 add Branch UniqueObjectFinder/photons Photon Photon
614 add Branch UniqueObjectFinder/muons Muon Muon
615 add Branch MissingET/momentum MissingET MissingET
616 add Branch ScalarHT/energy ScalarHT ScalarHT
617 add Branch Rho/rho Rho Rho
618}
619
Note: See TracBrowser for help on using the repository browser.