Fork me on GitHub

source: git/cards/delphes_card_ILD.tcl@ 354b7f3

Last change on this file since 354b7f3 was 78a2d4c, checked in by Michele Selvaggi <michele.selvaggi@…>, 8 years ago

corrected ECAL granularity for the ILD detector

  • Property mode set to 100644
File size: 17.4 KB
Line 
1# based on arXiv:1306.6329
2
3#######################################
4# Order of execution of various modules
5#######################################
6
7set ExecutionPath {
8 ParticlePropagator
9
10 ChargedHadronTrackingEfficiency
11 ElectronTrackingEfficiency
12 MuonTrackingEfficiency
13
14 ChargedHadronMomentumSmearing
15 ElectronMomentumSmearing
16 MuonMomentumSmearing
17
18 TrackMerger
19
20 ECal
21 HCal
22
23 Calorimeter
24 EFlowMerger
25 EFlowFilter
26
27 PhotonEfficiency
28 PhotonIsolation
29
30 ElectronFilter
31 ElectronEfficiency
32 ElectronIsolation
33
34 ChargedHadronFilter
35
36 MuonEfficiency
37 MuonIsolation
38
39 NeutrinoFilter
40 GenJetFinder
41 FastJetFinder
42
43 MissingET
44 GenMissingET
45
46 JetEnergyScale
47
48 JetFlavorAssociation
49
50 BTagging
51
52 TauTagging
53
54 ScalarHT
55
56 UniqueObjectFinder
57
58 TreeWriter
59}
60
61#################################
62# Propagate particles in cylinder
63#################################
64
65module ParticlePropagator ParticlePropagator {
66 set InputArray Delphes/stableParticles
67
68 set OutputArray stableParticles
69 set ChargedHadronOutputArray chargedHadrons
70 set ElectronOutputArray electrons
71 set MuonOutputArray muons
72
73 # radius of the magnetic field coverage, in m
74 set Radius 1.8
75 # half-length of the magnetic field coverage, in m
76 set HalfLength 2.4
77
78 # magnetic field
79 set Bz 3.5
80}
81
82####################################
83# Charged hadron tracking efficiency
84####################################
85
86module Efficiency ChargedHadronTrackingEfficiency {
87 set InputArray ParticlePropagator/chargedHadrons
88 set OutputArray chargedHadrons
89
90 # add EfficiencyFormula {efficiency formula as a function of eta and pt}
91
92 # tracking efficiency formula for charged hadrons
93 set EfficiencyFormula { (pt <= 0.1) * (0.00) +
94 (abs(eta) <= 2.4) * (pt > 0.1) * (0.99) +
95 (abs(eta) > 2.4) * (0.00)}
96}
97
98##############################
99# Electron tracking efficiency
100##############################
101
102module Efficiency ElectronTrackingEfficiency {
103 set InputArray ParticlePropagator/electrons
104 set OutputArray electrons
105
106 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
107
108 # tracking efficiency formula for electrons
109 set EfficiencyFormula { (pt <= 0.1) * (0.00) +
110 (abs(eta) <= 2.4) * (pt > 0.1) * (0.99) +
111 (abs(eta) > 2.4) * (0.00)}
112}
113
114##########################
115# Muon tracking efficiency
116##########################
117
118module Efficiency MuonTrackingEfficiency {
119 set InputArray ParticlePropagator/muons
120 set OutputArray muons
121
122 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
123
124 # tracking efficiency formula for muons
125 set EfficiencyFormula { (pt <= 0.1) * (0.00) +
126 (abs(eta) <= 2.4) * (pt > 0.1) * (0.99) +
127 (abs(eta) > 2.4) * (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) <= 1.0) * sqrt(0.001^2 + pt^2*1.e-5^2) +
142 (abs(eta) > 1.0 && abs(eta) <= 2.4) * sqrt(0.01^2 + pt^2*1.e-4^2)}
143
144
145}
146
147###################################
148# Momentum resolution for electrons
149###################################
150
151module MomentumSmearing ElectronMomentumSmearing {
152 set InputArray ElectronTrackingEfficiency/electrons
153 set OutputArray electrons
154
155 # set ResolutionFormula {resolution formula as a function of eta and energy}
156
157 # resolution formula for charged hadrons
158 set ResolutionFormula { (abs(eta) <= 1.0) * sqrt(0.001^2 + pt^2*1.e-5^2) +
159 (abs(eta) > 1.0 && abs(eta) <= 2.4) * sqrt(0.01^2 + pt^2*1.e-4^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 charged hadrons
173 set ResolutionFormula { (abs(eta) <= 1.0) * sqrt(0.001^2 + pt^2*1.e-5^2) +
174 (abs(eta) > 1.0 && abs(eta) <= 2.4) * sqrt(0.01^2 + pt^2*1.e-4^2)}
175
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# ECAL
192#############
193
194module SimpleCalorimeter ECal {
195 set ParticleInputArray ParticlePropagator/stableParticles
196 set TrackInputArray TrackMerger/tracks
197
198 set TowerOutputArray ecalTowers
199 set EFlowTrackOutputArray eflowTracks
200 set EFlowTowerOutputArray eflowPhotons
201
202 set IsEcal true
203
204 set EnergyMin 0.5
205 set EnergySignificanceMin 1.0
206
207 set SmearTowerCenter true
208
209 set pi [expr {acos(-1)}]
210
211 # lists of the edges of each tower in eta and phi
212 # each list starts with the lower edge of the first tower
213 # the list ends with the higher edged of the last tower
214
215 # 0.5 degree towers (5x5 mm^2)
216 set PhiBins {}
217 for {set i -360} {$i <= 360} {incr i} {
218 add PhiBins [expr {$i * $pi/360.0}]
219 }
220
221 # 0.01 unit in eta up to eta = 3.0
222 for {set i -300} {$i <= 300} {incr i} {
223 set eta [expr {$i * 0.01}]
224 add EtaPhiBins $eta $PhiBins
225 }
226
227 # default energy fractions {abs(PDG code)} {fraction of energy deposited in ECAL}
228
229 add EnergyFraction {0} {0.0}
230 # energy fractions for e, gamma and pi0
231 add EnergyFraction {11} {1.0}
232 add EnergyFraction {22} {1.0}
233 add EnergyFraction {111} {1.0}
234 # energy fractions for muon, neutrinos and neutralinos
235 add EnergyFraction {12} {0.0}
236 add EnergyFraction {13} {0.0}
237 add EnergyFraction {14} {0.0}
238 add EnergyFraction {16} {0.0}
239 add EnergyFraction {1000022} {0.0}
240 add EnergyFraction {1000023} {0.0}
241 add EnergyFraction {1000025} {0.0}
242 add EnergyFraction {1000035} {0.0}
243 add EnergyFraction {1000045} {0.0}
244 # energy fractions for K0short and Lambda
245 add EnergyFraction {310} {0.3}
246 add EnergyFraction {3122} {0.3}
247
248 # set ECalResolutionFormula {resolution formula as a function of eta and energy}
249
250 set ResolutionFormula { (abs(eta) <= 3.0) * sqrt(energy^2*0.01^2 + energy*0.15^2) }
251
252}
253
254#############
255# HCAL
256#############
257
258module SimpleCalorimeter HCal {
259 set ParticleInputArray ParticlePropagator/stableParticles
260 set TrackInputArray ECal/eflowTracks
261
262 set TowerOutputArray hcalTowers
263 set EFlowTrackOutputArray eflowTracks
264 set EFlowTowerOutputArray eflowNeutralHadrons
265
266 set IsEcal false
267
268 set EnergyMin 1.0
269 set EnergySignificanceMin 1.0
270
271 set SmearTowerCenter true
272
273 set pi [expr {acos(-1)}]
274
275 # lists of the edges of each tower in eta and phi
276 # each list starts with the lower edge of the first tower
277 # the list ends with the higher edged of the last tower
278
279
280 # 6 degree towers
281 set PhiBins {}
282 for {set i -60} {$i <= 60} {incr i} {
283 add PhiBins [expr {$i * $pi/60.0}]
284 }
285
286 # 0.5 unit in eta up to eta = 3
287 for {set i -60} {$i <= 60} {incr i} {
288 set eta [expr {$i * 0.05}]
289 add EtaPhiBins $eta $PhiBins
290 }
291
292
293 # default energy fractions {abs(PDG code)} {Fecal Fhcal}
294 add EnergyFraction {0} {1.0}
295 # energy fractions for e, gamma and pi0
296 add EnergyFraction {11} {0.0}
297 add EnergyFraction {22} {0.0}
298 add EnergyFraction {111} {0.0}
299 # energy fractions for muon, neutrinos and neutralinos
300 add EnergyFraction {12} {0.0}
301 add EnergyFraction {13} {0.0}
302 add EnergyFraction {14} {0.0}
303 add EnergyFraction {16} {0.0}
304 add EnergyFraction {1000022} {0.0}
305 add EnergyFraction {1000023} {0.0}
306 add EnergyFraction {1000025} {0.0}
307 add EnergyFraction {1000035} {0.0}
308 add EnergyFraction {1000045} {0.0}
309 # energy fractions for K0short and Lambda
310 add EnergyFraction {310} {0.7}
311 add EnergyFraction {3122} {0.7}
312
313 # set HCalResolutionFormula {resolution formula as a function of eta and energy}
314
315 set ResolutionFormula { (abs(eta) <= 3.0) * sqrt(energy^2*0.015^2 + energy*0.50^2)}
316
317}
318
319#################
320# Electron filter
321#################
322
323module PdgCodeFilter ElectronFilter {
324 set InputArray HCal/eflowTracks
325 set OutputArray electrons
326 set Invert true
327 add PdgCode {11}
328 add PdgCode {-11}
329}
330
331######################
332# ChargedHadronFilter
333######################
334
335module PdgCodeFilter ChargedHadronFilter {
336 set InputArray HCal/eflowTracks
337 set OutputArray chargedHadrons
338
339 add PdgCode {11}
340 add PdgCode {-11}
341 add PdgCode {13}
342 add PdgCode {-13}
343}
344
345
346
347###################################################
348# Tower Merger (in case not using e-flow algorithm)
349###################################################
350
351module Merger Calorimeter {
352# add InputArray InputArray
353 add InputArray ECal/ecalTowers
354 add InputArray HCal/hcalTowers
355 set OutputArray towers
356}
357
358
359####################
360# Energy flow merger
361####################
362
363module Merger EFlowMerger {
364# add InputArray InputArray
365 add InputArray HCal/eflowTracks
366 add InputArray ECal/eflowPhotons
367 add InputArray HCal/eflowNeutralHadrons
368 set OutputArray eflow
369}
370
371######################
372# EFlowFilter
373######################
374
375module PdgCodeFilter EFlowFilter {
376 set InputArray EFlowMerger/eflow
377 set OutputArray eflow
378
379 add PdgCode {11}
380 add PdgCode {-11}
381 add PdgCode {13}
382 add PdgCode {-13}
383}
384
385
386###################
387# Missing ET merger
388###################
389
390module Merger MissingET {
391# add InputArray InputArray
392 add InputArray EFlowMerger/eflow
393 set MomentumOutputArray momentum
394}
395
396
397##################
398# Scalar HT merger
399##################
400
401module Merger ScalarHT {
402# add InputArray InputArray
403 add InputArray EFlowMerger/eflow
404 set EnergyOutputArray energy
405}
406
407#################
408# Neutrino Filter
409#################
410
411module PdgCodeFilter NeutrinoFilter {
412
413 set InputArray Delphes/stableParticles
414 set OutputArray filteredParticles
415
416 set PTMin 0.0
417
418 add PdgCode {12}
419 add PdgCode {14}
420 add PdgCode {16}
421 add PdgCode {-12}
422 add PdgCode {-14}
423 add PdgCode {-16}
424
425}
426
427
428#####################
429# MC truth jet finder
430#####################
431
432module FastJetFinder GenJetFinder {
433 set InputArray NeutrinoFilter/filteredParticles
434
435 set OutputArray jets
436
437 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
438 set JetAlgorithm 6
439 set ParameterR 0.5
440
441 set JetPTMin 20.0
442}
443
444#########################
445# Gen Missing ET merger
446########################
447
448module Merger GenMissingET {
449# add InputArray InputArray
450 add InputArray NeutrinoFilter/filteredParticles
451 set MomentumOutputArray momentum
452}
453
454
455
456############
457# Jet finder
458############
459
460module FastJetFinder FastJetFinder {
461# set InputArray Calorimeter/towers
462 set InputArray EFlowMerger/eflow
463
464 set OutputArray jets
465
466 # algorithm: 1 CDFJetClu, 2 MidPoint, 3 SIScone, 4 kt, 5 Cambridge/Aachen, 6 antikt
467 set JetAlgorithm 6
468 set ParameterR 0.5
469
470 set JetPTMin 20.0
471}
472
473##################
474# Jet Energy Scale
475##################
476
477module EnergyScale JetEnergyScale {
478 set InputArray FastJetFinder/jets
479 set OutputArray jets
480
481 # scale formula for jets
482 set ScaleFormula {1.00}
483}
484
485
486########################
487# Jet Flavor Association
488########################
489
490module JetFlavorAssociation JetFlavorAssociation {
491
492 set PartonInputArray Delphes/partons
493 set ParticleInputArray Delphes/allParticles
494 set ParticleLHEFInputArray Delphes/allParticlesLHEF
495 set JetInputArray JetEnergyScale/jets
496
497 set DeltaR 0.5
498 set PartonPTMin 1.0
499 set PartonEtaMax 2.5
500
501}
502
503###################
504# Photon efficiency
505###################
506
507module Efficiency PhotonEfficiency {
508 set InputArray ECal/eflowPhotons
509 set OutputArray photons
510
511 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
512
513 # efficiency formula for photons
514 set EfficiencyFormula { (pt <= 10.0) * (0.00) +
515 (abs(eta) <= 1.5) * (pt > 10.0) * (0.95) +
516 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0) * (0.95) +
517 (abs(eta) > 2.5) * (0.00)}
518}
519
520##################
521# Photon isolation
522##################
523
524module Isolation PhotonIsolation {
525 set CandidateInputArray PhotonEfficiency/photons
526 set IsolationInputArray EFlowFilter/eflow
527
528 set OutputArray photons
529
530 set DeltaRMax 0.5
531
532 set PTMin 0.5
533
534 set PTRatioMax 0.12
535}
536
537#####################
538# Electron efficiency
539#####################
540
541module Efficiency ElectronEfficiency {
542 set InputArray ElectronFilter/electrons
543 set OutputArray electrons
544
545 # set EfficiencyFormula {efficiency formula as a function of eta and pt}
546
547 # efficiency formula for electrons
548 set EfficiencyFormula { (pt <= 10.0) * (0.00) +
549 (abs(eta) <= 1.5) * (pt > 10.0) * (0.95) +
550 (abs(eta) > 1.5 && abs(eta) <= 2.5) * (pt > 10.0) * (0.95) +
551 (abs(eta) > 2.5) * (0.00)}
552}
553
554####################
555# Electron isolation
556####################
557
558module Isolation ElectronIsolation {
559 set CandidateInputArray ElectronEfficiency/electrons
560 set IsolationInputArray EFlowFilter/eflow
561
562 set OutputArray electrons
563
564 set DeltaRMax 0.5
565
566 set PTMin 0.5
567
568 set PTRatioMax 0.12
569}
570
571#################
572# Muon efficiency
573#################
574
575module Efficiency MuonEfficiency {
576 set InputArray MuonMomentumSmearing/muons
577 set OutputArray muons
578
579 # set EfficiencyFormula {efficiency as a function of eta and pt}
580
581 # efficiency formula for muons
582 set EfficiencyFormula { (pt <= 10.0) * (0.00) +
583 (abs(eta) <= 1.5) * (pt > 10.0 && pt <= 1.0e3) * (0.95) +
584 (abs(eta) <= 1.5) * (pt > 1.0e3) * (0.95 * exp(0.5 - pt*5.0e-4)) +
585 (abs(eta) > 1.5 && abs(eta) <= 2.4) * (pt > 10.0 && pt <= 1.0e3) * (0.95) +
586 (abs(eta) > 1.5 && abs(eta) <= 2.4) * (pt > 1.0e3) * (0.95 * exp(0.5 - pt*5.0e-4)) +
587 (abs(eta) > 2.4) * (0.00)}
588}
589
590################
591# Muon isolation
592################
593
594module Isolation MuonIsolation {
595 set CandidateInputArray MuonEfficiency/muons
596 set IsolationInputArray EFlowFilter/eflow
597
598 set OutputArray muons
599
600 set DeltaRMax 0.5
601
602 set PTMin 0.5
603
604 set PTRatioMax 0.25
605}
606
607
608###########
609# b-tagging
610###########
611
612module BTagging BTagging {
613 set JetInputArray JetEnergyScale/jets
614
615 set BitNumber 0
616
617 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
618 # PDG code = the highest PDG code of a quark or gluon inside DeltaR cone around jet axis
619 # gluon's PDG code has the lowest priority
620
621 # based on arXiv:1211.4462
622
623 # default efficiency formula (misidentification rate)
624 add EfficiencyFormula {0} {0.01+0.000038*pt}
625
626 # efficiency formula for c-jets (misidentification rate)
627 add EfficiencyFormula {4} {0.25*tanh(0.018*pt)*(1/(1+ 0.0013*pt))}
628
629 # efficiency formula for b-jets
630 add EfficiencyFormula {5} {0.85*tanh(0.0025*pt)*(25.0/(1+0.063*pt))}
631}
632
633#############
634# tau-tagging
635#############
636
637
638module TauTagging TauTagging {
639 set ParticleInputArray Delphes/allParticles
640 set PartonInputArray Delphes/partons
641 set JetInputArray JetEnergyScale/jets
642
643 set DeltaR 0.5
644
645 set TauPTMin 1.0
646
647 set TauEtaMax 4.0
648
649 # add EfficiencyFormula {abs(PDG code)} {efficiency formula as a function of eta and pt}
650
651 # default efficiency formula (misidentification rate)
652 add EfficiencyFormula {0} {0.001}
653 # efficiency formula for tau-jets
654 add EfficiencyFormula {15} {0.4}
655}
656
657#####################################################
658# Find uniquely identified photons/electrons/tau/jets
659#####################################################
660
661module UniqueObjectFinder UniqueObjectFinder {
662# earlier arrays take precedence over later ones
663# add InputArray InputArray OutputArray
664 add InputArray PhotonIsolation/photons photons
665 add InputArray ElectronIsolation/electrons electrons
666 add InputArray MuonIsolation/muons muons
667 add InputArray JetEnergyScale/jets jets
668}
669
670
671##################
672# ROOT tree writer
673##################
674
675module TreeWriter TreeWriter {
676# add Branch InputArray BranchName BranchClass
677 add Branch Delphes/allParticles Particle GenParticle
678
679 add Branch GenJetFinder/jets GenJet Jet
680 add Branch GenMissingET/momentum GenMissingET MissingET
681
682 add Branch TrackMerger/tracks Track Track
683 add Branch Calorimeter/towers Tower Tower
684
685 add Branch HCal/eflowTracks EFlowTrack Track
686 add Branch ECal/eflowPhotons EFlowPhoton Tower
687 add Branch HCal/eflowNeutralHadrons EFlowNeutralHadron Tower
688
689 add Branch UniqueObjectFinder/photons Photon Photon
690 add Branch UniqueObjectFinder/electrons Electron Electron
691 add Branch UniqueObjectFinder/muons Muon Muon
692 add Branch UniqueObjectFinder/jets Jet Jet
693
694 add Branch MissingET/momentum MissingET MissingET
695 add Branch ScalarHT/energy ScalarHT ScalarHT
696}
697
Note: See TracBrowser for help on using the repository browser.