Fork me on GitHub

source: svn/trunk/examples/delphes_card_ATLAS.tcl@ 1266

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

use eflow for isolation and fix b- and tau-tagging input arrays

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