Fork me on GitHub

source: git/cards/delphes_card_ILD.tcl@ f17e10d

Last change on this file since f17e10d 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
RevLine 
[8b13e78]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
[934d037]15 ElectronMomentumSmearing
[8b13e78]16 MuonMomentumSmearing
17
18 TrackMerger
[f3c6a97]19
[8b13e78]20 ECal
21 HCal
22
[8ab29e1]23 Calorimeter
[8b13e78]24 EFlowMerger
[93b4a8c]25 EFlowFilter
26
[f3c6a97]27 PhotonEfficiency
28 PhotonIsolation
29
30 ElectronFilter
31 ElectronEfficiency
32 ElectronIsolation
33
[78a2d4c]34 ChargedHadronFilter
35
[f3c6a97]36 MuonEfficiency
37 MuonIsolation
38
[8b13e78]39 NeutrinoFilter
40 GenJetFinder
41 FastJetFinder
42
[7d551f1d]43 MissingET
44 GenMissingET
45
[8b13e78]46 JetEnergyScale
47
[31def62]48 JetFlavorAssociation
49
50 BTagging
51
[8b13e78]52 TauTagging
53
54 ScalarHT
55
[f3c6a97]56 UniqueObjectFinder
57
[8b13e78]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
[679a87e]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)}
[8b13e78]143
144
145}
146
[934d037]147###################################
148# Momentum resolution for electrons
149###################################
[8b13e78]150
[934d037]151module MomentumSmearing ElectronMomentumSmearing {
[8b13e78]152 set InputArray ElectronTrackingEfficiency/electrons
153 set OutputArray electrons
154
155 # set ResolutionFormula {resolution formula as a function of eta and energy}
156
[679a87e]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)}
[8b13e78]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
[679a87e]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)}
[8b13e78]175
176}
177
178##############
179# Track merger
180##############
181
182module Merger TrackMerger {
183# add InputArray InputArray
184 add InputArray ChargedHadronMomentumSmearing/chargedHadrons
[934d037]185 add InputArray ElectronMomentumSmearing/electrons
[8b13e78]186 add InputArray MuonMomentumSmearing/muons
187 set OutputArray tracks
188}
189
190#############
191# ECAL
192#############
193
194module SimpleCalorimeter ECal {
195 set ParticleInputArray ParticlePropagator/stableParticles
[f3c6a97]196 set TrackInputArray TrackMerger/tracks
[8b13e78]197
198 set TowerOutputArray ecalTowers
[fa7f333]199 set EFlowTrackOutputArray eflowTracks
[8b13e78]200 set EFlowTowerOutputArray eflowPhotons
201
202 set IsEcal true
203
[a097e98]204 set EnergyMin 0.5
205 set EnergySignificanceMin 1.0
[8b13e78]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
[78a2d4c]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}]
[8b13e78]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
[a097e98]250 set ResolutionFormula { (abs(eta) <= 3.0) * sqrt(energy^2*0.01^2 + energy*0.15^2) }
[8b13e78]251
252}
253
254#############
255# HCAL
256#############
257
258module SimpleCalorimeter HCal {
259 set ParticleInputArray ParticlePropagator/stableParticles
[fa7f333]260 set TrackInputArray ECal/eflowTracks
[8b13e78]261
262 set TowerOutputArray hcalTowers
[fa7f333]263 set EFlowTrackOutputArray eflowTracks
[8b13e78]264 set EFlowTowerOutputArray eflowNeutralHadrons
265
266 set IsEcal false
267
[a097e98]268 set EnergyMin 1.0
269 set EnergySignificanceMin 1.0
[8b13e78]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
[a097e98]315 set ResolutionFormula { (abs(eta) <= 3.0) * sqrt(energy^2*0.015^2 + energy*0.50^2)}
[8b13e78]316
317}
318
[934d037]319#################
320# Electron filter
321#################
322
323module PdgCodeFilter ElectronFilter {
[ad71e62]324 set InputArray HCal/eflowTracks
[934d037]325 set OutputArray electrons
326 set Invert true
327 add PdgCode {11}
328 add PdgCode {-11}
329}
330
[78a2d4c]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
[934d037]347###################################################
[8b13e78]348# Tower Merger (in case not using e-flow algorithm)
[934d037]349###################################################
[8b13e78]350
[8ab29e1]351module Merger Calorimeter {
[8b13e78]352# add InputArray InputArray
353 add InputArray ECal/ecalTowers
354 add InputArray HCal/hcalTowers
355 set OutputArray towers
356}
357
[8ab29e1]358
[8b13e78]359####################
360# Energy flow merger
361####################
362
363module Merger EFlowMerger {
364# add InputArray InputArray
[fa7f333]365 add InputArray HCal/eflowTracks
[8b13e78]366 add InputArray ECal/eflowPhotons
367 add InputArray HCal/eflowNeutralHadrons
368 set OutputArray eflow
369}
370
[93b4a8c]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
[8b13e78]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
[934d037]407#################
[8b13e78]408# Neutrino Filter
[934d037]409#################
[8b13e78]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
[59d6164]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
[8b13e78]456############
457# Jet finder
458############
459
460module FastJetFinder FastJetFinder {
[8ab29e1]461# set InputArray Calorimeter/towers
[8b13e78]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
[31def62]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
[8b13e78]495 set JetInputArray JetEnergyScale/jets
496
[31def62]497 set DeltaR 0.5
498 set PartonPTMin 1.0
499 set PartonEtaMax 2.5
[8b13e78]500
[31def62]501}
[8b13e78]502
[f3c6a97]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
[93b4a8c]526 set IsolationInputArray EFlowFilter/eflow
[f3c6a97]527
528 set OutputArray photons
529
530 set DeltaRMax 0.5
531
532 set PTMin 0.5
533
[8e2759b]534 set PTRatioMax 0.12
[f3c6a97]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
[93b4a8c]560 set IsolationInputArray EFlowFilter/eflow
[f3c6a97]561
562 set OutputArray electrons
563
564 set DeltaRMax 0.5
565
566 set PTMin 0.5
567
[8e2759b]568 set PTRatioMax 0.12
[f3c6a97]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
[93b4a8c]596 set IsolationInputArray EFlowFilter/eflow
[f3c6a97]597
598 set OutputArray muons
599
600 set DeltaRMax 0.5
601
602 set PTMin 0.5
603
[8e2759b]604 set PTRatioMax 0.25
[f3c6a97]605}
606
607
[31def62]608###########
609# b-tagging
610###########
[8b13e78]611
[31def62]612module BTagging BTagging {
613 set JetInputArray JetEnergyScale/jets
[8b13e78]614
[31def62]615 set BitNumber 0
[8b13e78]616
[31def62]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
[8b13e78]620
[31def62]621 # based on arXiv:1211.4462
622
623 # default efficiency formula (misidentification rate)
[a356d6d]624 add EfficiencyFormula {0} {0.01+0.000038*pt}
[31def62]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}
[8b13e78]632
[934d037]633#############
[8b13e78]634# tau-tagging
[934d037]635#############
[8b13e78]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
[f3c6a97]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
[8b13e78]671##################
672# ROOT tree writer
673##################
674
675module TreeWriter TreeWriter {
676# add Branch InputArray BranchName BranchClass
677 add Branch Delphes/allParticles Particle GenParticle
[59d6164]678
[8b13e78]679 add Branch GenJetFinder/jets GenJet Jet
[59d6164]680 add Branch GenMissingET/momentum GenMissingET MissingET
[8b13e78]681
[386e60f]682 add Branch TrackMerger/tracks Track Track
[8ab29e1]683 add Branch Calorimeter/towers Tower Tower
[31def62]684
[7442f9b]685 add Branch HCal/eflowTracks EFlowTrack Track
[7ef3f34]686 add Branch ECal/eflowPhotons EFlowPhoton Tower
687 add Branch HCal/eflowNeutralHadrons EFlowNeutralHadron Tower
[f3c6a97]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
[8b13e78]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.