Fork me on GitHub

Ticket #1126: delphes_card_ATLAS_R04.tcl

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